数据库 – 盐化密码哈希有什么好处?

前端之家收集整理的这篇文章主要介绍了数据库 – 盐化密码哈希有什么好处?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚阅读了许多关于使用salt散列密码的文章,但是我找不到我所遇到的特定查询/混淆的答案.

假设我刚刚为数据库添加了密码和salt这个方法

>创建一个随机
>将用户密码盐混合在一起
>将哈希输出存储为“密码”列中的密码
>将随机盐储存在“盐”栏中

如果这是正确的,当攻击者访问我的数据库时会发生什么?当然,如果他们能够读取散列密码的盐值,他们可以计算出没有盐的散列密码,然后使用彩虹表吗?或者用可逆的东西加密盐值是个好主意?

如果salt值以纯文本形式存储,我就看不到它的重点.请赐教?

解决方法

您概述的步骤是正确的.

如果攻击者访问您的数据库,他必须对可能的密码和随机盐进行强力搜索.如果你使用64位合理的随机盐,那么就不会有两个条目使用相同的盐,所以任何彩虹表攻击一次只能用于(最多)一个盐值,这使得彩虹表攻击也是如此价格昂贵. (在为用户建立salt时,您甚至可以检查以确保没有使用给定盐的其他密码.)

盐渍哈希密码处理的目的是使计算上不可能预先计算可能的密码哈希,因为随机盐会使预计算过程搞砸.

这也意味着如果在不同的站点使用相同的密码,只需查看(盐渍哈希)密码值就不会明显 – 因为盐在不同的站点会有所不同,因此产生的哈希值将是不同. (当然,如果为一个站点发现密码,则攻击者将首先在下一个站点尝试该密码;最好不要在多个位置使用相同的密码.但是使用相同的密码这一事实是隐藏的.)

猜你在找的MsSQL相关文章