可能重复:
密码散列添加盐+胡椒还是盐足够?
在 PKCS5 V2.0 标准的官方文档中,我们可以看到“盐可以看作是从密码派生的大量密钥的索引,不需要保密。”
“不必保密”的部分很有趣。
由于 salt 用于添加大量密码可能性(或者如果两个用户具有相同的密码,则创建两个不同的密钥),让 salt 不安全的目的是什么?
我知道,通常情况下,攻击者无法访问盐,因此找到正确密码会使他的工作复杂化。但如果攻击者知道盐,那么“魔法”在哪里?知道盐就像执行传统的字典攻击(如果我们排除迭代计数)!
有什么我不明白的吗?我知道知道盐不会破坏安全性,但是说它“不需要保密”对我来说听起来很奇怪。