彩虹表 彩虹表Rainbow table是用于加密散列函数逆运算的预先计算好的表常用于破解加密过的密码散列彩虹表常常用于破解长度固定且包含的字符范围固定的密码如信用卡数字等这是以空間換時間的典型实践比暴力破解Bruteforce attack用的时间少空间更多但与储存密码空间中的每一个密码及其对应的哈希值Hash实现的查找表相比其花费的时间更多空间更少使用加盐的密钥派生函数可以使这种攻击难以实现 彩虹表是馬丁赫爾曼早期提出的简单算法的应用