Cryptography 为什么盐会阻止彩虹桌子?
可能重复:Cryptography 为什么盐会阻止彩虹桌子?,cryptography,salt,rainbowtable,Cryptography,Salt,Rainbowtable,可能重复: 在你提到这件事之前,我已经读过了,但我没有听懂 这是我对盐/彩虹桌子的理解。请纠正我的错误 用户输入原始密码 password与salt连接,以提供passwordsalt或saltpassword passwordsalt/saltpassword散列为值hash 输入hacker 黑客利用彩虹表将散列转换为passwordsalt/saltpassword 黑客手中有字符串letmein1horse 给定letmein1horse,这难道不意味着有两种选择: 密码是letmei
在你提到这件事之前,我已经读过了,但我没有听懂 这是我对盐/彩虹桌子的理解。请纠正我的错误
password
与salt
连接,以提供passwordsalt
或saltpassword
passwordsalt
/saltpassword
散列为值hash
散列
转换为passwordsalt
/saltpassword
letmein1horse
letmein1horse
,这难道不意味着有两种选择:
letmein1
,salt是horse
horse
,salt是letmein1
或者:我的理解正确吗?是整个迭代方案完全消除了这个明显的弱点?攻击者将无法创建哈希值(密码+salt)的预计算查找表(即彩虹表),因为每个salt都需要大量计算。一个简单的字典攻击仍然是很有可能的,尽管速度慢得多,因为它不能预先计算 彩虹表可以帮助您从散列转换为具有有限字符集的短序列。例如,彩虹表可能支持长度小于10个字符的所有字母数字序列
salt长得多,使用的字符集也更宽。如果您使用128位随机salt,创建彩虹表在物理上变得很难。彩虹表非常庞大,计算起来非常长,如果您在所有密码前加上相同的字符串16字节字符串,您几乎可以肯定黑客不会为其创建彩虹表……离题投票?奇怪,奇怪?奇怪的是,没有阅读FAQ并假设它与主题相关。仅仅因为它吸引了程序员的兴趣,并不能使它成为一个主题。这显然是一个加密问题,而不是一个编程问题。@GregS,那我们为什么还要有加密标签呢?为什么在这个主题上所有的问题都是相似的/相同的?彩虹表只有在你能破解超过1个密码的情况下才是有利可图的,否则暴力强迫会更快(如果你找到匹配的密码,为什么不停止呢)。如果每个密码都有不同的salt,您确实可以构建彩虹表,但每个彩虹表只能用于一个密码(salt)。