散列函数的周期性

时间:2016-09-22 08:55:16

标签: hash sha

考虑天真哈希函数:HASH = INPUT % 4。这个函数是周期性的,如果我们用序号0, 1, 2, 3, 4, 5, ...称它,则产生的散列序列将具有四个周期:0, 1, 2, 3, 0, 1, 2, 3, 0, ...

我的问题是现代加密哈希函数,例如SHA256,在这个意义上是否是周期性的?换句话说,是否有一些整数0 <= n0 < kHASH(n + b) = HASH(n + b + ak)b中的所有整数[0, k - 1]和所有正整数a?例如,序列SHA256(0), SHA256(1), SHA256(2), SHA256(3), ...在某个点之后是否是周期性的?

1 个答案:

答案 0 :(得分:1)

绝对不是。如果是这种情况,发现碰撞将是微不足道的。加密哈希函数的强度由查找哈希(a)==哈希(b)的难度来定义。理想情况下,您需要找到Hash(b)的所有值来查找碰撞,如果Hash是很多位,则这是不可行的。