论文部分内容阅读
随着信息时代的来临,人们对信息的安全越来越重视,各种保护信息安全的密码算法被提出。为了证明这些算法的安全性,就需要不断的用各种分析方法对其进行分析。然而传统的分析方法,例如穷举法攻击,代数攻击,差分攻击只能证明算法理论上的安全性,无法证明算法在硬件设备上实现后的安全性。差分错误攻击方法的提出弥补了这方面的空白,通过采集硬件设备泄露的信息,能够对算法在设备中实现后的安全性进行分析。差分错误攻击的提出不但为密码分析者提供了新的分析方法,还为密码学的研究打开了新的方向。目前对于差分错误攻击方法的研究方向主要在于如何以较小的代价正确快速的恢复出密钥。本文的一个工作就是对基于MICKEY-128 2.0的差分错误攻击的改进,提高了算法工作效率。同时据所查资料显示,在对MICKEY-128 2.0的差分错误攻击的实现方面的研究中,对于并行化技术和分布式计算的引入还是一个空白。本文的另外一个工作就是把这两项内容引入到差分错误攻击的实现中,提高攻击的速度。本文主要的工作内容包括以下两方面:1、对Sandip Karmakar和Dipanwita Roy Chowdhury提出的基于MICKEY-128 2.0的差分错误攻击方法提出了改进。2013年,Sandip Karmakar和Dipanwita Roy Chowdhury对MICKEY-128 2.0给出了一个差分错误攻击方法,利用方法使用480个错误插入和480对正确/错误密钥流即可成功恢复寄存器的初始状态。从错误插入个数的角度来讲,该方法是当时性能最佳的方法。然而在本文中我们指出该方法依然存在不足之处,并且给出了改善的方案,最终得到了改善后的差分错误攻击方法。改进之后的算法在不影响原有算法性能的前提下弥补了它的不足之处,并且适用于其他版本的Mickey密码。2、从工程实现的角度对本文提出的差分错误攻击做了改进。在工程实现中,差分错误攻击需要采集大量的数据进行分析,试错。当数据量过大时,用传统的单一计算机,单线程进行计算将会降低工作效率。为了提高实际操作的效率,本文融入并行化技术,分布式计算等概念,让多个计算机,多条线程同时运行,从而提高速度,缩短破译密钥的时间。在拥有两台运算节点,每个节点配备二核处理器的条件下,引入并行化技术和分布式计算后差分错误攻击的速度将接近原来的3.6倍。