微软,谷歌和Mozilla已决定在2017年不接受它,因为研究人员发现了这些缺陷。我看到SHA-1几乎在所有地方都被贬值只是因为人们认为它不再安全了。但与MD5不同,目前在SHA-1上没有发现已知的冲突。即使是最快的SHA-1冲突算法,仍需要近2 ^ 60次评估,这仍然是一个非常大的数字。
我的问题是为什么SHA-1,一个没有发现任何冲突并且仍然需要大量时间来发现碰撞的哈希算法,会被折旧?我知道SHA-2更安全,但它也比SHA-1慢,为什么大多数人建议为所谓的“安全性”交换性能,其中SHA-1的安全性在大多数情况下都不是问题?
答案 0 :(得分:1)
由于碰撞攻击,SHA-1很弱:
https://en.wikipedia.org/wiki/SHA-1#Attacks
在接受采访时,尹表示,“粗略地说,我们利用了以下两个弱点:一个是文件预处理步骤不够复杂;另一个是前20轮中的某些数学运算存在意外的安全问题。”
https://www.schneier.com/blog/archives/2005/02/sha1_broken.html
在2 ^ 69个哈希操作中完整SHA-1中的冲突,更不用说了 比基于哈希的2 ^ 80次操作的暴力攻击 长度。
在2 ^ 39次操作中在SHA-0中发生冲突。
在2 ^ 33次操作中58轮SHA-1中的碰撞。
对SHA-1的压缩功能存在冲突攻击,只需要2 ^ 57个SHA-1评估