sha256 salted有没有机会使用彩虹表来“解密”它?

时间:2016-01-22 17:48:20

标签: hash sha rainbowtable

我想问一下,如果我们已经知道盐,有没有机会在盐渍哈希上使用彩虹表。首先,我想介绍哈希的系统。

每个都是使用3个不同输入的SHA-256哈希计算的。 首先,是服务器种子。这是过去某个时间生成的预先计算的值。种子是在链中生成的,这样今天的种子就是明天种子的哈希。

种子0 =>种子1 =>种子2 =>种子3

接下来,使用纽约彩票的Take 5游戏的结果对服务器种子进行腌制(加扰)。每天美国东部时间晚上11:21绘制,这些结果(0填充)将附加到服务器种子,以便在第二天使用。

最后,每个卷都用唯一的圆形ID加盐,确保每卷都有不同的散列。

使用SHA256生成圆形散列(“serverseed-lottery-roundid”)。获取结果哈希的前8个十六进制数字并转换为十进制产生一个0-4294967295之间的整数。取模15得到的最终滚动范围为0-14。

我按时间顺序添加了几个这些种子和盐的例子: 种子:

1#08659e6ef7759d68c4a4d8b214217394c5f2b1a539cc51cc5f89be1f55ab737b

2#6d7ef31d654c30b2113019de67b0bc5bd400c41fc1d916937f2aee378772480c

3#37e9469b09afca5a985170684d18ece4e881bea5d5f22af8df1049129351b976

盐:

1#0406161724

2#1020273438

3#0111293436

种子数量是指盐的数量,1#从2016年1月19日开始

最后,这是一些带有这些输入的php实现。

$ seed =“39b7d32fcb743c244c569a56d6de4dc27577d6277d6cf155bdcba6d05befcb34”;

$ salt =“0422262831”;

$ round_id =“1”;

$ hash = hash(“sha256”,$ seed。“ - ”。$ salt。“ - ”。$ round_id);

$ roll = hexdec(substr($ hash,0,8))%15;

echo“Round $ round_id = $ roll”;

如果你帮我解释这些陈述,我将不胜感激:)

0 个答案:

没有答案