【发布时间】:2021-02-06 11:36:44
【问题描述】:
SHA1 creates a 20-byte hash
SHA256 creates a 32-byte hash
如果我只使用了 SHA256 的前 20 个字节,它是否具有与 SHA1 相同的抗碰撞性,或者 SHA1 的弱点纯粹在于哈希长度而不是算法?
【问题讨论】:
标签: hash sha1 sha256 sha hash-collision
SHA1 creates a 20-byte hash
SHA256 creates a 32-byte hash
如果我只使用了 SHA256 的前 20 个字节,它是否具有与 SHA1 相同的抗碰撞性,或者 SHA1 的弱点纯粹在于哈希长度而不是算法?
【问题讨论】:
标签: hash sha1 sha256 sha hash-collision
SHA-1 和 SHA-256 是两种不同的算法。
如果仅将它们用于散列,则 SHA-256 和 SHA-1 的前 20 个字节之间没有实际区别,当然 SHA-256 更慢。
但是,如果您关心对碰撞攻击的抵抗力,那么 SHA-1 有几个已知的漏洞,可以将攻击的复杂性降低到可以认为是实用的程度。另一方面,目前还没有已知的针对 SHA-256 的实际攻击。所以至少在理论上,SHA-256 的 20 个字节应该比 SHA-1 更能抵抗攻击。
【讨论】: