论文部分内容阅读
由于物联网及其应用的兴起,无线通信和嵌入式系统发展迅猛,其应用场景已经遍布日常生活的方方面面,比如公共交通、智能卡、电子支付。而物联网应用对应的运行环境是微小计算设备、嵌入式设备、电池供电设备,这些设备的数据处理能力、存储能力有限,因此被称为资源受限设备。要保证这些设备上信息的加解密安全,就对密码算法提出了低耗能、芯片面积小型化、低延迟、高效率等需求。在这样的背景下,分组密码算法进入了轻量化时代。轻量级分组密码成为了密码学的研究重点和热点。轻量级分组密码算法在保证资源受限设备的数据安全方面,将扮演越来越重要的角色。在资源受到限制的设备上选择密码算法必须非常谨慎并且对算法的安全性有足够的信心。在轻量级分组算法投入广泛使用前,必须对它的安全性进行评估。否则,算法投入使用后,一旦发现严重漏洞和缺陷,将造成不可挽回的损失。因此,对轻量级分组密码的安全性分析,无论在个人信息保护方面、理论研究方面、商用价值方面,都有着极为重要的现实意义。同时,对轻量级分组密码的安全性分析,有助于找到轻量级分组密码在设计时执行效率与安全性的平衡点,对新型分组密码的设计和分析也有着指导和借鉴意义。Biclique密码分析方法是一种有效的分组密码算法安全性分析方法。Biclique分析方法的主要思路是通过完全二分图结构来划分密钥空间并利用中间相遇攻击完成对密钥的恢复攻击。这是一种优化的穷举分析方法,对轻量级分组密码的分析也非常有效。本文主要研究使用Biclique密码分析方法对轻量级分组密码进行安全性分析。首先,本文介绍了分组密码、轻量级分组密码的相关知识,并详细介绍了Biclique分析方法的相关知识。这些为下文具体攻击的展开做了铺垫。然后,是本文的核心研究内容,对三种轻量级分组密码算法进行了全轮Biclique分析:(1)对KLEIN-96进行了全轮Biclique分析。攻击从明文方向展开,在算法前3轮构造了8维Biclique,在此基础上对第9轮的变量进行匹配并完成全轮攻击。攻击的时间复杂度为295.16,数据复杂度为23 2,存储复杂度为28。(2)对Midori64进行了全轮Biclique分析。利用相关密钥差分从明文出发,构造了Biclique结构。这个独立型Biclique结构覆盖了算法前3轮,维数为4。接着在此基础上匹配第10轮的匹配变量,通过预计算、重计算步骤完成了全轮攻击。攻击时间复杂度为2126.67,数据复杂度为23 6,存储复杂度为24。(3)对SKINNY-64-64进行了全轮Biclique分析。以首轮的相关密钥差分为起点,构造了6轮、4维的独立型Biclique。之后分前向和后向两个方向对第18轮的匹配变量进行匹配并完成全轮分析。时间复杂度为263.02,数据复杂度为24 8,存储复杂度为24。此外,通过对匹配变量进行改进,优化了对SKINNY-64-64的攻击结果。将攻击的时间复杂度降低到262.87。最后,在对三种轻量级算法完成Biclique攻击的基础上,本文概括了Biclique攻击的一些优点和缺点。并针对Biclique分析方法存在的缺点,给出了一些今后研究的方向和改进建议。这些建议将有助于提高Biclique分析的效率,也有助于拓宽该分析方法的使用场景。