数据库 – 盐化密码哈希有什么好处?
|
我刚刚阅读了许多关于使用salt散列密码的文章,但是我找不到我所遇到的特定查询/混淆的答案. 假设我刚刚为数据库添加了密码和salt这个方法: >创建一个随机盐 如果这是正确的,当攻击者访问我的数据库时会发生什么?当然,如果他们能够读取散列密码的盐值,他们可以计算出没有盐的散列密码,然后使用彩虹表吗?或者用可逆的东西加密盐值是个好主意? 如果salt值以纯文本形式存储,我就看不到它的重点.请赐教? 解决方法您概述的步骤是正确的.如果攻击者访问您的数据库,他必须对可能的密码和随机盐进行强力搜索.如果你使用64位合理的随机盐,那么就不会有两个条目使用相同的盐,所以任何彩虹表攻击一次只能用于(最多)一个盐值,这使得彩虹表攻击也是如此价格昂贵. (在为用户建立salt时,您甚至可以检查以确保没有使用给定盐的其他密码.) 盐渍哈希密码处理的目的是使计算上不可能预先计算可能的密码哈希,因为随机盐会使预计算过程搞砸. 这也意味着如果在不同的站点使用相同的密码,只需查看(盐渍哈希)密码值就不会明显 – 因为盐在不同的站点会有所不同,因此产生的哈希值将是不同. (当然,如果为一个站点发现密码,则攻击者将首先在下一个站点尝试该密码;最好不要在多个位置使用相同的密码.但是使用相同的密码这一事实是隐藏的.) (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ms-access-2007 – 如何将更新分发到Access数据库前端?
- sql-server – 实体框架高效查询
- Windows安装MySQL 5.7.18 解压版的教程
- SQL Server 2008 R2. “AUTO_INCREMENT”附近的语法不正确
- sql-server – 如何在sql server 2005中获取x和y之间的日期
- sql-server-2008 – 存储过程中的表类型参数导致操作数类型
- sql-server – create function必须是批处理中唯一的语句
- linq-to-sql – 没有DTC的NServiceBus(AsA_Server)可能吗?
- sql – 为什么如果在WHERE子句中一个常量被一个参数替换(具
- 语法问题SQL Server.结合Pivot,XML解析和JOIN
