两个不同的输入可以在Shake256中对每个输出大小具有相同的输出(例如,每个\ell的Shake256(input_1, \ell) = Shake256(input_2,\ell) )?
发布于 2021-05-21 17:55:10
两个不同的输入可以在Shake256中对每个输出大小具有相同的输出(例如,每个\ell的Shake256(input_1, \ell) = Shake256(input_2,\ell) )?
是的,这是可能的。事实上,这样的一对input_1, input_2的存在是不可避免的。
Shake256将输入映射为1600位状态,然后将此状态转换为任意长的序列。如果两个不同的输入映射到相同的状态,那么它们将产生相同的序列(独立于您所要求的输出)。
特别是,如果我们考虑所有1601位输入,必须有两个不同的输入(根据鸽子洞原理)映射到相同的状态;这一观察为我们提供了input_1, input_2所需大小的上限。几乎可以肯定地说,存在着小得多的配对。
现在,找到这样的一对,嗯,这是一个不同的(更困难的)问题.
https://crypto.stackexchange.com/questions/90096
复制相似问题