作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当密码或其他重要信息的数据库遭到破坏时,我很难理解附加到散列的盐如何帮助提高安全性。
例如,如果 salt 是“hello”,并附加到密码“password”,那么 salt 和密码将一起存储,“hellopassword”并散列以生成:
94e66f94517d606d5ad6d9191b980408952f2ed2 (sha1)
hello$94e66f94517d606d5ad6d9191b980408952f2ed2
最佳答案
不,不是“有点额外的困难”——可能会有更多的困难。
想象一下,有 20 亿个常用密码。对所有这些进行散列并存储结果很容易。然后如果你有一个未加盐的密码哈希,你可以检查哪些常用密码与给定的哈希匹配。
现在将它与加盐散列进行比较……现在您有 20 亿个常用密码,但也有几十亿个可能的盐。计算所有可能的盐/密码组合将花费更长的时间——希望变得不可行。
此外,这意味着即使两个人拥有相同的密码,他们也很可能拥有不同的哈希值——因此一个用户在泄露密码时的粗心大意不会危及另一个人的安全。
见 Wikipedia entry (如果你还没有)了解更多。
关于hash - 有人可以解释盐在存储散列密码时如何帮助吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3643209/
我是一名优秀的程序员,十分优秀!