差分分析
[1-2]是一种常用的分组密码分析方法,其基本思想是利用分组密码差分分布的不平衡性,构造高概率差分特征,进而恢复密钥比特。差分分析能否取得成功,关键在于所构造的差分特征概率的大小。而活动轮函数(或活动S盒)的个数决定着差分特征概率的大小,因此,活动轮函数(或活动S盒)个数的下界就成了一个重要的指标。另一方面,CLEFIA密码结构
[3-5]是一种常见的密码结构,CLEFIA算法
[5]就采用了这样的结构。围绕CLEFIA算法、CLEFIA密码结构或其变形结构,研究者们进行了深入的研究。一是对CLEFIA算法本身进行研究,主要是对该算法抵抗常见密码分析方法的能力进行评估;二是对CLEFIA密码结构或其变形结构进行研究,主要包括可证明安全性分析、扩散环节的优化设计等。文献[
6]基于CLEFIA密码结构提出一种
轮类CLEFIA密码结构,并对这种结构进行了差分分析,该结构实际上是CLEFIA密码结构的一种变形。提出一种新的类CLEFIA密码结构,并详细分析了这种结构抵抗差分分析的能力。最后,将本文的结果与文献[
6-
7]中的结果进行了比较。
1 CLEFIA和类CLEFIA密码结构
首先介绍CLEFIA密码结构和一类变形密码结构。
CLEFIA密码结构和一类变形密码结构分别如
图1和
图2所示。变形密码结构的块移位变换与CLEFIA密码结构有所不同,并且在块移位变换之后加入1个异或运算“
”:
。
下面介绍类CLEFIA密码结构。
轮类CLEFIA密码结构中,第
轮是如
图2所示的变形密码结构,其他轮都是如
图1所示的CLEFIA密码结构。
定义1[8] 设
和
为有限交换群,
,
,
,差分概率
定义为
式中,“”和“”都表示集合的基数。
定义2[9] 输入差分不为零的轮函数为活动轮函数。
定义3n轮差分特征中活动轮函数的个数称为(轮)活动指标。
引理1[7] 对轮函数都是双射的CLEFIA密码结构,
轮活动指标
。其中:
表示
除
所得的余数;
表示不小于
的最小整数。
2 类CLEFIA密码结构抵抗差分分析的安全性
在本文中,假设轮函数和都是双射。
首先,对CLEFIA密码结构(见
图1)的差分对应进行分析。为研究方便,用
表示输入或输出差分,其中,差分块
或
,
。这里,“
”表示
为零差分块,“
”表示
为非零差分块。显然非零输入差分共有15种,即
,可分别用数字表示,且差分块之间的运算分别为:“”, “”, “”, “”。这里,“”表示两个非零差分块的异或结果。事实上,两个非零差分块的值有可能相等(此时异或结果为零差分块,记为“”),也有可能不相等(这时异或的结果就为非零差分块,记为“”)。
例如,当输入差分为时,1轮差分对应为:。该差分对应是这样得到的:由轮函数和都是双射可知,输入差分块“”和“”分别经轮函数和作用后的输出差分块为“”和“”,输入差分经过轮函数和作用后的输出差分为或,再经过循环左移变换作用后的输出差分为或,故输入差分经过1轮密码结构的输出差分为或,即或6,其中轮函数是活动的。这里,差分对应表示输入差分经过轮迭代后输出差分为,且活动指标为v。
类似地,可以给出1轮CLEFIA密码结构的所有差分对应如下所示。
; ;; ; ; ; ; ; ; ; ; ; ; ; 。
由以上可得如下结论。
引理2 对1轮CLEFIA密码结构(见
图1),有:
1)活动指标;
2)活动指标为0的情形只能为
; ; ;
3)活动指标为1的情形只能为
; ; ; ;
; ; ; ;
4)活动指标为2的情形只能为
;;;
其次,对变形密码结构(如
图2)的差分对应进行分析。
引理3 对变形密码结构1轮差分对应都具有形式,且轮函数和相应的差分对应分别为和。
证明 令,,则
其中,轮函数和相应的差分对应分别为和。证毕。
由引理3知,对变形密码结构,当输入差分时,1轮差分对应为:。该差分对应是这样得到的:输入差分经过轮函数和作用后的输出差分为或,然后经过块移位变换作用后的输出差分为或,再经过“”运算后,输出差分为或,故输入差分经过1轮变形密码结构后的输出差分为或,即,其中轮函数是活动的。
类似地,可以给出1轮变形密码结构的所有差分对应,如下所示。
; ; ; ;
; ; ; ;; ; ; ; 。
1)活动指标;
2)活动指标为0的情形只能为
; ; ;
3)活动指标为1的情形只能为
; ; ; ;; ; ; ;
4)活动指标为2的情形只能为
; ; ;
。
然后,对6轮类CLEFIA密码结构的差分对应进行分析。
与引理2之前的分析方法类似,并结合引理2和引理4,可以得到6轮类CLEFIA密码结构的所有差分对应,如下所示。
由以上讨论,可得如下结论。
引理4 对6轮类CLEFIA密码结构,有:
1)活动指标;
2)活动指标为6的情形只能为
; ; ; ;; ; ; ;; ; ;; ; 。
引理5 对类CLEFIA密码结构,设最后一轮的输出差分,则18轮差分特征的活动指标,即。
证明 由引理4中的 1)知,6轮差分特征的活动,指标,从而,故只需证明中至少有1个大于6即可。以下分3种情形进行讨论。
1)时,由引理4中的 2)知,6轮差分特征的活动指标不可能恰好为6,故由知。
2)且时,由引理4中的 2)知,6轮差分特征只能为,从而,再由情形1)的证明过程知,6轮差分特征的活动指标不可能恰好为6,故由知。
3)且时,由引理4中的 2)知,6轮差分特征只能为,6轮差分特征只能为,从而,再由情形1)的证明过程知,6轮差分特征的活动指标不可能恰好为6,故由知。
由情形1)~情形3)知,中至少有1个大于6。本引理结论成立。证毕
定理1 对轮类CLEFIA密码结构,轮活动指标。其中,
证明 分以下3种情形进行讨论。
1)。这时候,由引理4中的 1)知,6轮活动指标,因此轮活动指标,即轮活动指标,本情形下定理结论成立。
2)。设类CLEFIA密码结构的轮差分特征为,其中,表示第个6轮差分特征,表示最后1轮差分特征,表示相应的活动指标。显然,上述轮活动指标为,且由引理4中的 1)知。若,则由知。若,则由引理2中的 2)知,再由引理5知,故由知,即。
3)或。这时候,由引理4中的 1)知,6轮活动指标,因此轮活动指标,再由引理2.1知,CLEFIA密码结构轮活动指标,因此轮活动指标,轮活动指标,即轮活动指标,本情形下定理结论成立。
由情形1)~情形3)知,本定理成立。证毕。
由定理1可立得定理2。
定理2 对轮类CLEFIA密码结构,设轮函数的最大差分概率为,则轮差分特征概率。其中,
事实上,对轮类CLEFIA密码结构,定理1给出的活动指标下界是可达的,即确实存在这样的差分特征,其活动指标达到了定理1给出的下界,换句话说,轮活动指标恰好为。
具体地,下述差分特征的活动指标达到了定理1给出的下界。
1)时,轮差分特征(共有)的活动指标为。
2)时,轮差分特征(共有)的活动指标为()。
3)时。若,则,1轮差分特征的活动指标为0;若,则,7轮差分特征的活动指标为6;若,则,13轮差分特征的活动指标为12。
3)时。若,则,2轮差分特征的活动指标为1;若,则轮差分特征(共有)的活动指标为。
4)时。若,则,3轮差分特征的活动指标为2;若,则轮差分特征(共有)的活动指标为。
5)时。若,则,4轮差分特征的活动指标为3;若,则轮差分特征(共有)的活动指标为。
6)
时,
轮差分特征(共有
)
的活动指标为
。最后,将本文结果与文献[
6-
7]中密码结构的相应结果进行比较,如
表1所示。
由
表1知,对于本文提出的类CLEFIA密码结构,当迭代轮数
或
时,
轮活动指标至少为
;当迭代轮数
取其他值时,
轮活动指标至少为
。与文献[
6-
7]中的密码结构相比,
轮活动指标的下界比文献[
6-
7]中的相应结果增加了1。另外,进一步分析表明,所提结构抵抗线性分析
[10]的安全性评估结果为:在轮函数都是双射的条件下,当迭代轮数
或
时,
轮活动指标至少为
;当迭代轮数
取其他值时,
轮活动指标至少为
。对线性分析而言,这里的活动指标是指输出线性逼近不为零的轮函数的个数。
3 结束语
提出一种新的类CLEFIA密码结构,并详细分析了这种结构抵抗差分分析的能力。具体地,当迭代轮数或时,轮活动指标至少为;当轮数取其他值时,轮活动指标至少为;此外,本文给出的活动指标的下界是可达的。下一步需要考虑的是这种结构抵抗其他密码分析方法的能力。