我怎样才能使用TEA算法的等效密钥弱点来获取来自双重编码TEA密码的两个32位密钥,使用中间攻击中的会合,在C?
我有4条已知的纯文本和匹配的密文,我需要检索2个密钥。
编码如下:
encode(plaintext,k1);
encode(plaintext,k2); // plaintext being the result from encode number 1
我也可以使用解码的其他方式,在中间攻击中启用会议,因为我已经知道了密文。
它具有32位块大小和32位密钥,密钥以两个16位数字提供。
例如,我能够发现这两个密钥产生完全相同的密文;我很幸运,遇到了一个paper,它向我显示了128位密钥(800000000,00000000,00000000,00000000)和密钥(00000000,00000000,800000000,00000000)的数字。我将它们更改为32位(更多的猜测,但它有效)。
答案 0 :(得分:1)
它因为使用2个32位密钥进行双重加密而减弱。很高兴看到每当Mike Scott设置一个任务时你都可以看到它在stackoverflow上被问到:D
同样是鼹鼠,这是一个同样的问题,只有键是32位而不是16位。之所以将2把钥匙弄出来的原因被称为等效钥匙,它是茶叶中的一个已知缺陷,原来的algorythm有4个等效钥匙。