@
geeglo 看看这篇文章:
http://blog.jianguoyun.com/?p=537“ MD5 最大的问题在于,通过我国的王晓云教授等学者的工作, md5 已经被证明可以进行碰撞攻击。也就是说,攻击者可以产生两个应用程序,内容不一样,但是哈希值完全一样。
在云存储的应用场合中,这种危害表现为攻击者可以伪造一个 Windows 的安装光盘,在其中嵌入木马,通过上述手段让 MD5 哈希值和微软官方发布的光盘签名一致,抢先上传到分享类网盘中。如果该网盘采用 MD5 检查重复文件(例如离线下载服务), 木马就会被植入到希望下载原版光盘用户的电脑中。”
再强调一遍“攻击者可以伪造一个 Windows 的安装光盘,在其中嵌入木马,通过上述手段让 MD5 哈希值和微软官方发布的光盘签名一致”
也许(注意是也许),构造一个 sha1 值相同,又要保证伪造包可用,又要保证伪造包带毒的伪造包,现在还没有一个有效时间内完成的工具。但是 md5 可不是这样了。
“事实上,早在 2005 年, On the possibility of constructing meaningful hash collisions for public keys [7] 提出了一种利用 MD5 Collision 构造 PKI 证书的方法,并且构造出了两个散列值一样,而公钥不同 X.509 证书,以最直接的方式强调了现行 PKI 系统的脆弱性。 2007 年, Chosen-prefix Collisions for MD5 and Colliding X.509 Certificates for Different Identities [12] 中用特定前缀的 MD5 碰撞对,为不同 ID 构造出具有相同 MD5 值的 X.509 证书。 2008 年 12 月, 25th CCC ( Chaos Communication Congress )会上,研究人员里用 MD5 碰撞创造假的数字证书认证( certificate authority ),利用 200 台 PS3 ,他们能在短时间破解 SSL 加密。安全研究人员利用 200 台 PS3 攻击 MD5 算法,创造了一个假的来自可信 CA 的数字证书。”
注意,这一对 md5 值相同的 X.509 证书都是合法的,可用的。
你说的对于可执行文件这“不可能”的情况大部分是在黑产里面,所以说知道的人比较少。看看这个帖子吧:
http://lcx.cc/?i=1822 。
如果你还是视而不见的话,那我只能说要怀疑你的人格问题了。
另外在迅雷下载文件损坏这个问题上,只要迅雷找到的一个文件块是同名不同内容文件的,这文件就是坏了,不需要那么强的条件。