论文部分内容阅读
序列密码是密码学的一个重要分支.由于具有加解密速度快、硬件实现简单、没有或只有有限的错误传播等特点,序列密码被广泛应用于保密通信中.为了更进一步促进序列密码的发展,欧洲实施了eSTREAM研究项目以期征集到适合广泛采用的新的序列密码算法.因此,充分考量eSTREAM候选算法及获选算法的安全性对序列密码的发展具有重要的理论和现实意义.基于此,本文重点对eSTREAM计划中的候选算法DECIMv2及获选算法Trivium进行了安全性分析,取得以下主要成果:(1)针对DECIMv2的非线性部件ABSG的原型比特搜索生成器BSG,利用Martin Hell关于自缩生成器的攻击思想,提出了一种基于多段密钥流的概率快速密钥恢复攻击.与目前已知最好攻击结果相比,该攻击能够将计算复杂度从O(L320.5L)降到O(L320.43L),其中L为线性反馈移位寄存器的长度.特别地,当L为96时,计算复杂度可以达到O(L320.39L),所需的数据复杂度为O(NL),N为攻击的次数.实验结果表明,随着密钥段数的增多,算法的计算复杂度明显减少.(2)针对具有低重量反馈多项式的BSG,利用猜测确定攻击的思想并基于BSG序列的差分构造特点提出一种快速密钥恢复攻击.具体的,由截获的密钥流恢复出候选差分序列并利用反馈多项式对候选差分序列进行校验,以减少需要求解的L维线性方程系统的数量,从而大大减少了算法所需的计算复杂度.理论分析和仿真结果表明,对于反馈多项式重量小于10的BSG,该算法明显优于现有的攻击方法.(3)对Trivium的简化版本2轮Trivium进行分析研究,借助于轮函数的Walsh谱,找到了它的多个线性逼近方程,对其进行了多线性密码分析.与现有的单线性密码分析算法相比,该算法攻击成功所需的数据量明显减少.具体的,若能找到几个线性近似方程,在达到相同攻击成功概率的前提下,多线性密码分析所需的数据量只有单线性密码分析的1/n.(4)对Trivium的硬件实现进行了分析研究,发现了其可用于相关能量攻击的漏洞,据此给出了Trivium相关能量攻击的有效方案.首先通过对Trivium的初始化算法的分析可以选择出合适的中间值函数及能量模型,进而通过引入一个修正的相关系数描述假设的能量消耗值与实际测量的能量值的关系.修正相关系数的计算可以明显减少电子噪声的影响,并且假设中间值可以由最大修正相关系数唯一确定.接着利用恢复出的假设中间值可以列出多个关于秘密钥比特的方程并最终通过顺序求解这些方程来得到Trivium的秘密钥.与Fischer关于Trivium|的差分能量攻击相比,该算法更有效更稳健.最后的软件仿真验证了方案的正确性和可行性.(5)利用相关能量分析攻击对eSTREAM的候选算法DECIMv2进行了安全性分析.针对DECIMv2|的软硬件实现的不同特点,分别选择出合适的能量模型及中间值;然后利用选择IV对DECIMv2进行再同步来获得足够的能量迹,从而计算修正相关系数可以恢复出正确的中间值并最终得到算法的秘密钥.软件仿真验证了DECIMv2(?)的相关能量攻击方案的可行性.(6)对基于LFSR的流密码进行了能量分析攻击.首先基于信息论的知识将能量分析的问题转化为三元对称信道的译码问题.从而,借助两个设定的门限值,我们的算法可以明显消除噪声的影响.与Burman等人的攻击相比,由于考虑了算法噪声和电子噪声的影响,该算法更加实际可行.仿真结果表明,当信噪比(SNR)高于-6.5dB时,该算法总是有效的.