我刚看了一篇文章。据说:
所以我并不是说盐是没有目的的,我是说它们不能防止字典或暴力攻击(它们不能)。
如果您有一个带有散列密码和盐的数据库转储,则只有在您知道 crypt 算法的情况下才能启动暴力破解。如果你使用开源,这可能是个问题。但是如果你稍微改变一下算法,这不是问题,直到有人知道它。我对吗?
我刚看了一篇文章。据说:
所以我并不是说盐是没有目的的,我是说它们不能防止字典或暴力攻击(它们不能)。
如果您有一个带有散列密码和盐的数据库转储,则只有在您知道 crypt 算法的情况下才能启动暴力破解。如果你使用开源,这可能是个问题。但是如果你稍微改变一下算法,这不是问题,直到有人知道它。我对吗?
Troy Hunt 最近写了一篇很棒的文章,我们的密码哈希没有衣服,详细介绍了密码哈希的演变,包括 Salts。
尽管 Salts 阻止了与预先散列的彩虹表进行直接比较,但他的观点是,硬件已经改进到可以根据摩尔定律在短时间内将盐应用于未散列的彩虹密码并比较加盐的哈希值。
正如 Trickfire 所说,使用专有的散列算法是通过默默无闻的安全性。如果攻击者拥有你的数据库,他也很可能能够获取你的应用程序并对其进行反汇编并获得算法。
虽然它使找出密码的问题变得更加困难,但不建议依赖这种技术。