MD5碰撞的新玩意儿
在从hash函数到王小云的MD5破解我们介绍了hash函数的一些基本概念和MD5碰撞的一个"应用",最近在这个问题上又有了新的进展。
Marc Stevens, Arjen Lenstra和Benne de Weger在这篇论文里给出了寻找Chosen-prefix碰撞的有效方法,这种碰撞指对任意给定的A, B,找到x, y,使得MD5(Ax) = MD5(By),即可以找到碰撞,使得以任意两个字符串开头。
作者给出了两个非常有意思的应用,一个是预测2008年美国大选结果。其实是建立了12个PDF文档,它们的MD5完全相同,但显示内容却互不相同。这种效果在从hash函数到王小云的MD5破解已经讨论并实现了。
另一个就是给出了两个具有同样MD5的可执行文件。以后下载文件的时候即使有MD5验证也不一定是安全的了。
在这个结果之前,还有一个有意思的应用,[1]和[2]这两个网页具有相同的MD5值,但显示内容截然不同。想知道怎么实现的看看它们的源代码即可。
迟早会有这么一天
ps: 那个网站上提到的破解是在PS3上算出来的,难道就是传说中的借计算结果要求报销PS3的那个狂人,没想到这么nb
我曾经这样设想:制作一个PDF文件,再在PDF文件内容中写上:本文档的MD5码为skaslkas...,原以为这是一个悖论,因为每向这个PDF写一个字节,都会导致该MD5码的重新计算. 现在看起来有希望实现了.只是,还有什么意义?
当MD5不再可信,
当所有密码的破解都只是时间问题,
当网络安全只能依赖道德而不是技术,
..................
问题还没这么严重, 现在就hash函数已经普遍使用Sha-1了,这个目前而言基本上是安全的。
zhang,
写点科普性的东西,一点都看不懂了
看到上篇,总算懂一点了。
关于hash函数,我以为在工程实际应用中,经常是用于大量数据的快速查找,其作用是:
把一个逻辑值,转化为物理存储位置。
对不?
把一个复杂的 转化为一个表示简单的便于查找使用的东西, 也不一定是地址. 比如diff 的字符串匹配, 就是用 Hash 成整数加快匹配过程的