为什么选择SHA512而不是SHA384?

jst*_*jst 20 hash integrity digest sha2 sha512

SHA3​​84是SHA512的截断版本.但为什么有人会用呢?并且推论:如果SHA384与SHA512一样好,那么使用512位版本有什么理由吗?

我打算使用其中一种算法来验证文件的完整性,所以我主要对colision安全感兴趣.

我很高兴听到任何人在实践中如何使用SHA2摘要,为什么你会选择一个版本而不是另一个版本.

Dav*_*rtz 23

出于实际目的和可预见的未来,SHA384和SHA512都足以应对任何可以想象的防碰撞应用.一般来说,一旦我们高于256位并且碰撞阻力在实际应用中是无限的,你将使用什么哈希的主要决定因素就是你需要多少比特的输出.例如,如果您需要哈希来生成256位HMAC密钥和128位加密密钥,则SHA384是一种自然选择.如果您需要尽可能多的输出来计算成本,比如PRNG的输出或随机填充,那么SHA512是有意义的.


小智 21

SHA256 SHA1和MD5易受长度扩展攻击.SHA224,SHA384和SHA512自从减少输出到内部状态后,SHA3也不易受攻击.考虑到这一点,SHA512和SHA384都是良好的加密抗冲突哈希函数.

  • SHA512也容易受到长度扩展攻击。在SHA-2中,只有SHA224和SHA834没有。 (2认同)

Mar*_*qin 9

SHA512适用于长度扩展攻击,SHA384不适用.[资源]


Pet*_*ter 7

使用SHA512签名的证书似乎不适用于Windows上的TLS 1.2(请参阅此处)

因此,我将使用SHA-384重新创建我的证书链(或者我想我可以使用SHA-256).

幸运的是,我还没有发布任何证书,链接页面中的线程确实为那些坚持使用SHA-512的人提出了解决方法/修复方法.

HTH!