石破惊天 MD5堡垒轰然倒塌

原文,我引用了原文中的一个副标题。

一直以来,大家都认为 MD5 是足够安全的,所以在加密、签名上得到了广泛应用,可山东大学王小云教授通过研究,可以使得数种 HASH 算法产生碰撞,其中包括MD4,MD5,HAVAL-128,RIPEMD 还有 SHA-0。

前几天看到这个消息时,还觉得不太可能,因为这个发现太让人吃惊了,基于 MD5 的应用太多了,造成的潜在的冲击也太大了,而且上个月未中国刚通过电子签名法,不到几天,一个重要的签名算法竟然可能被伪造或冒用,这局面真是够严峻的。

暂时就剩下 SHA-1 了,大家还可以用一用。

“石破惊天 MD5堡垒轰然倒塌”的19个回复

  1. 我还没有看,不过我知道哈希算法都必然不能够抗拒“生日攻击”的,我猜测这个是一种生日攻击。等我仔细看完了再来发表评论。

  2. 王小云在会议上没有给出具体算法,但在现场证实是可行的。实际上这个算法并不是破解,而是篡改。当然在实际情况中,能够改的结果相合还要有意义,是比较难的。但是王的算法证实了MD5理论上的不安全性。就这一点而言,王的成绩十分值得赞扬!毕竟是真正中国人自己做出来的成绩。

  3. 还是没有搞清楚这个是否是一个类似生日攻击的攻击方式,但是无论如何还是可以断定这个研究成果确实已经对MD5等里面提到的哈希算法构成一定的威胁了,而且比生日攻击的威胁要严重得多。

    这里补充说明一下什么是生日攻击。比如你大学的班里面要找到和你同年同月同日生的另外一个人,会比较困难,但是要在这个班里面找到同年同月同日生的两个人却比较容易。换句话说,如果你已经用SHA-1对某一份数据进行签名了,那么其他人想要找出另一份数据进行签名并得到相同的签名结果,那是比较苦难的。但是如果你企图找出两份有完全一样的签名的数据,则会容易得多。

    如果文中提到的攻击方法是属于生日攻击类型的话,那么对已有的签名不会构成极其严重的威胁,但这种类型的攻击可以用来进行欺骗。比如我拿着两份可以得到相同签名的数据(里面包含了一些在进行为了生日攻击而产生的不可见的随机垃圾数据),其中一份让A去签,然后提供给别人另外一份可见内容上完全不一样的数据给B,B就会以为A曾经对该数据进行过合法的签名。上面这个例子实际上是密码协议里面经常出现的场景,因此可能会对很多的协议造成极端的破坏。这是一种中间人攻击,但这种攻击是不可能对你已经证明的数据起作用的。生日攻击的前提条件是能够声成两份数据,而不仅仅是其中一份。

    但是如果不是一个生日攻击的话,那麻烦就大了。比如你的数字身份证,里面有内容A,然后用SHA-1签名得到签名S。而另外一个人通过这种攻击,产生一个有着相同S的数据内容A’,他就可以到处行骗,说他就是你,比如把你的钱全部取出来。

    可惜的是目前我还不能够确定到底是什么攻击,但是从文中的内容看来,很可能是后者。看来这个领域的知识又要产生一次坍塌了。

  4. NO,似乎应该是对已经产生的签名,构造另一个数据使之能产生同样的签名。
    当然我也没有细看,感觉是如此:)

  5. 标题夸张了,王小云等的论文中只是提供了构造出的两个不同的128 bytes的文件,通过md5 hash能得到相同的值,没有你说得那么夸张

    什么“MD5堡垒轰然倒塌”,呵呵,这种态度很容易制造谣言

  6. 楼上的搞错了,这里的initial value不是指源数据,或者受冲撞攻击的原始数据。这里的inital value是MD5算法的初始数据,相当于你的变量的初始值,这个东西有点类似于加密算法的“秘钥”,只不过这个市公开的。不同的初始值,对于相同的数据签名出来的值是不一样的!既然有人提供了论文原文,我就来学习一下,学习完了如果觉得有收获的话,就写一写吧。

  7. 这个标题是引用的,"石破天惊",原文中是如此,我觉得如此用也未尝不可,所以没有改 :)。

    我倾向 qqq 的说法。

  8. CertainKey的初衷是利用并行计算机通过生日攻击来寻找碰撞,而王小云教授等的攻击相对生日攻击需要更少的计算时间。

  9. 我可记得她的结论是在几小时内就能得到碰撞,这说明找到的并不是一个小漏洞

  10. 的确,我也在报纸上看到了这则消息,说是MD5破解网站在48小时内关闭,怎么还开着?

  11. MD5 的破解的确让中国人在"硅谷式"的人间扬眉吐气!我为中国人感到自豪!!!!!!!!!!!!!!!!!!!!!!!!!!!

  12. 显然是生日攻击
    因为给出散列后的值是无法知道原值的
    看看信息论就知道了

    顺便鄙视 nrkkim这个M$的崇拜者
    M$又不搞基础研究

评论已关闭。