论文部分内容阅读
在eSTREAM工程和CAESAR计划等标准算法征集活动的推动下,出现了一批新型密码算法和密码模型,例如基于混合运算(Mixed Operation Cipher-MOC)的密码模型、基于非线性反馈移位寄存器(NLFSR)的序列密码、基于字的序列密码算法—ZUC系列算法以及基于流密码的认证加密算法MORUS等,因其结构新颖以及实现高效而受到研究者的广泛关注,同时它们的安全性也是目前的热点研究问题。为了更好地分析新型对称密码算法的安全性,出现了完全性分析、动态立方攻击、条件差分分析等新型分析方法,这些新型分析方法对新型算法具有较好的分析效果。例如动态立方攻击攻破了基于NLFSR的算法Grain-128算法,条件差分攻击对Trivium、Grain系列算法等基于NLFSR的算法取得了相当好的分析效果。但是由于新型分析方法出现时间较短,相关研究成果还不够成熟,对其理论和应用进行深入研究将丰富对称密码设计和分析理论,对新型对称密码的设计与分析具有指导和借鉴意义。本文对若干新型对称密码安全性分析方法进行了深入研究,有针对性地研究了完全性分析、动态立方攻击、条件差分分析及多差分密码分析等四种新型分析方法,对SIMON、SPECK等基于混合运算的密码算法,认证加密算法MORUS以及Grain v1、ZUC(祖冲之)算法等有代表性的序列密码算法进行了安全性分析,取得了如下创新性成果。一、针对MOC模型的完全性研究及应用1.提出了异或、逻辑与、移位及循环移位、模2n加、模2n减等运算的完全性运算法则,在此基础上给出了针对MOC模型的完全性通用算法,可以更精确地给出算法各轮的内部状态所包含输入比特的信息,据此分析了SIMON、SPECK等MOC模型密码算法的完全性。2.提出了利用MOC模型完全性通用算法构造不可能差分区分器的方法,此方法可直接给出MOC模型高重量的不可能差分区分器且搜索效率高,利用此方法给出了MOC模型新的不可能差分区分器的构造算法,据此找到了SIMON系列算法现有的所有最长不可能差分区分器,并且找到了SPECK系列算法更多的不可能差分区分器。二、动态立方攻击研究及应用针对现有动态立方攻击方法的不足,优化了立方子集合的选取规则,提高了所选取立方集合对正确密钥和错误密钥的区分能力;给出了新的秘密信息恢复方法,提高了秘密信息恢复的成功率,在此基础上提出了一种改进的动态立方攻击方法,首次将改进的动态立方攻击应用于分析初始化5步的简化版MORUS算法,最终以O(295.05)的计算复杂度恢复所有128比特密钥,攻击的成功率大于92%。三、针对Grain型序列密码的条件差分分析研究及应用1.首先针对序列密码算法多轮迭代后难以得到内部状态和输出密钥流具体表达式的问题,提出了因式分解表达式计算方法,可以获得更多轮数内部状态和输出密钥流的表达式;其次提出了条件差分分析中恢复密钥表达式的新方法,从理论上给出了数据复杂度及成功率等指标的计算公式,利用上述两种方法并结合不同类型的条件选取准则,提出了一种改进的条件差分分析方法,并应用于针对简化版Grain v1算法的分析中,将针对初始化106轮简化版Grain v1算法的已有的条件差分-区分攻击改进为条件差分-密钥恢复攻击,并降低了初始化107轮简化版Grain v1算法条件差分-区分攻击的计算复杂度,同时提高了攻击成功率。2.基于中间相遇思想结合改进的条件差分分析技术,给出了针对Grain型序列密码的高级条件差分攻击方法,可以在单密钥条件下提高条件差分分析的轮数并降低时间复杂度。将其应用于Grain v1算法,给出了在单密钥条件下对114轮和120轮简化版Grain v1算法的条件差分-区分攻击和条件差分-密钥恢复攻击,这是目前在单密钥条件下对Grain v1算法最好的条件差分攻击结果。四、针对ZUC系列算法的多差分分析研究及应用针对ZUC算法主要部件的差分性质进行了细致分析,具体给出了比特重组运算和移位运算输出差分的所有可能及对应的概率,对于模2n加和模2加混合运算,在任意给定输入差的情况下,给出了寻找满足差分概率不小于最大概率N分之一的输出差分的算法,在此基础上提出了对ZUC系列算法进行多差分分析的方法,可以更加精确地从理论上给出该算法内部状态的差分对应及概率。将其应用于ZUC系列算法,对ZUC-128算法给出了内部状态的一个新的24轮的选择IV差分对应,其差分转移概率高于现有结果,在此基础上首次给出了对初始化7轮简化版ZUC-128算法的选择IV区分攻击;给出了ZUC-256算法内部状态的27轮的相关密钥差分对应(在弱密钥条件下),在此基础上首次给出了对初始化10轮简化版ZUC-256算法的相关密钥区分攻击。