论文部分内容阅读
对称密码体制是密码学两大密码体制之一。目前已有几十种对称密码算法被提出来。其中,AES算法是最著名的分组密码算法之一。特别的,AES算法在2001年被美国标准技术局公布为美国联邦政府使用的高级加密标准。在过去的十五年间,AES算法在世界各地被广泛使用。此外,很多新发表的Hash函数和分组密码算法在设计上都采用和AES相似的结构,例如新乌克兰加密标准Kalyna分组密码算法。由于其重要的地位和影响性,AES算法的安全性一直是密码分析学界最热门的研究领域之一。学者们利用各种密码分析技术对其进行了深入的研究,如biclique攻击,related-key攻击,中间相遇攻击,不可能差分攻击等等。目前,已经有研究成果表明攻击者可以利用biclique攻击对三个版本的AES算法进行全轮的攻击。此外,related-key攻击也被证明可以用来攻击全轮的AES-192和AES-256。而本文将利用single-key模型下的中间相遇攻击技术,对AES-192和Kalyna-128/256的安全性进行评估。以下是本文的主要研究成果:首先,本文介绍了9轮AES-192的中间相遇攻击。此攻击的基础是一个对5轮AES-192的新观察。通过利用AES算法中列混淆运算的性质,这个新观察发现了一个248比特长且由43个字节参数决定的特殊有序列。如果消息对满足预先选定的差分路径,利用优化版的差分枚举技术,这43个字节参数又可以从22个字节变量计算出来。因此,虽然这个特殊的有序列理论上可以有2248种取值,但实际上最多只能取到2176种。结合这个新观察,一个5轮AES-192的区分器便构造而成。然后,这个区分器被向前扩展3轮和向后扩展1轮,来进行对9轮AES-192的中间相遇攻击。此攻击具有的数据复杂度为2113个选择明文,存储复杂度为2177 128-bit空间,以及时间复杂度为2189次9轮AES加密操作。其次,本文通过利用一条更优化的差分路径,改进了此前由Akshima等人提出的对9轮Kalyna-128/256的中间相遇攻击。这条新差分路径的优点在于,可以降低pre-computation阶段的时间复杂度。而在新旧攻击中,此阶段的时间复杂度都决定了整个攻击的时间复杂度。于是,整个攻击的时间复杂度也被降低到2238.8次9轮Kalyna-128/256加密操作。此外,在保持相同数据复杂度的条件下(2105个选择明文),新攻击的存储复杂度也比原先略低,为2226.7。最后,本文观察到,如果将6轮Kalyna区分器设定在第2轮和第7轮之间,而不是从第一轮开始,攻击者可以利用更多的密钥关系。这意味着攻击者可以用key-dependent sieve技术提前过滤更多错误的序列。于是,本文提出了一个第二个6轮Kalyna-128/256区分器。但是当将其应用到对Kalyna-128/256的中间相遇攻击时,Kalyna算法中的pre-whitening模264密钥加使得在区分器后面(即第一轮)增加一轮变得非常困难。故本文只能在区分器前面增加4轮(即第8到11轮),然后从第二轮开始攻击,最终实施10轮Kalyna-128/256的中间相遇攻击。经过time/data/memory tradeoffs之后,此次攻击的时间、数据和存储复杂度分别为2253.3、2115和2248.8。