-1

10 月 2 日,NIST 决定 SHA-3 是新的标准哈希算法。

MD5 用户应该开始迁移到 SHA-3 吗?别的东西(见下文为什么不推荐使用 SHA-3)?加密货币?

为什么不{MD5、SHA1、SHA256、SHA512、SHA-3 等}?

而且,这真的很关键吗?即使您的密码是盐渍的?

4

1 回答 1

7

不使用 MD5 对密码进行哈希处理的主要原因并不是MD5 受到严重破坏甚至被认为已损坏。

确实,MD5 有已知的漏洞。但它们都不会对您使用 MD5 造成严重威胁。因为在您的情况下,唯一的威胁是原像攻击,攻击者会尝试找到已知散列的原像,例如已知(加盐)密码散列的密码。并且可能已知的针对 MD5 的原像攻击只是理论上的,并且将工作量从 2 128降低到 2 123.4,这并不是什么大优势。平均为 2 64的蛮力攻击仍然更有希望。

不,不使用 MD5 的主要原因是因为MD5 太快了。使用当今经济实惠的计算机,您可以每秒生成和测试 7190M MD5 哈希值。无论是否加盐,所有 8 个字符长的字母数字字符组合都可以在大约 8.5 小时内被暴力破解。

与此相反,像这样的哈希函数bcrypt $2a$每秒只能生成和测试 4085 个哈希值,因此只有 MD5 哈希值的 0.00005682 %。与bcrypt $2a$您进行相同的尝试将需要 1694 年。

于 2012-10-09T18:43:26.563 回答