【发布时间】:2018-03-09 09:53:25
【问题描述】:
我使用 MD5 加密密码并将其插入 MySQL 数据库。但是,我怎样才能将该密码解密为原始密码并将它们放在 jTextField 中。
【问题讨论】:
-
我用的是mysql
我使用 MD5 加密密码并将其插入 MySQL 数据库。但是,我怎样才能将该密码解密为原始密码并将它们放在 jTextField 中。
【问题讨论】:
MD5应该是单向函数所以理论上没有办法解密它... 而不是解密它 - 比较加密值以进行密码验证,但您将无法向用户显示原始密码。
顺便说一句,我认为 md5 的安全性很弱(并且可以被破坏)
【讨论】:
MD5 是一个散列函数,不是加密,这意味着是不可逆的。因此无法解密。您可以做的是将已知输入的结果哈希与另一个哈希进行比较。
根据您要执行的操作,您应该考虑使用另一个散列函数,因为:
MD5 算法是一种广泛使用的散列函数,可生成 128 位散列值。尽管 MD5 最初设计为用作加密哈希函数,但已发现它存在大量漏洞。它仍然可以用作校验和来验证数据完整性,但只能防止意外损坏。
如果您对替代品感兴趣,请查看here on how to store passwords。
【讨论】: