我有使用MD5加密并存储在数据库中的站点上的成员密码.我想实现一个丢失的密码功能,如果用户忘记密码,他们将通过电子邮件发送他们的凭据.但是如何输出未加密的密码或者是单向加密,因此不可能?
Nic*_*tin 20
MD5不是加密 - 它是单向散列.你不能反转单向散列(理论上你可以找到一个明确同样的散列的明文,但通常一样好,但你不能在任何合理的时间内),所以你只需要设置一个新的密码并将其作为临时邮件发送给他们,和/或只是为他们提供重置密码的链接.
使用单向散列的关键是要完全阻止您尝试执行的操作.如果您可以阅读明文密码,那么任何掌握数据库的人也可以.提示:你如何处理旧的备份媒体?扔进垃圾桶?众所周知,犯罪分子可以通过垃圾箱潜水进行备份.
不要将用户密码发回给他们,而是设置一个系统,以便他们重置密码.在实现之前阅读一些有关此内容的文章.
| 归档时间: |
|
| 查看次数: |
11860 次 |
| 最近记录: |