为什么盐会停止彩虹表?

时间:2012-11-25 22:14:38

标签: cryptography salt rainbowtable

  

可能重复:
  How does password salt help against a rainbow table attack?

在你提到之前,我已经阅读this question.我没有关注。

这是我对盐/彩虹表的理解。请纠正我错在哪里。

  1. 用户输入原始password

  2. passwordsalt连接,以提供passwordsaltsaltpassword

  3. passwordsalt / saltpassword经过哈希值hash

  4. 输入黑客。

  5. 黑客使用彩虹表将hash转换为passwordsalt / saltpassword

  6. 黑客掌握(示例)字符串letmein1horse

  7. 鉴于letmein1horse,这不仅仅意味着有两个选项:

    1. 密码为letmein1,盐为horse

    2. 密码为horse,盐为letmein1

    3. 所以你明白为什么我很困惑。我的理解显然是有缺陷的,因为如果它是如何工作的,显然盐就没用了。

      或:我的理解是否正确,这是整个迭代方案完全解除了这个明显的弱点?

2 个答案:

答案 0 :(得分:2)

彩虹表可以帮助您从哈希变为具有有限字符集的短序列。例如,彩虹表可能支持所有长度小于10个字符的字母数字序列。

盐更长,使用更宽的字符集。如果使用128位随机盐,则创建彩虹表会变得难以处理。

答案 1 :(得分:0)

攻击者无法创建散列值(密码+盐)的预计算查找表(即彩虹表),因为它需要对每个盐进行大量计算。一个简单的字典攻击仍然是非常可能的,虽然它要慢得多,因为它无法预先计算。 source