是否可以找出MD5密码的字符长度?

fro*_*bak -1 php passwords hash

我有一个哈希的MD5密码保存在MySQL数据库中.无论如何都要找出原始密码中有多少个字符?

我认为没有,因为从我所看到的,无论如何都很难解密哈希密码.

无论如何我能做到这一点?

编辑:因为严重的反弹!! 我对解密哈希不感兴趣,因为我知道这不是我读过的好主意.

我问的原因是因为.

我正在将包含历史数据库的旧系统迁移到新的更新应用程序.所有用户,数千人都将他们的密码保存在数据库MD5中,但大多数都少于8个字符,所以我只是想知道是否有办法知道他们的原始密码是否超过8个字符,那么我可以加密它或者强制用户更改密码.

但是我必须强迫所有用户根据它的外观更改密码

Fun*_*ner 7

来自OP的评论:

我只是纯粹要求保存,如果他们的密码低于某个字符限制,强制所有用户改变他们的密码 - frobak

对此的答案是使用strlen():

至于MD5,不要使用它完全不安全.30多年来,大量的水流入桥下.

用途password_hash():

至于解密哈希; 它无法完成/逆转; 这就是为什么它被称为哈希并且没有加密.

有什么叫做"彩虹桌":

但是我必须强迫所有用户根据它的外观更改密码

请参阅以下内容:将md5密码哈希转换为PHP 5.5 password_hash()

这样你就可以"一举两得".

但是,MD5是32长度.你需要将它增加到60+以便在使用时保持适当的长度password_hash(),正如Jay Blanchard在评论中所述,否则在使用时可能会"无声地"失败password_verify().