gpt4 book ai didi

php - 密码验证

转载 作者:可可西里 更新时间:2023-11-01 07:57:40 25 4
gpt4 key购买 nike

使用mysql和php

检查密码以使用用户名和密码查询数据库(当然是在清理之后)并在没有返回任何行时记录失败尝试时是否有任何原因/值与使用用户名查询数据库然后比较返回密码字符串?

编辑:对于那些在下面提到它的人,密码是在数据库中散列的。

最佳答案

如果我的理解正确,您想知道比较以下结果之间是否存在差异:

$results = mysql_query("SELECT name FROM users WHERE name = $properlyEscapedName AND pass = $properlyEscapedPassword");
if (mysql_num_rows($result) == 1)
$authenticated = true;

对比

$results = mysql_query("SELECT name, pass FROM users WHERE name = $properlyEscapedName");
$array = mysql_fetch_assoc($results);
if ($array["pass"] == $unescapedPass)
$authenticated = true;

我会注意到,出于安全原因,存储密码散列比明文密码更好,但除此之外,我看到的唯一区别是,在第一种情况下,您将返回一个较少的字段,这可能意味着您之间的带宽使用效率更高服务器和数据库。另一方面,您的查询要大几个字节,因此这可能会削弱较小结果集带来的小好处。

关于php - 密码验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2513279/

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