论文部分内容阅读
安全性强度主要是指密码算法抵抗现有各种攻击的能力,它对密码算法是至关重要的。只有在保证安全强度的基础上,才能考虑密码算法的其他特性。所以,判断密码算法的安全性对密码算法的设计以及研究工作具有非常重要的实际意义,而能够测试密码算法安全性,且与具体算法无关的测试平台更是科研工作所必需的。在以上背景下,本文首先对对称密码算法的统计性测试,分组密码S盒的测试以及密码算法的攻击方法进行分析总结,然后在此基础上建立测试平台。测试平台的主要测试方法有统计性检测、S盒指标测试和攻击方法。其中,统计性测试主要是通过对二进制序列进行统计学方面的测试来判定序列是否是随机的;S盒的测试则是针对S盒的设计准则来进行测试的,这是由于S盒是分组密码算法中唯一的非线性结构,它决定了分组密码的安全性,因此对分组密码的测试,主要是针对S盒的测试;在攻击方法方面,主要研究了最近提出的差分代数方法,并利用此思想,提出了对MISTY1算法的高阶差分代数攻击。对称密码算法的测试主要包括了统计性测试和S盒测试,本文首先对随机性测试中的频率测试,序列测试,自相关测试,矩阵测试等几个典型测试方法进行详细的介绍;接着对分组密码的主要结构进行分析,介绍了S盒的构造方法,并分析了由S盒的设计准则而来的相关测试指标。在此基础上,建立测试平台,使平台具有全面的测试方法并不依赖于某个密码算法。在对称密码算法的攻击方法方面,本文根据现有的密码算法攻击方法,重点研究了差分代数攻击方法,分析了8轮MISTY1算法的S盒的最大差分概率,接着根据差分代数分析的思想,提出了高阶差分代数分析的方法,并利用此方法对具有APN函数构造的S盒的MISTY1算法进行攻击,从而有效简化了代数攻击的求解过程,通过与其他攻击方法在复杂度方而的比较,证明了高阶差分代数攻击在对MISTY1算法进行分析时的优势。最后,针对AES和MISTY1算法的S盒,利用测试平台对其分别进行随机性测试和S盒相关指标的实际测试,对测试结果进行分析,验证密码算法安全性的同时,证明了测试平台的实际可行性,并与其他测试平台进行比较,从而说明平台的优点。