如何以纯文本格式输出MD5哈希密码?

Jos*_*ose -1 php md5

我有使用MD5加密并存储在数据库中的站点上的成员密码.我想实现一个丢失的密码功能,如果用户忘记密码,他们将通过电子邮件发送他们的凭据.但是如何输出未加密的密码或者是单向加密,因此不可能?

Nic*_*tin 20

MD5不是加密 - 它是单向散列.你不能反转单向散列(理论上你可以找到一个明确同样的散列的明文,但通常一样好,但你不能在任何合理的时间内),所以你只需要设置一个新的密码并将其作为临时邮件发送给他们,和/或只是为他们提供重置密码的链接.

  • 实际上你所描述的并不是扭转哈希.你能做的最好的事情是找到一个哈希值相同的明文.断言您发现的内容与原始内容相同(而不仅仅是哈希冲突)假设比您实际知道的更多. (3认同)

Bil*_*win 6

使用单向散列的关键是要完全阻止您尝试执行的操作.如果您可以阅读明文密码,那么任何掌握数据库的人也可以.提示:你如何处理旧的备份媒体?扔进垃圾桶?众所周知,犯罪分子可以通过垃圾箱潜水进行备份.

不要将用户密码发回给他们,而是设置一个系统,以便他们重置密码.在实现之前阅读一些有关此内容的文章.