彩虹表 编辑
彩虹表是一个用于加密散列函数逆运算的预先计算好的查找表,常用于破解加密过的密码散列。 彩虹表常常用于破解长度固定且包含的字符范围固定的密码。这是时空权衡的典型实践,比暴力破解使用的时间更少,空间更多;但与储存密码空间中的每一个密码及其对应的哈希值实现的查找表相比,其花费的时间更多,空间更少。使用密钥派生函数可以使这种攻击难以实现。
1
相关
bcrypt是一个由美国计算机科学家尼尔斯·普罗沃斯以及大卫·马齐耶根据Blowfish加密算法所设计的密码杂凑函式,于1999年在USENIX中展示。实作中bcrypt会使用一个加盐的流程以防御彩虹表攻击,同时bcrypt还是适应性函式,它可以借由增加迭代之次数来抵御日益增进的电脑运算能力透过蛮力攻击破解。
Ophcrack是一个使用彩虹表来破解Microsoft Windows下的LAN Manager杂凑的计算机程序,它是基于GNU通用公共许可证下发布的开放源代码程式。
在密码学中,密钥延伸技术用以使弱密钥更安全;通过增加尝试每个可能密钥所需的时间和空间资源,有效阻止蛮力攻击。人们填写的口令或密码短语经常太短,或足够可预测,因而有密码破解的风险。密钥延伸使得这类攻击难以进行,原理是使得测试每个密码的基本步骤更加复杂。因为一个密钥生成函数必须是确定的,所以弱密码总是产生相同的延伸后的密钥,这种密钥延伸不改变密钥空间的熵,仅使计算增强密钥的方法更复杂。对不盐密钥延伸的攻击是存在的,称作彩虹表。对密钥加盐是指在弱密钥后追加一个长的随机串,使得预先计算好的散列值不再可用。
在密码学中,密钥延伸技术用以使弱密钥更安全;通过增加尝试每个可能密钥所需的时间和空间资源,有效阻止蛮力攻击。人们填写的口令或密码短语经常太短,或足够可预测,因而有密码破解的风险。密钥延伸使得这类攻击难以进行,原理是使得测试每个密码的基本步骤更加复杂。因为一个密钥生成函数必须是确定的,所以弱密码总是产生相同的延伸后的密钥,这种密钥延伸不改变密钥空间的熵,仅使计算增强密钥的方法更复杂。对不盐密钥延伸的攻击是存在的,称作彩虹表。对密钥加盐是指在弱密钥后追加一个长的随机串,使得预先计算好的散列值不再可用。