gpt4 book ai didi

android - 请检查我使用 PHP 服务器验证移动应用程序的方法

转载 作者:行者123 更新时间:2023-11-30 04:05:29 25 4
gpt4 key购买 nike

我正在构建一个需要使用 PHP 服务进行身份验证的 Android 应用程序。我目前的做法是当用户最初登录时,使用 uniqid() 生成一个唯一的 id。这个 uid 然后与他们的用户名一起存储在数据库的一个表中。然后用户被传回这个 uid。

随后所有对服务器的进一步请求将发送 uid 和他们的用户名,然后将在数据库中检查以验证用户。

这个方法可以吗?还是我遗漏了他们巨大的安全漏洞?

最佳答案

这里有几个问题。对于一个 uniqid() 几乎完全由时间戳组成,并且非常可预测。与其重新发明轮子,不如使用 PHP 的 session_start()。如果由于某种原因您不能使用 PHP 的 session ,则使用 session_id() 生成一个 session ID。

其他问题,如果您的应用程序遭受 sql 注入(inject)攻击,那么攻击者可以从数据库中提取 session ID 并直接登录。对密码进行哈希处理的原因是为了在数据库遭到破坏后减慢攻击者的速度,如果攻击者拥有 session ID,则他无需破解密码哈希即可登录。 (您正在对密码进行哈希处理...)一种选择是对存储的 session ID 使用 MySQL 的 aes_encrypt()

关于android - 请检查我使用 PHP 服务器验证移动应用程序的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11742278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com