5

我目前使用带有每个用户随机盐的 SHA512 来散列用户密码并将它们存储在数据库中。我认为这是非常安全的,直到我阅读了这篇关于使用廉价 GPU 暴力破解密码的文章。

作为切换到 bcrypt 的替代方案,简单地多次使用 SHA512 会提高安全性吗?在自己的输出上运行它说 100 或 1000 次以减慢过程并使其更难暴力破解?还是 SHA512 的迭代实际上没有产生安全优势?

4

1 回答 1

5

迭代技术是众所周知的并且在散列中特别有效,尤其是针对Rainbow 表。像Rfc2898DeriveBytes这样的类使用多达 10K 次迭代来派生正确的密码。迭代哈希使得暴力破解回原始字符串变得更加困难,因为需要存储字符串的多次迭代才能破解它们,这意味着大量数据具有更大的哈希值(即 SHA512)。

于 2011-06-06T08:13:24.813 回答