我刚刚学会了使用盐和哈希来保护我数据库中的密码。现在,我需要创建一个模块,允许用户在忘记密码时找回密码。如果密码不可逆,我该怎么做?
问问题
2409 次
3 回答
3
散列密码是一种保护密码持有者的安全措施。如果您存储了纯文本并且使用先生的银行帐户被第三方访问,因为您只知道他的密码的哈希值,您可能不是访问他的银行的人。
话虽这么说,即使加了盐,md5 也不是非常牢不可破,因此可以逆转http://www.stottmeister.com/blog/2009/04/14/how-to-crack-md5-passwords/
于 2011-08-13T05:46:41.580 回答
3
您无需尝试恢复他们的旧密码,只需为他们制作一个新密码或让他们这样做。
您可以为他们生成一个临时密码,对他们的密码进行加盐和哈希处理,然后通过电子邮件将新密码发送给他们,或者您向他们发送电子邮件链接以重置他们的密码。
于 2011-08-13T05:35:47.883 回答
0
仅使用其他提供的凭据更改密码。您可以将密码以纯文本形式存储在数据库中,但在验证时对其进行加密。Web 解决方案将是 -> 1. 从用户获取密码 2. 从中获取例如 md5 哈希 3. 将 md5 发送到服务器进行验证。我不建议存储纯文本密码:)
于 2011-08-13T05:45:59.283 回答