不可原谅(外一篇)

北奥塞梯别斯兰市的人质事件终于悲惨收场,代价便是这数百人的伤亡。

凤凰网文《历劫后 止痛疗伤才开始》说:

人民永不会原谅(车臣的)恐怖分子,但也永不会原谅(俄国)联邦部队和普京。

世界的反恐却换来了越反越恐的结果。

据说易卜拉欣被抓起来,拉登也快了。

看样子恐怖份子们的好日子要到头了。

真的是如此吗?难道那些反恐的人就没有看到那些正是他们自己种下的恐怖种子吗?

难怪曹刿说:肉食者鄙,未能远谋。

也许肉食者未必不能远谋,也许这正是他们的目的。让全世界的人看到,这就是恐怖份子,然后便可以堂而皇之予以打击。

至于死在恐怖份子手下的几百个平民,一百多儿童,借一句阿诺的片名来说就是:Collateral Damage。


外篇:关于MD5的破解

CSDN一篇报道说中国数学家王小云等在Crypto 2004上提出一种能成功攻破MD5的算法,GIGIX王兄都在BLOG里引用了相关的报道。

MD5是一种摘要算法,所以理论上是不可能从签名取得原文。认为要从MD5的结果中取得原文才算破解,本身就是对摘要算法的误解。它通常应用于数字签名中,用于标识原文的原始性–即在签名后未作任何的修改。如果可以用不同的原文可以产生相同的签名,这也就意味着签名可能失效,就已经可以证明这种摘要算法的不安全。

RL提供的王小云的报告我看了一下,因为我不是做这方面的,所以对MD5算法本身的实现,以及文中所引用的之前别人的理论都并不了解,所以不是很明白。在这份报告中,介绍MD5破解的部分只有一页半,并未细说具体的算法,但在末尾附了两对1024位原文的碰撞例子,较之96年别人提出的512位碰撞有了很大的进步,并且计算量据说在一个小时左右。

这些都是进步,如果把这说成是吹嘘就未免有点妄自菲薄了。

王小云的发现证明了有方法可以产生碰撞,但正如GIGIX那边一位匿名兄所说,这只是非特定碰撞,而要伪造签名则必须能产生特定碰撞。所以说MD5并未被完全攻破,但也已经是一个重大的突破了。

16 Replies to “不可原谅(外一篇)”

  1. 说实话,以前蛮爱看新闻只是现在越来越多的恐怖主义让人看着就越来越没劲到处都在打,一个打,那个打想想还是算了,不看了过我难得的天平日子呀

  2. 世界并沒有改變,只不過,現在我們知道的多一些而已,我是這樣想的!!至于這些問題, 或多或少都有美國的影子在背後支持, 只沒有具體的指示行動而已, 所以, 恐怖之源其實是美國, 我也是這樣想的!!車臣對俄羅斯, 相當于臺灣,新疆對中國, 如果想和平讓其獨立, 也許換回來的是更長期的付出,受損, 我是這樣想的!

  3. 猛Q,理论上不可逆算法毕竟是理论上,但,三天前我们还以为MD5算法理论上是安全的。在计算机世界,0可能也意味着可能。并不是虚言。

  4. 我恰巧有一本书《应用密码学》,嘿嘿,讲的很仔细。而且在md5算法后面就是sha,haval…… 这些都被搞定的算法。这些理论上安全的算法。我感觉奇怪,MD5倒了,其实是MD4倒了,倒了整整一片加密算法。在Lu-by-Rackoff-like加密算法MD5应用设计了一个无碰撞的压缩函数。其实他们早已经想到避免手段了。但是速度这个大前提啊。

  5. 呵呵,你的《应用密码学》浪费了,它讲得很仔细,你未必看得很仔细。MD5,SHA这些HASH算法都是摘要算法,不是像DES、IDEA、RSA这些常规的加密算法。摘要算法的特点就是对任意长的原文产生定长的签名,按照香农的信息论,当原文的长度超过一定的程度的时候,签名中就无法记录原文中的所有信息,这意味着存在着信息的丢失,所以我说理论上不可能从签名中恢复原文。为什么说理论上呢?就是说当这种摘要算法被完全攻破时,也就是说可以从签名恢复出任意原文,注意:是任意原文,因为所有的摘要算法的特点就是存在着一个无穷大的碰撞原文的集合。而真正的原文只是其中一份。对应这个无穷大的集合来说,这就是一个无穷小,便是我曾经说过的:可能性为零,不表示不可能。绝对无碰撞的函数不可能是一个摘要算法,而只能是一个无损压缩算法。它必须包含原文的所有信息,也就意味着它一但被攻破,可以唯地恢复出原文。并且它的结果肯定是不定长的,因为它需要包含原文的所有信息,当然会根据原文的长度而变。仅这两点就决定了,它不可能是一个好的签名算法。RL最好再看看书,把几种不同种类的算法及其用途分清楚再说。^O^

  6. 有收获,不过还是不明白一点 通过碰撞 怎么可能得到全文,而且超过一定长度会有信息丢失,这个难度就更大了.顺便说一句偶就是山大毕业的,上学的时候真没听说有个叫王小云教授的牛人, 看来也是神出鬼没之辈

  7. MD5是丢失信息的,它并不是加密算法,而是一种签名算法,丢失的信息从【理论上】是不可能复原的,最多只能给出一些合理的假设(可能是这个又或者可能是那个)。Hash(M’)==Hash(M)的可能性也是人所共知的,毕竟128位MD5编码能包容的信息一共只有那么点。问题是,我们以前以为无法在合理的时间内找到一对M’和M,使得Hash(M’)==Hash(M)。[如果hash编码真的毫无规律可循的话,这是可能的,因为你不能利用M找到任何线索,那样就无异于大海捞针。可惜现在的Md5有规律可循]。王小云的贡献在于,她发现只要花1个小时的时间就能找到一对M’和M,使得上述等式成立。举个例子来说,相当于我可以保证在一个小时之内,找到两个具有相同指纹的人。这样的后果是什么?后果就是使得指纹(MD5签名)变得毫无法律意义。也就是说,动摇了差不多整个数字签名界(不是密码界)的根基(现在的MD5签名是使用最广泛的)。这个影响还不够大么?

Leave a Reply

Your email address will not be published. Required fields are marked *