【脑洞大开】突然想到关于MD5的一件事……
整理时间:2014-04-02 05:34 热度:°C
【楼主】2014-04-02 13:17
» 突然想到关于MD5的一件事……
比如MD5是64位的一串字符,那我把一个64位字符的TXT文本通过MD5算法就能得到一个同样64位的MD5码。
然后每个不同的TXT文本都能得到一个不同的MD5码。
那64位的MD5不就被这64位的TXT给占完了么?只要我再把TXT加上一位,又多了无数种可能,但MD5不可能跟着一位位往上加啊?
好吧,楼主不是学这块的,就等高人科普了。
网友评论2014-04-02 13:19
同坐等高人!
网友评论2014-04-02 13:22
本来就是有碰撞的.
另外那个MD5不是字符, 是16进制数字......
再另外, MD5有拼凑的算法了, 你真要安全请考虑SHA1.
网友评论2014-04-02 13:38
Reply Post by MikeMK2 (2014-04-02 13:22):
本来就是有碰撞的.
另外那个MD5不是字符, 是16进制数字......
再另外, MD5有拼凑的算法了, 你真要安全请考虑SHA1.
十六进制的话那重复率就更高了……
网友评论2014-04-02 13:47
MD5和原文本不是一一对应的。一个MD5确实可以对应无限多个原文。
MD5是完全不可逆的算法。破解MD5只能用杂凑冲撞。
但由于用户密码长度是有限的。所以在一定的输入范围内可以构建出原文和MD5值的一一对应关系。这就是彩虹表。
彩虹表不仅是MD5可以做,sha1也可以。
Copyright 2012年2月8日 苏ICP备12030052号-3