线性滤波非线性反馈移位寄存器的代数与相关攻击
1. 引言
流密码与分组密码是对称加密算法的两大主要类别。流密码会生成一个基于小字母表(通常是二进制字母表 {0, 1})的伪随机密钥流序列。在加密明文序列时,每个明文符号会通过群运算(通常是 {0, 1} 上的异或运算)与密钥流序列中对应的符号相结合。
经典的随机数生成器构建方式是使用线性反馈移位寄存器(LFSR),并将非线性布尔函数 f 应用于当前 LFSR 状态来生成密钥流,这种构造被称为滤波器生成器。过去多年来,人们对其进行了广泛研究,形成了大量此类密码设计的准则。例如,若函数 f 具有高阶的相关免疫性或满足某些准则,就能避免针对该方案的相关攻击和快速相关攻击。代数攻击则引出了布尔函数代数免疫性的概念。
近年来,使用非线性反馈移位寄存器(NFSR)的新型流密码被提出,作为基于 LFSR 的流密码的替代方案。像 eSTREAM 项目的候选者 Trivium 或 Grain 就使用了一个或多个 NFSR,这些 NFSR 可能与 LFSR 组合使用,也可能单独使用。
本文分析了经典滤波器生成器构造的对偶形式,即具有线性输出函数的非线性反馈移位寄存器。研究发现,可以将任何内部状态变量正式表示为初始状态变量和密钥流位的线性组合,这使得对这种方案实施代数或相关攻击成为可能。此外,还将分析扩展到线性滤波的 NFSR 与一个或多个非线性滤波的 LFSR 线性组合的情况,并对修改版的 Grain - 128 实施了攻击。
2. 线性滤波的 NFSR
滤波器生成器(即由非线性布尔函数滤波的 LFSR)已得到广泛研究,一些密码就是基于这种构造,如 WG 或 Sfinks。针对滤波器生成器,人们提出了
线性滤波NFSR的攻击方法研究
超级会员免费看
订阅专栏 解锁全文

28

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



