论文部分内容阅读
分组密码是许多密码系统的核心,广泛应用于政治、外交和商业等领域用于保障用户的信息安全.因此分析分组密码的安全性是当前信息安全领域的重要问题.中间相遇和不可能差分分析技术是分组密码中两类重要的分析技术,对许多密码算法取得了很好的分析结果.本文围绕中间相遇和不可能差分分析技术展开研究,主要研究内容和创新点如下:论文第一大部分主要围绕中间相遇分析技术展开研究:1.Feistel结构作为一种重要的分组密码结构广泛应用于分组密码的设计之中,因此其安全性分析受到广泛关注.本文基于中间相遇分析技术研究了一类Feistel结构的安全性,该类Feistel结构被应用分组密码SIMON和Simeck算法的设计之中,我们称之为Feistel-2~*结构.根据Feistel-2~*结构的性质,我们引入了“差分函数约化技术”,利用该技术可以有效降低计算Feistel-2~*结构内部状态所需要猜测的密钥量,从而提高中间相遇分析的效率.基于差分函数约化技术,我们给出了对Feistel-2~*结构的两种中间相遇分析模型.第一种分析模型是一种低数据复杂度分析,仅需要几个选择明文.第二种分析模型需要较多的数据量,但是提升了分析轮数.基于我们的分析,我们证明了当Feistel-2~*型分组密码密钥长度为分组长度的8)倍时,一个安全的Feistel-2~*型分组密码至少需要迭代48)+4轮.2.截断差分区分器的构造一直是截断差分分析中的难点问题.本文基于中间相遇技术研究了SPN结构截断差分的概率与SPN结构扩散层矩阵之间的关系,并给出了一种构造SPN结构截断差分区分器的方法.我们将该方法分别应用于分组密码mCrypton和CRYPTON V1.0算法,构造了这两个算法的首个5轮截断差分区分器.基于上述5轮截断差分区分器并结合key-bridging(密钥桥接)技术和时空折中技术,我们给出了mCrypton-64(64比特密钥版本)算法的8轮截断差分分析.该分析是目前关于mCrypton-64分析轮数最高的单密钥分析结果.进一步,我们给出了CRYPTON V1.0算法9轮截断差分分析,将之前最好的截断差分分析的结果提升了一轮.论文第二大部分主要围绕不可能差分分析技术展开研究:3.SKINNY系列算法是2016年美密会提出的可调轻量级分组密码,可用于计算机底层存储加密或者生成电子标签等.本文利用不可能差分分析技术分析了SKINNY系列算法的安全性.通过分析SKINNY的密钥扩展算法,我们得到了不同轮子密钥之间的线性关系,并将这些关系应用于对SKINNY算法的不可能差分分析之中,降低了分析的复杂度.此外,我们引进了“贪心对比策略”,该策略结合early-abort技术可以有效控制不可能差分分析在线分析阶段的时间复杂度.利用上述技巧,我们将之前关于SKINNY算法的不可能差分分析结果提升了一轮,分别得到了6)/9)=1,2和3时,SKINNY算法17轮,19轮和21轮的不可能差分分析,其中6)为密钥长度,9)为分组长度.4.QARMA系列算法是2016年提出的可调轻量级分组密码,该算法被用于ARM公司新一代处理器ARMv8架构中提供软件保护.本文利用不可能差分分析技术分析了QARMA系列算法的安全性.通过分析QARMA系列算法的差分传播规律,我们构造了该算法首个6轮不可能差分.利用该6轮不可能差分以及时空折中技术,我们给出了QARMA系列算法的10轮不可能差分分析.特别的,若增加存储复杂度,我们的分析可以达到11轮,该结果是目前关于QARMA系列算法分析轮数最高的单密钥分析结果.我们的分析同时也否定了QARMA算法设计者关于“8轮QARMA算法可以抵抗不可能差分分析”的论断.5.自不可能差分分析提出以来,该方法对许多分组密码算法取得了很好的分析效果.因此分组密码抗不可能差分分析的安全性成为当前研究的热点.Feistel-SP结构广泛应用于分组密码的设计之中.当Feistel-SP结构的扩散层矩阵为置换矩阵时,我们称这种结构为Feistel~*-SP结构.本文研究了Feistel~*-SP结构抗不可能差分分析的安全性.首先,我们基于Feistel~*-SP结构的加解密特征矩阵,给出了一种预测Feistel~*-SP结构差分传播规律的新方法,称之为特征矩阵方法.其次,我们利用特征矩阵方法给出了Feistel~*-SP结构不可能差分的轮数的上界.研究显示Feistel~*-SP结构不可能差分的轮数的上界仅与Feistel~*-SP结构特征矩阵的扩散阶有关:Feistel~*-SP结构特征矩阵的扩散阶越小,Feistel~*-SP结构差分扩散性越好,分析者构造的不可能差分轮数越低.进一步,基于不可能差分和零相关线性闭包之间的对偶关系,我们得到了Feistel~*-SP结构零相关线性闭包的轮数的上界.6.我们将特征矩阵的方法推广到更一般的Feistel结构.我们指出当一般的Feistel结构的加解密特征矩阵为本原矩阵时,例如CAST-256型广义Feistel结构和Type-II型广义Feistel结构,同样可以利用特征矩阵的方法估计其不可能差分和零相关线性闭包的轮数的上界.最后,我们将特征矩阵方法应用于LBlock和TWINE算法.这两个算法的轮函数可等价视为Feistel~*-SP结构.利用这两个算法的特征矩阵的性质,我们证明了:若不考虑S盒的具体性质,LBlock和TWINE算法不存在轮数大于14轮的不可能差分和零相关线性闭包.