折叠编辑本段背景
为了保证后台数据安全,现在的做法都是使用哈希算法对明文密码进行加密存储.由于哈希算法不可逆向,因此由密码逆向出明文运算就成了不可能。
起初黑客们通过字典穷举的方法进行破解,这对简单的密码和简单的密码系统是可行的,但对于复杂的密码和密码系统,则会产生无穷大的字典.为了解决逆向破解的难题,黑客们就产生了彩虹表的技术。
为了解决所需要字典大小,减少产生和查找字典的时间,黑客选择性存储一个较小的可逆向的长链的密码的哈希值。虽然在破解单个密文,使用哈希链接的方式需要更多的计算时间的反向查找,但字典要小得多,因此可以存储更长的密码的哈希值。彩虹表是此链接技术的一种改进,并提供一种称为碰撞链的解决方案.其基于Martin Hellman理论(基于内存与时间的权重理论) 。