论文部分内容阅读
流密码具有结构简洁、加密速度快、错误传播有限等特点,广泛用于高速数据传输与加密。基于硬件的流密码更因低功耗特性,在资源受限环境下发挥着无可替代的作用。本文对流密码的几类基本部件:线性反馈移位寄存器、非线性反馈移位寄存器和布尔函数进行了研究和分析,取得以下主要成果:(1)通过分析线性反馈移位寄存器延迟序列和初始状态间的关系,给出了能够完全抵抗能量攻击所需触发器数目的下界。提出了一种线性反馈移位寄存器设计方案,在抵抗线性反馈移位寄存器能量攻击时,附加触发器的个数至多为5个,有效降低了线性反馈移位寄存器的附加功耗。(2)针对基于非线性反馈移位寄存器和布尔函数的流密码算法,通过分析输出布尔函数和非线性反馈移位寄存器反馈函数的Walsh谱值,提出了一种基于Walsh谱的非线性部件的密码分析方法。在分析平衡性、非线性度、相关免疫度等密码学指标基础上,查找影响函数密码学性质的关键Walsh谱值点,对存在问题的谱值点进行函数值分析,判断算法是否符合安全性要求。最后利用该方法对流密码Grain v1进行了分析,通过Walsh谱分布指出了算法中存在的安全隐患。(3)重点研究了定义在2nZ上的4值广义Bent函数。给出了一种2nZ上4值Bent函数的构造方法,该方法主要用于生成奇数个变元的广义Bent函数。然后,通过布尔置换,给出了奇变元广义Bent函数的具体实现方法。(4)通过分析Bent函数的函数值和游程特性,提出了一种基于真值表的Bent函数搜索算法,与其他搜索算法相比,该方法具有较低的存储复杂度,易于使用并行计算实现等特点。