摘要:
SMS4是我国政府公布的第一个商用分组密码,用于无线局域网产品的安全保护。该算法的分组长度和密钥长度均为128 比特,加密和密钥扩展算法都采用32 轮的非平衡广义Feistel 结构。自2006年公布之后,SMS4分组密码引起了国内外学术界和产业界的极大关注,先后有学者研究了SMS4对差分故障攻击、积分攻击、不可能差分密码分析、代数攻击、矩阵攻击、差分密码分析、线性密码分析等分析方法的安全性,其中对最好的分析结果是欧洲学者和我国学者分别给出的22轮线性密码分析和差分密码分析,它们所基于的区分器分别是线性偏差为2
-56.2的18轮线性逼近和概率为2
-114的18轮差分特征。
差分密码分析是迄今已知的攻击迭代密码最有效的方法之一,其基本思想是通过分析明文对的差值对密文对的差值的影响来恢复某些密钥比特,差分密码分析成功的关键技术是高概率差分特征的构造或搜索。本文通过研究和分析SMS4分组密码的非平衡广义Feistel结构特点和轮函数的扩散性质,给出了6轮、7轮和12轮轮函数的输入差分和输出差分之间的关系,利用这些关系给出了19轮SMS4分组密码的一类有效差分特征。最后利用这些19轮差分特征,结合一些分析技巧,给出了23轮SMS4分组密码的差分分析算法,这是目前为止对SMS4分组密码最好的分析结果。
由于差分特征的概率和差分活跃S盒的数目以及S盒最大差分概率密切相关,为了得到19轮SMS4分组密码的高概率差分特征,本文研究了SMS4轮函数输入和输出差分之间的关系,给出并证明了5轮和6轮SMS4轮函数输入和输出差分之间关系的3个定理和1个推论,并根据这些定理和推论,给出了SMS4分组密码算法连续6、7和12轮最少活跃S盒个数的下确界及其对应的差分路线和概率。通过将7轮和12轮最小活跃S盒相应的差分活跃模式进行连接,得到了19轮至少有18个活跃S盒的差分活跃模式。利用该模式进一步构造了1个概率为2
-124的19轮差分特征、254个概率为2
-125的19轮差分特征和(2
7-1)
2-255个概率为2
-126的19轮差分特征。利用这些19轮差分特征,本文给出了对23轮SMS4分组密码的差分攻击,攻击的数据复杂度是2
118,时间复杂度是2
126.7。该分析算法对全轮SMS4分组密码的安全性不能构成威胁,但对SMS4分组密码的安全性评估有重要的意义,提升了差分密码分析对SMS4分组密码的分析深度,推进了对SMS4分组密码的安全性研究进展。