APP下载

轻量级加密算法mCrypton的不可能差分分析

2017-09-18李悦朱光亚甘楠王高丽

智能计算机与应用 2017年4期

李悦++朱光亚 甘楠 王高丽

摘要: 物联网和RFID等设备的普及给密码学提出了新的要求,为了能够在资源受限的传感节点上实施通信保护和隐私保护,大量轻量级加密算法被提出。mCrypton是明文分组长度为64 bit的轻量级分组密码算法,共有3种可用密钥长度:64 bit、96 bit和128 bit。本文提出了针对mCrypton-96的4轮mCrypton不可能差分路径和7轮mCrypton的不可能差分分析,同时利用了mCryption 的S盒性质和密钥生成算法的弱点对不可能差分分析进行了改进,实验结果表明和传统的差分分析相比,本文提出的不可能差分分析方法降低了攻擊的时间复杂度和数据复杂度。

关键词: 不可能差分分析; 分组密码算法; 密码算法分析; mCrypton

中图分类号:TP309

文献标志码:A

文章编号:2095-2163(2017)04-0017-04

0引言

作为当今首要流行的信息保护手段,分组密码算法的应用范围也日趋广泛,同时随着无线传感器网络、物联网和RFID的高度普及,当这些轻量级硬件需要对安全通信和数据提供保护时就会使用轻量级加密算法,近年来则已陆续推出众多的轻量级加密算法,诸如:mCrypton、SIMON、LED、Zorro、mCrypton、PRESENT、Piccolo、Klein、XTEA、DESL、HIGHT、CLEFIA、Twine、KATAN 和 KTANTAN等。在此基础上,也有更多的专家学者转而致力于展开了对轻量级分组密码的分析方法的研发设计。除了经典的差分分析,中间相遇攻击、不可能差分分析、积分分析、相关密钥攻击、滑动攻击和零线性相关分析也开始纷纷应用在各种轻量级分组密码算法上。本文的分析目标是mCrypton算法,该算法是由Lim等人在2006年提出的一个适用于RFID和小型传感器节点的轻量级分组密码算法[1],这是一个分组长度为64 bit的分组密码算法,根据密钥长度的分类有3种版本:64 bits、96 bits和128 bits,而将其应用在硬件条件受限制的情况时,可以根据具体场景选择合适的密钥长度。例如在RFID的应用中,因其对读写速度和信息加解密速度呈现出极高要求,即需依据硬件条件选取一种具有最佳适应性的版本。另需提及,对mCrypton的研究成果可参见文献[2-7]。

不可能差分攻击是差分攻击的变种之一。研究可知,与经典的差分分析利用高概率差分来恢复密钥的情况相反,不可能差分攻击是利用排除那些导致概率为0的差分出现的密钥,重点是基于正确的密钥加密后的密文不会出现这样的差分。这一理论是由Knudsen和Biham分别论述并先后提出的[8-9],Knudsen在对DEAL的算法进行安全性分析时,发现该算法存在天然的5轮不可能差分,从而对6轮DEAL算法的安全造成威胁。1999年,Biham等人在研究Skipjack算法时提出了不可能差分这个概念[10],在其中解释了如何采用中间相遇攻击寻找不可能差分。轻量级分组密码出现之后,不可能差分攻击对该类算法的分析研究也取得了一系列成果进展,例如王庆菊等人在2014年利用不可能差分分析成功地实现了对SIMON32和SIMON48的攻击[11]。文献[12]中,Yukiyasu等人使用不可能差分分析探讨了CLEFIA算法。文献[13]中运用不可能差分分析对LBlock、SIMON、CLEFIA和Camellia算法获得了满意的研究效果。

综上论述可知,本文参考4轮AES不可能差分路径和7轮AES不可能差分分析攻击,研究提出了4轮mCrypton的不可能差分路径和7轮mCrypton不可能差分分析,并使用S盒性质和mCrypton的密钥生成算法的弱点,最终得出的时间复杂度为257次7轮mCrypton加密,空间复杂度为249.3个字节,数据复杂度为254.3个明文。endprint