如果我知道部分输入,是否破解SHA1会更容易?

时间:2015-09-04 06:09:55

标签: cryptography sha number-theory cryptographic-hash-function

假设我知道80%的SHA1输入。是否从SHA1哈希值中破解剩余的20%比破解整个输入更容易?如果是这样,按百分比计算?

例如:我知道输入SHA1中的x&x(xxxxxxxxyy)=哈希值

1 个答案:

答案 0 :(得分:3)

假设输入中有10个字节。为了破解整个输入,我们必须尝试2 ^(10 * 8)个输入。给出80%,我们只需要尝试2 ^(2 * 8)输入。这相当于少了五分之一。如果输入大小增加,则比率变得更大。

SHA1今天不可逆转,输入中有大约100个未知位(12个字节)。只有20%的输入未知,这意味着输入大小需要大约500位才能保证安全,或大约62个字节。

实际上,未知部分是在开头还是结尾都很重要。开头的每个32位已知数据减少了所需操作的数量,因为某些计算可以重复使用。