1

我目前正在从事一个并行计算项目,我正在尝试使用彩虹表来破解密码。

我想到的第一步是实现它的一个非常小的版本,它破解长度为 5 或 6 的密码(仅以数字密码开头)。首先,我对配置设置有一些疑问。

1 - 我应该从什么尺寸开始。我的第一个猜测是,我将从一个包含 1000 个初始、最终对的表开始。这是一个好的开始尺寸吗?

2- 链条的数量 - 我真的没有在线获得关于链条大小的信息

3 - 减少功能 - 如果有人可以给我任何关于我应该如何建造一个的信息。

另外,如果有人有任何信息或任何示例,那将非常有帮助。

4

2 回答 2

1

网上已经有大量的彩虹表可用。计算彩虹表只是将计算负担从攻击运行时转移到预计算。

http://www.freerainbowtables.com/en/tables/

http://www.renderlab.net/projects/WPA-tables/

http://ophcrack.sourceforge.net/tables.php

http://www.codinghorror.com/blog/2007/09/rainbow-hash-cracking.html

于 2011-02-09T03:40:57.040 回答
1

这是一个时空权衡。链越长,您需要的链越少,因此占用的空间就越少,但破解每个密码所需的时间就越长。

因此,答案始终是在可用空间内建造最大的桌子。这将决定您的链条长度和链条数量。

至于选择归约函数,它应该是快速的并且是伪随机的。对于您建议的明文集,您可以从散列中选择 20 位并将它们解释为十进制数(在链中的每个步骤选择不同的 20 位集)。

于 2011-02-10T01:21:43.353 回答