彩虹表的概念

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 彩虹表是一个用于加密散列函数逆运算的预先计算好的表, 常用于破解加密过的密码散列。一般主流的彩虹表都在100G以上。 查找表常常用于包含有限字符固定长度纯文本密码的加密。

彩虹表是一个用于加密散列函数逆运算的预先计算好的表, 常用于破解加密过的密码散列。一般主流的彩虹表都在100G以上。 查找表常常用于包含有限字符固定长度纯文本密码的加密。这是以空间换时间的典型实践, 在每一次尝试都计算的暴力破解中使用更少的计算能力和更多的储存空间,但却比简单的每个输入一条散列的翻查表使用更少的储存空间和更多的计算性能。使用加盐的KDF函数可以使这种攻击难以实现。

折叠编辑本段背景

为了保证后台数据安全,现在的做法都是使用哈希算法对明文密码进行加密存储.由于哈希算法不可逆向,因此由密码逆向出明文运算就成了不可能。

起初黑客们通过字典穷举的方法进行破解,这对简单的密码和简单的密码系统是可行的,但对于复杂的密码和密码系统,则会产生无穷大的字典.为了解决逆向破解的难题,黑客们就产生了彩虹表的技术。

为了解决所需要字典大小,减少产生和查找字典的时间,黑客选择性存储一个较小的可逆向的长链的密码的哈希值。虽然在破解单个密文,使用哈希链接的方式需要更多的计算时间的反向查找,但字典要小得多,因此可以存储更长的密码的哈希值。彩虹表是此链接技术的一种改进,并提供一种称为碰撞链的解决方案.其基于Martin Hellman理论(基于内存与时间的权重理论) 。

目录
相关文章
|
算法
带你读《图解算法小抄》六、哈希表(2)
带你读《图解算法小抄》六、哈希表(2)
|
2月前
|
数据安全/隐私保护 索引
第三章 哈希表
第三章 哈希表
32 1
|
2月前
|
存储 JSON 索引
聊一聊喜闻乐见的哈希表
聊一聊喜闻乐见的哈希表
30 2
|
6月前
|
存储
哈希表的设计与实现
哈希表的设计与实现
50 1
|
7月前
|
存储 Java Serverless
从 0 到 1 读懂:哈希表
从 0 到 1 读懂:哈希表
|
数据建模 Java 数据库
PowerDesigner使用之为表中字段添加索引
PowerDesigner使用之为表中字段添加索引
405 1
|
算法 索引
带你读《图解算法小抄》六、哈希表(1)
带你读《图解算法小抄》六、哈希表(1)
带你读《图解算法小抄》六、哈希表(1)
|
存储 SQL 关系型数据库
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~2
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~2
|
SQL 存储 关系型数据库
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~3
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~
|
SQL 存储 关系型数据库
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~1
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~