Hash SHA-0是怎么破的仅仅几个散列冲突的意义是什么?

Hash SHA-0是怎么破的仅仅几个散列冲突的意义是什么?,hash,md5,sha,hash-collision,Hash,Md5,Sha,Hash Collision,我想了解SHA0哈希函数是如何被破坏的。据我所知,利用生日问题/鸽子等待原则,发现哈希冲突。包含一条示例消息 我在发现/理解方面遇到的困难: 这是否意味着有一种及时的数学方法来始终生成哈希冲突 对于给定的m1,我能最终找到一个m2吗,这样m1!=m2,sha(m1)=sha(m2)或者它只在可能消息的子集上可能吗?换言之:是否保证我的密码有另一条冲突消息 在上面的链接中找到两条具有相同哈希值的随机长消息的意义是什么?为什么他们必须筛选长随机消息以进行冲突,而不是为实际消息(如“棕色狗跳过了狐狸”

我想了解SHA0哈希函数是如何被破坏的。据我所知,利用生日问题/鸽子等待原则,发现哈希冲突。包含一条示例消息

我在发现/理解方面遇到的困难: 这是否意味着有一种及时的数学方法来始终生成哈希冲突

对于给定的m1,我能最终找到一个m2吗,这样m1!=m2,sha(m1)=sha(m2)或者它只在可能消息的子集上可能吗?换言之:是否保证我的密码有另一条冲突消息

在上面的链接中找到两条具有相同哈希值的随机长消息的意义是什么?为什么他们必须筛选长随机消息以进行冲突,而不是为实际消息(如“棕色狗跳过了狐狸”)计算冲突

一些散列冲突的例子似乎不如为任何消息生成冲突的及时方法重要,但所有的帖子都讨论了前者

谢谢你的帮助/宝贵时间!我读过很多帖子/文章,但我的大脑无法处理我的困惑。我怀疑我对其他破坏的哈希函数(如MD5)也有同样的问题

编辑:

来自:

2005年2月,小云的一次袭击 王一群、尹丽萨、余洪波 已宣布可以找到 2^39中SHA-0中的碰撞 行动


以目前可用的计算能力,这种复杂性完全不足以用于加密目的。它可以保证在非常合理的时间内发现任何邮件的冲突。

邮件不过是对旧版本SHA进行攻击的概念证明,该版本由于几个已知的弱点而被弃用,允许进行比穷举搜索容易得多的攻击。据说这次攻击花费了80000个CPU小时。您应该注意,相同的攻击对于常见的SHA-1实现不起作用。并且,回答你的问题:是的,这意味着原则上可以为每个输入找到冲突,给定一个强大的工作站集群,但只有使用SHA0。(一般来说,你总能发现每个哈希上的每个输入都会发生冲突,考虑到无限的时间/资源,这里唯一值得注意的区别是,对这个特定哈希的这种特殊攻击使用的资源相对适中)谢谢你参考这篇文章,我来看看他们的论文。“它保证发现任何消息的冲突…”我认为这是错误的。论文描述了一种“冲突攻击”。这意味着他们可以在2^39个操作中找到一些m1,m2,使得h(m1)=h(m2)。这并不意味着对于任何m1,他们可以找到m2,使得h(m1)=h(m2)。这将是一种特殊类型的“选择前缀冲突攻击”。