我应该使用什么哈希算法来存储密码?

时间:2012-08-24 10:57:36

标签: security hash passwords

关于哈希算法优势的最新发展,我还不是最新的。目前我最喜欢的存储密码是什么?

另外,腌制和按键拉伸对我有多大安全性?

2 个答案:

答案 0 :(得分:8)

至于散列提供的额外安全性,这取决于您使用的散列迭代次数。举个例子,假设您决定使用2 ^ 14个哈希迭代。这会将密码的熵增加14位。根据摩尔定律,哈希提供的每个额外的熵都意味着在今天同一时间内破解密码大约需要18个月。因此,在今天可以破解原始密码的同时破解迭代哈希之前将是21年(14 x 18个月)。

salting提供的额外安全性是双重的:它阻止了彩虹表的有效使用,并且使得破解大量密码(但不是单个密码)变得更加耗时。

答案 1 :(得分:1)

Check out this.

对security.stackexchange的这个问题是对bcrypt与PBKDF2的良好讨论 - Do any security experts recommend bcrypt for password storage?

关键是单独的哈希函数不会阻止预计算攻击(例如彩虹表)。添加盐不会保护您免受字典或暴力攻击。使用bcrypt或PBKDF2比使用哈希算法构建自己的方案要好得多。