5

我想了解 SHA0 哈希函数是如何被破坏的。我知道利用生日问题/鸽子保留原则,发现了哈希冲突。 http://www.mail-archive.com/cryptography%40metzdowd.com/msg02554.html包含示例消息。

我在查找/理解时遇到的问题:这是否意味着有一种及时的数学方法总是会产生哈希冲突?

我最终是否可以为给定的 m1 找到一个 m2,使得 m1 != m2, sha(m1) == sha(m2) 还是只能在可能消息的子集上找到?改写:我的密码是否有可能保证有另一条冲突消息?

在上面的链接中找到 2 条具有相同哈希值的随机长消息有什么意义? 为什么他们必须筛选冗长的随机消息以查找碰撞,而不是计算碰撞以获取诸如“棕色狗跳过狐狸”之类的实际消息?

哈希冲突的几个例子似乎不如及时为任何消息生成冲突的方法重要,但所有帖子都在谈论前者。

感谢您的帮助/您的时间!我读过很多帖子/文章,但无法解决我的困惑。我怀疑我对其他损坏的哈希函数(如 MD5)也有同样的问题。

编辑:

答案中引用的论文(解释了查找碰撞的改进方法)

4

1 回答 1

8

来自维基百科

2005 年 2 月,王晓云、Yiqun Lisa Yin 和 Hongbo Yu 的攻击被宣布,可以在 2^39 操作中发现 SHA-0 中的碰撞。

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

于 2011-07-07T15:49:35.603 回答