【发布时间】:2013-09-18 15:45:02
【问题描述】:
我正在为网站制定密码重置程序。正确的实现建议在数据库中存储一个随机加盐令牌哈希和到期日期。
但我遇到了一个不在数据库中存储令牌的解决方案: https://stackoverflow.com/a/3165086/980737
我正在考虑使用上述方法,但使用 PASSWORD_BCRYPT 将 sha1() 替换为 password_hash()。
对我来说看起来不错,但我不是安全专家。上面没有数据库选项安全吗?如果不是为什么?
【问题讨论】:
-
您链接的答案在解释所使用的概念方面做得不好。由于使用了所有这些无法解释的值,我有一种不好的感觉。例如,当用户因为忘记密码而想要重置密码时,将用户密码放入进程中,这有点违背了目的......
-
对不起,但你给我们的链接是一个不好的例子(解释)
-
@Sven 它是当前的hashed 密码(然后用附加信息再次散列)用作“假定的”服务器机密。不过评论的第一句话很到位:这是一个没有很好解释的可怕示例/链接。
标签: php security passwords bcrypt