乘法差分与SC2000块密码的差分和线性密码分析
1. 乘法差分相关研究
在密码学中,像异或(xor)和位置换等操作常被使用。研究人员利用这些差分对现有的两种密码以及国际数据加密算法(IDEA)的变体进行了密码分析。
研究结果表明,仅靠模乘操作本身不足以抵御差分攻击。此外,乘法差分在存在不兼容的群操作时,可能会表现出惊人的弹性。因此,乘法需要与其他群操作仔细结合,以破坏这些差分特性。研究人员希望该研究能有助于进一步理解如何利用乘法运算符构建安全的加密算法。
2. SC2000块密码简介
SC2000是一种提交给NESSIE和CRYPTREC项目的块密码,具有128位的块大小,支持128位、192位和256位的用户密钥,在这些方面与高级加密标准(AES)相同。这里主要考虑128位用户密钥的情况,并且省略了与攻击无关的SC2000密钥调度的描述,该密钥调度从128位用户密钥生成64个32位子密钥。
2.1 加密算法
SC2000加密算法应用了三个函数:I、R和B函数,每个函数都有128位的输入和输出。R函数有两种类型,仅在一个常量(0x55555555或0x33333333)上有所不同,分别用R5和R3表示。加密函数可以写成:
I-B-I-R5×R5-I-B-I-R3×R3-I-B-I-R5×R5-
I-B-I-R3×R3-I-B-I-R5×R5-I-B-I-R3×R3-I-B-I
其中×表示左右64位的交换。定义 -I-B-I-R×R- 为一轮,该轮迭代六次,最后应用 -I-B-I 以实现加
超级会员免费看
订阅专栏 解锁全文
40

被折叠的 条评论
为什么被折叠?



