彩虹表(Rainbow table)是用于加密散列函数逆运算的预先计算好的表,常用于破解加密过的密码散列。彩虹表常常用于破解长度固定且包含的字符范围固定的密码(如信用卡、数字等)。这是以空间换时间的典型实践,比暴力破解(Brute-force attack)用的时间少,空间更多;但与储存密码空间中的每一个密码及其对应的哈希值(Hash)实现的查找表相比,其花费的时间更多,空间更少。使用加盐的密钥派生函数可以使这种攻击难以实现。
| 本条目存在以下问题,请协助 改善本条目或在 讨论页针对议题发表看法。
| 此条目需要补充更多来源。 (2020年11月21日) |
|
彩虹表是马丁·赫尔曼早期提出的简单算法[1]的应用。