0

可能重复:
SHA1 冲突的概率

假设我正在尝试识别文件系统中的重复文件。可以肯定地说,如果文件的 SHA1 校验和匹配,它们是相同的吗?如果它们匹配,我是否也应该查看它们的内容?

我读过攻击的理论复杂性是 2^51 哈希函数调用。我还在SO上读到“对于输出 160 位的 SHA1,生日攻击将复杂性降低到 2^80。这应该是安全的 30 年或更长时间。” 我还应该仔细检查以确保文件内容匹配吗?我只是想确保我的作业在测试脚本下运行时不会产生错误的输出。

4

1 回答 1

1

两条给定消息具有相同散列的可能性为 2^160 分之一(因为 SHA-1 产生 160 位散列)。

即使您的文件系统中有一百万个条目,新条目共享相同哈希的机会仍然是 10^42 分之一。

SHA-1 已被证明相当不错,所以我认为您根本不需要担心碰撞。如果您需要更多,您可以添加一些质量属性,例如时间戳、文件大小..

于 2012-10-31T21:49:03.607 回答