gpt4 book ai didi

passwords - 双盐用于散列密码?

转载 作者:行者123 更新时间:2023-12-02 19:50:53 24 4
gpt4 key购买 nike

我正在考虑使用两个不同的盐字符串对用户密码进行哈希处理,一个存储在代码中,对于所有用户来说都是相同的,另一个存储在数据库中,每个用户都有自己的唯一值。

这比简单地将值存储在数据库中更有效吗?

任何建议,意见表示赞赏。

谢谢

最佳答案

即使有影响,效果也是微乎其微的。考虑到静态的硬编码盐只不过是对哈希算法的更改 - 它每次都以完全相同的方式发生,因此它也可以被视为算法的一部分。

但是盐的目的是创建一些随机性,类似于扩展密码的(最小)强度,目的是使离线破解(包括彩虹表)更加资源密集(非彩虹表破解)将需要更多的 CPU 时间,并且彩虹表将需要所有字符串的所有盐)。

从中获得任何值(value)的唯一方法是静态盐未知 - 相当于算法未知。如果攻击者可以使用您的二进制文件或源代码,那么逆向工程将演示算法和硬编码盐。

如果这个问题公开,您可能不得不面对许多安全爱好者的批评,他们认为任何不完美的东西都完全被破坏了,即使您的产品已经做了正确的事情,并且额外的步骤毫无用处。

当然,您必须处理静态盐的维护问题 - 散列代码的向后兼容性和错误修复可能会很痛苦。

静态 key (或盐)的微小好处根本不值得付出代价。始终使键和盐动态化。

关于passwords - 双盐用于散列密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2065558/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com