对HIGHT密码改进的代数故障攻击

2018-03-27 03:41马云飞王晓晗
小型微型计算机系统 2018年3期
关键词:密文密钥成功率

陈 浩,王 韬,周 平,周 林,马云飞,王晓晗

1(解放军军械工程学院 信息工程系,石家庄 050003) 2(车船军代局驻长沙地区军代室,长沙 410101)

1 引 言

故障攻击是一种利用密码实现所依附的物理设备平台在外界强电流、高电压、强辐射等手段干扰下可能出现的寄存器故障或运算错误来恢复密钥的攻击方法,最早由Boneh等[1]于1996年提出,并成功用于基于CRT实现的RSA签名算法.随后,Biham和Shamir[2]将故障攻击和差分分析的思想相结合,提出差分故障分析,并成功地攻击了DES算法.此后研究者将攻击对象扩展至ECC等[3]其他公钥密码,LED[4],PRESENT[5]等分组密码,MICKEY[6],Trivium[7]等序列密码.然而,传统的差分故障分析方法在某些攻击场景下存在一些不足,当故障传播特征复杂、故障差分不易确定、分析的密码算法采用复杂非线性部件时,传统的差分故障分析依赖手工故障传播分析,难度较大.如果能将分析过程转化为某类问题并将其自动化实现,则有望弥补传统差分故障分析的不足[8].

在eSmart 2010会议上,N.Courtois等首次将代数攻击和故障攻击相结合起来,提出了代数故障分析方法,将分析过程转化为代数方程组的自动构建和求解问题,并成功用于DES,仅需穷举24位密钥并在加密13轮注入1bit故障即可恢复全部密钥信息.此后攻击对象趋于多样化,已扩展至LED[9],PRESENT[10],Piccolo[11]等分组密码,Trivium[12]等序列密码.同传统差分故障分析相比,代数故障攻击能够充分利用故障攻击中泄露出来的故障信息,具有攻击通用性强、方程可自动化求解的优点,为密码分析提供了一种新的自动化、通用化分析手段.

HIGHT算法[13]是一种典型的轻量级分组密码,设计时采用ARX结构(是一种由模2n加运算、循环移位运算、异或运算按照一定顺序组成的密码结构),执行效率高,非常适合在微型设备中使用,其安全性研究具有重要意义,自2006年提出以来密码界对其安全性开展了一系列研究.

文献[14]采用面向字节的故障模型,对HIGHT密码提出一种差分故障攻击方法,通过穷举4字节白化密钥,并分别在密码倒数第3轮和倒数第4轮共注入约32个故障可恢复HIGHT 全部128 bit 密钥信息.但由于文献[14]采用的是传统故障分析方法,分析过程繁琐,故障信息利用率低,所需故障样本量较大,导致攻击方法有效性和通用性不强.文献[15]对HIGHT密码提出一种代数故障分析方法,将文献[14]的手工分析方法转化代数方程组自动构建和求解问题,成功将攻击扩展至加密倒数第6轮,将攻击所需故障次数由32次减小为15次(最好情况下仅需9次).利用不同变量注入故障所产生的故障密文不同来确定故障位置,但当故障注入深度大于6时,注入到中间变量xr,2m的故障均会使所有的密文输出产生错误,此时文献[15]确定故障具体位置的方法失效.

本文对HIGHT密码提出一种改进的代数故障分析方法,将攻击成功扩展至密码加密第25轮,并从理论角度分析且给出了攻击所需故障注入次数和成功率.在密码第25轮加密注入单字节随机故障下,5次故障注入可在143.70s内恢复全部主密钥信息,最好情况下仅需4次即能以成功率90%,在551.26s内恢复全部主密钥信息.此外,本文还对密码加密26轮、27轮和加密进行了攻击,恢复全部主密钥信息的故障注入次数分别为7次、11次和23次,实际成功率分别为90.86%,89.83%和87.48%,与理论分析基本一致.与现有HIGHT故障攻击相比,文中所需的故障注入次数是最小的.

2 HIGHT算法

2.1 符号说明

-⊕,A<<

-′:注入故障之后密码的内部状态或输出;

-#S:有限集合S的势;

-P,C:64比特明文和密文;

-MK=MK15‖…MK1‖MK0:16字节主密钥;

-WKi:白化密钥WKi,0≤i≤7;

-SKk:轮子密钥,0≤k≤127;

-Xr=xr,7‖…xr,1‖xr,0:密码第r加密的80比特输入变量,1≤r≤32;

2.2 HIGHT加密过程

本节对HIGHT算法进行简单介绍,其完整描述可参见文献[13].HIGHT是一个32轮迭代轻量级分组密码算法,其分组长度和密钥长度分别为64 和128 位,设计时采用广义Feistel结构,轮函数没有使用S盒,只采用ARX操作.HIGHT密码算法由密钥扩展、初始变换、轮加密、末轮变换4个子过程构成:

密钥扩展.密钥扩展算法使用主密钥MK按照式(1)和式(2)生成初始变换和末变换使用的8字节的白化密钥WKi(0≤i≤7)和每轮加密使用的4字节子密钥SKi(0≤i≤127):

WKi=MKi+12(i= 0,1,2,3)

(1)

WKi=MKi-4(i= 4,5,6,7)

(2)

(3)

(4)

初始变换.明文P根据式(5)(6),经初始变换成加密首轮的输入X0:

X0,4=P4⨁WK2;X0,5=P5;

(5)

X0,6=P6⊕WK3;X0,7=P7

(6)

轮加密函数.算法执行32轮加密运算,将第i(0≤i≤31)轮输出Xi按照式(7)~(14)转换成第i+1轮输入Xi+1.

(7)

Xi+1,1=Xi,0

(8)

(9)

Xi+1,3=Xi,2

(10)

(11)

Xi+1,5=Xi,4

(12)

(13)

Xi+1,7=Xi,6

(14)

每轮加密使用两个线性函数F0和F1,如式(15)(16)所示:

F0(x)=x<<<1⊕x<<<2⊕x<<<7

(15)

F1(x)=x<<<3⊕x<<<4⊕x<<<6

(16)

末轮变换.算法在执行完32轮加密运算后,将X32根据式(17)经末变换转换成密文C:

(17)

3 HIGHT改进代数故障分析

3.1 故障模型设定

本节采用面向单字节的随机故障模型,如图1所示,其基本假设如下:

攻击者能够借助低成本故障注入技术(如,时钟毛刺,亏电效应、电压峰值等[16])向HIGHT算法加密r(0≤r≤32)轮加密注入单字节随机故障,但故障的具体值和具体位置均未知.此外,攻击者能够选择被加密的明文,并且获取同一个密钥作用下的正确密文和错误密文.由下页图1可知,当攻击者向HIGHT第25轮加密注入单字节随机故障时,故障传播特征非常复杂,很难应用传统差分分析方法进行密钥分析.同时,由于产生的密文输出全部发生错误,很难利用文献[15]中的方法对故障位置和差分信息进行确定和表示.

3.2 故障传播特性分析

性质1.假设攻击者向密码r轮第α个中间变量注入随机单字节故障,定义集合:

为故障传播过程中第n轮受影响的中间变量,则有下列结论成立,其中0≤m≤3:

1)#Φ(r,α)r=1;

图1 故障模型Fig.1 Fault model

证明:对于结论①,由图1可知,显然成立.

对于结论②,不失一般性,假设攻击者向密码r轮xr,α注入一个单字节故障,则有:

i)当α=2m时,如图2所示,可知下一轮故障将向xr+1,2(m+1)和xr+1,2m+1两个中间状态变量扩散,所以有#Φ(r,2m)r+1=#Φ(r,2m)r+1.

图2 故障位置为xr,2mFig.2 Faultwasinjectedinxr,2m图3 故障位置为xr,2m+1Fig.3 Faultwasinjectedinxr,2m+1

ii)当α=2m+1时,如图3所示,可知下一轮故障将仅向xr,2(m+1)一个中间状态变量扩散,所以有#Φ(r,2m+1)r+1=#Φ(r,2m+1)r.

对于结论③,由结论②证明过程可知,故障位置为xr,2m的故障在下一轮传播过程中会扩散到xr+1,2(m+1)和xr+1,2m+1,故障位置为xr,2m+1的故障在下一轮扩散中会扩散到xr+1,2(m+1),因此当故障没有影响第n轮全部8字节中间变量时,如图1所示,显然有#Φ(r,α)n+1=#Φ(r,α)n+1,n>r.反之,则有#Φ(r,α)n+1=#Φ(r,α)n=8,所以结论③成立.证毕.

3.3 HIGHT改进代数故障分析思想

由性质1证明过程可知,当故障注入轮r=25时,注入到xr,2m的故障会导致所有的密文输出产生错误,注入到xr,2m+1的故障会使8字节密文输出中的7个字节密文输出产生错误,此时如果按照文献[15]的方法很难确定故障的具体位置,但根据错误密文输出个数显然可以区分故障是注入在xr,2m还是xr,2m+1,根据这个特点利用性质1,可以将故障信息表示成代数方程组(构造方法和详细过程见4.3节),并且在构造代数方程组时仅需知道故障是注入在xr,2m还是xr,2m+1,而无需知道故障的具体位置,因此与文献[15]相比较,改进之后的新方法可将攻击轮扩展至r=25.

此外,由于改进之后的新方法在故障信息表示过程中,不依赖于故障具体传播路径,因此改进之后的新方法具有更强的通用性.

3.4 攻击基本过程

HIGHT改进的代数故障攻击步骤如下:

1)密码算法等效代数方程组构建.首先选择明文P和初始密钥K,运行HIGHT密码算法得到正确的密文输出C,并构建密码等效代数方程组;

2)故障注入及利用.保持(P,K)不变,运行实现密码算法的密码芯片并设定故障注入样本,利用低成本故障注入技术向密码芯片注入故障,产生错误的密文输出C,并将故障和错误密文表示成代数方程组;

3)代数方程组求解.使用解析器CryptoMinisat解析器对上面两步构建代数方程组进行求解恢复密钥信息;

4 HIGHT改进代数故障攻击过程详述

4.1 密码等效代数方程组构建

HIGHT密码等效代数方程组构建过程中,关键是构造ARX、F0(·)、F1(·)、密钥扩散、轮函数、末变换等线性和非线性组件在比特层面的等效代数方程组,下面具体给出构建方法.

4.1.1 模2n加运算代数方程组构建

定义X,Y,Z∈GF(2n),X=(xn-1,xn-2,…,x0),Y=(yn-1,yn-2,…,y0),Z=(zn-1,zn-2,…,z0),x0,y0,z0分别表示X,Y,Z的最低位,则GF(2n)上的模2n加运算可表示为:

(18)

4.1.2F0(·)和F1(·)运算代数方程组构建

定义X=(x7,x6,…,x0),Y=(y7,y6,…,y0) 分别为函数F0(·) 和F1(·)的输入及输出,则F0(·) 和F1(·) 分别可表示成GF(2)域上的代数方程数(*) and (*′):

(19)

4.1.3 密钥扩展方案代数方程组构建

HIGHT密钥扩展方案可以表示成如下代数方程组,其中Cj和Dj,0≤j≤8,均为8比特变量.

for(i=0;i<7;i++)

for(j=0;j<7;j++)

for(k=0;k<8;k++)

end

end

for(j=0;j<7;j++)

(20)

for(k=0;k<8;k++)

end

end

end

4.1.4 轮函数代数方程组构建

HIGHT算法 32 轮加密可以表示成如下GF(2)域上的代数方程组,其中Ei,Fi,Gi,Hi,0≤i≤8,均为8比特变量:

for(i=0;i<31;i++)

for(k=0;k<8;k++)

end

end

for(i=31;i<32;i++)

for(k=0;k<8;k++)

end

end

(21)

4.1.5 末轮变化代数方程组构建

for(k=0;k<8;k++)

end

(22)

4.2 故障信息表示

本节将提出一种新的故障信息表示方法,该方法适用于故障具体位置未知场景,并能够将攻击方法扩展至密码第25轮加密.

Zr=Zr,7‖…Zr,1‖Zr,0,1≤r≤32

(23)

(24)

其中μk=0 表示Zi,k为故障注入字节.

此外,使用HW(μ),0≤HW(μ)≤8,来表示变量μ的汉明重.为将故障差分信息表示为代数方程组,引入一个四比特变量Y=(y3…y0)来表征HW(μ),计算关系式如下:

(25)

由上述分析,假设攻击者向密码r轮第α个中间变量注入一个随机故障,由2.3节故障传播特性性质1可知:

i)当注入故障索引α=2m时,有下列等式成立:

HW(μ)n=n-r+1,r≤n≤32

(26)

ii)当故障索引α=2m+1时,有下列等式成立:

(27)

因此在这种情况下,可以使用n-r个代数方程组来表示故障信息.

4.3 代数方程组求解

本文选取CryptoMinisat解析器对构建的代数方程组进行求解.该解析器采用基于可满足性问题SAT的代数方程组求解策略,具有高效、不受方程组次数约束的特点,能够较好的解决代数方程组构建过程中的布尔切割问题.在实际攻击中需首先将HIGHT密码和故障信息表示成布尔代数方程组并将代数方程组线性化,然后将线性化的代数方程组转化为符合CryptoMinisat输入格式的文本文件,以命令行方式调用crypt.exe进行自动求解,有关CryptoMinisat解析器的使用方法可见参看文献[15].

4.4 攻击复杂度分析

由于本文提出的改进代数故障攻击的复杂度主要由故障注入次数构成,因此本节主要从理论角度对故障注入次数N进行评估.

本质上,故障分析方法主要利用密码算法正确/错误密文输出同故障传播过程中涉及到的相关密钥关系进行密钥破解[8].因此,当且仅当注入的故障在传播过程中涉及到全部的主密钥信息MK时,攻击者才能恢复所有主密钥信息MK.

为了叙述方便,使用下列表达式

(28)

表示由A通过关系式(*)推导出B.定义集合Ωr,i表示中间变量xr,i能够推导出的主密钥集合:

Ωr,i={MKω|xr,i→MKω,1≤r≤32,0≤ω≤15,0≤i≤7}

显然,由HIGHT密码末变换可知,有下列推断成立:

(29)

由密码密钥扩展方案可知,有下列推断成立:

(30)

(31)

(32)

由式(29)~式(32)可得:

(33)

此外,由轮加密函数可知,对每个64比特的中间变量

Xr=xr,7‖…xr,1‖xr,0,1≤r≤31,有:

(34)

由式(34)可推断得到:

Ω25,2m=MK,0≤m≤3

Ω25,2m+1MK,0≤m≤3

所以攻击者对HIGHT密码第25轮加密进行攻击时,注入的随机故障中只要有一个位于xr,2m,故障在传播中将会涉及全部主密钥信息.由于故障注入过程是完全随机的,故障注入到xr,2m和xr,2m+1的概率Pr(α=2m)= Pr(α=2m+1)=1/2,因此注入的故障在传播过程中覆盖所有密钥信息的概率Pr(Ω=MK)可计算为:

所以理论上,当故障注入总数N=5时,Pr(Ω=MK)→1攻击者可以恢复全部主密钥信息MK.此外,当攻击者对加密第26轮,27轮和28轮进行攻击时,由文献[15]可知,恢复全部密钥信息MK故障所需的故障注入总数分别为N=7,N=11和N=23时(如表1所示).

4.5 攻击成功率分析

本节首先给出故障碰撞的定义.

定义1.如图4所示,假设攻击者同时向中间变量xr,2m和xr,2m+2注入单字节随机故障β1和β2.当故障传播至加密第r+2轮时,故障值Δ3和Δ2同时作用于中间变量xr+2,2m+3,且有HW(Δxr+2,2m+3)=φ,则将故障传播过程中多个故障值同时作用于某个中间变量的现象称为故障碰撞.

图4 故障碰撞示意图Fig.4 Schematic diagram of fault collision

由故障碰撞定义可知,当φ=0时,Δxr+2,2m+3=0,故障值Δ3和Δ2相互抵消,产生的概率为:

当故障相互抵消时,会导致HW(μ)n的值发生变化,从而导致表示故障信息的代数方程组在构建过程中出现错误,最终导致攻击失败.

假设攻击者向密码r轮中间变量注入单字节随机故障,故障注入位置为α,攻击设定的故障样本为N,其中发生在奇数索引(α=2m+1,0≤m≤3)和偶数索引(α=2m)的故障在传播过程中发生故障碰撞的次数分别为s和w,则注入一个故障时攻击的成功率为:

Pr[n=1]=Pr[α=2m](1-Pr(φ=0))s+Pr[α=2m+1]

(35)

因为攻击设定的故障样本为N,则攻击的成功率为:

Pr[n=N]=(Pr[n=1])N

(36)

此外,分析图2可知,当攻击者对密码第25轮加密进行攻击,且故障注入位置为x25,2m(0≤m≤3)时,故障碰撞次数为9次,当{①,②,③,④,⑤,⑥,⑦,⑧,⑨},但由于①和②,②和③,③和⑥,⑤和⑦,⑥和⑧均不同发生,因此故障碰撞之后相互抵消的可能项数为5次.同理,当故障注入位置为x25,2m+1时,故障碰撞点为6个,故障碰撞之后相互抵消的可能次数为4次,因此根据公式(36)可得攻击成功率为Pr(N=5)=91.6%,同理可分析对26轮,27轮和28轮攻击的成功率如表1所示.

表1 攻击所需故障注入总数和成功率
Table 1 #fault injections and success rate of the attack

攻击轮理论故障注入个数理论攻击成功率25591.6%26790.86%271189.83%282387.48%

5 攻击实验及分析比较

在普通PC上(CPU为Intel(R),Core(TM) i7-4790 3.20GHz,内存4G,Windows 7 32位操作系统),使用C++编程语言软件模拟实现随机单字节故障注入过程,使用CryptoMinisat 4.4解析器进行求解(详细使用方法见文献[15]).为规范攻击成功率,当解析器求解方程时间大于3600s、输出多个解或“UNSATISFIABLE”,视为攻击失败.

5.1 HIGHT改进的代数故障攻击实例

下面以攻击加密第25轮攻击为例,给出HIGHT改进代数故障攻击实例:

1)随机产生明文P=0x0F1416050A00070C,并使用主密钥MK=0x00112233445566778899AABBCCDDEEFF对明文进行加密,产生密文C=0x00F418AED94F03F2,并使用4.1节的方法构建正确加密时密码完整的等效代数方程组;

2)向HIGHT密码第25轮加密任意位置注入单字节的随机故障,并设定故障样本数N=5.在分析故障传播特征的基础上,利用4.2节方法将故障信息用代数方程组表示出来;

3)将构建密码和故障信息的代数方程组并转化SAT字句,使用CryptoMinisat 4.4解析器对构建的代数方程组进行求解,求解结果为K=(1111111111101110110111011100110 010111011101010101001100110001000011101110110011001010 1010100010000110011001000100001000100000000)2,转化为16进制与MK相同,攻击成功,耗时25.14 s.

攻击中,我们一共进行了100组攻击仿真实验,分别随机生成了100组不同的三元组(Pn,MKn,Cn)(1≤n≤100),且均设定故障样本量为N=5,攻击实验具体结果如图5所示.由图5可知,在100组攻击样本中,成功样本为91个,失败样本9个(其中求解时间超过3600s的样本为0个,解析器输出“UNSATISFIABLE”的样本为9个),所以攻击实际成功率为91%,略低于4.5节理论值.在91个成功样本中,解析器平均求解时间为143.70s.

图5 攻击轮为第25轮,故障样本N=5的攻击结果Fig.5 Result of the attack on 25-th round,N=5

本文针对密码25轮加密,还在不同故障样本量下进行了仿真实验,对每个故障样本N各进行100组仿真实验,实验结果如图6所示.由图可知,攻击的实际成功率始终维持在91%左右,比理论值91.6%略小.当故障样本小于等于3时,攻击成功率为0%.当故障样本N小于等于12时,解析器平均价求解时间基本趋于稳定,其值在4.84s上下浮动.最好情况下,仅需4个故障样本即可恢复全部主密钥信息MK,解析器平均求解时间为551.26s.

图6 不同故障样本量下,对密码25轮攻击结果Fig.6 Result of the attack on 25-th round under differ ent N

此外,本文还对密码第26轮、第27轮、28轮加密各进行了100次攻击实验,设定的故障样本分别为7、11和23,实验结果如表2所示.

5.2 实验结果分析

对上述实验结果进行分析可以得出以下3个结论:

1)攻击的实际成功率始终略小于理论分析值.可能的原因是,在攻击实验中的故障注入是通过软件模拟实现的,很难实现故障位置完全等概率分布,因此在实际攻击中故障注入次数应略大于理论注入次数,这就直接导致攻击实际成功率略小于理论分析值;

表2 密码26轮和27轮攻击成功率
Table 2 Success rate of the attack on round 26 and round 27

攻击轮成功次数成功率268989%(≤理论值90.86%)278686%(≤理论值89.83%)288484%(≤理论值87.48%)

2)攻击针对密码同一轮加密进行攻击时,故障样本越大,解析器求解时间基本趋向减小.原因是故障样本越多,构建的代数方程组包含密钥信息和未知中间变量的信息就越多,解析器求解速度也就相对越小.由于CryptoMinisat解析器在求解代数方程组时的时间抖动性较大,虽然本文在进行实验仿真时,进行大量重复实验,对求解时间取平均值,但仍然无法完全消除求解时间的抖动性,这就解释了为什么会出现故障样本N越大,求解时间越小的个别现象.

3)与文献[15]相比,本文提出的新方法能将攻击延伸至密码加密第25轮,且本文提出的方法在构建故障信息时不依赖故障具体的传播路径,通用性和有效性较好,与现有故障攻击相比,所需的故障注入次数是最小的.

6 结 语

本文对HIGHT提出一种改进的代数故障攻击,与文献[15]相比,提出的新方法能够将攻击延伸至密码加密第25轮,且方法具有较好的通用性.下一步研究的方向主要着眼于提高攻击方法的有效性和实用性:一是,针对故障碰撞开展相应的容错处理研究;二是,研究更加高效的故障信息表示方法,进一步提高攻击的有效性和实用性.

[1] Boneh D,DeMillo R A,Lipton R J.On the importance of checking cryptographic protocols for faults[C].Proceedings of the EUROCRYPT 1997,LNCS,1233,1997:37-51.

[2] Biham E,Shamir A.Differential fault analysis of secret key cryptosystems[C].Proceedings of the CRYPTO 1997,LNCS,1997,1294:513-525.

[3] Biehl I,Mwyer B,Muller V.Differential fault analysis on elliptic curve cryptosystems[C].Proceedings of the CRYPTO 2000,Santa Barbara,California,LNCS 1880,2000:131-146.

[4] Li Wei,Gu Da-wu,Zhao Chen,et al.Security analysis of the LED lightweight cipher in the internet of things[J].Chinese Journal of Computers,2012,35(3):434-445.

[5] Li Jun-ru,Gu Da-wu.Differential fault analysis on PRESENT[C].China CRYPT 2009,2009:3-13.

[6] Banik S,Maitra S.A differential fault attack on MICKEY 2.0[EB/OL].Cryptology ePrint Archive,http://eprint.iacr.org/2013/166,2013.

[7] Hu Yu-pu,Zhang Feng-rong,Zhang Yi-wei.Hard fault analysis of trivium[J].Des.Codes Cryptogr,2012,62(3):289-311.

[8] Guo Shi-ze,Wang Tao,Zhao Xin-jie.Principles and methodologies of side-channel analysis in cryptography [M].Beijing:Science Press,2014.

[9] Zhang Fan,Zhao Xin-jie,Guo Shi-ze,et al.Improved algebraic fault analysis:a case study on piccolo and applications to other lightweight block ciphers[C].Proceedings of COSADE 2013,LNCS,7864:62-79.

[10] Wu Ke-hui,Zhao Xin-jie,Wang Tao,et al.Algebraic fault attack on PRESENT[J].Journal on Communications,2012,33(8):85-92.

[11] Zhao Xin-jie,Guo Shi-ze,Wang Tao,et al.Research of algebraic fault analysis on Piccolo[J].Chinese Journal of Computer,2013,36(4):882-894.

[12] Mohamed M S E,Bulygin S,Bchmann J.Using SAT solving to improve differential fault analysis of trivium[J].International Journal of Security and Its Applications,2012,6(1):29-38.

[13] Hong D,Sung J,Hong S,et al.HIGHT:a new block cipher suitable for low-resource device[C].Proceedings of CHES,LNCS,4249,2006:46-59.

[14] Fan Wei-jie,Wu Wen-ling,Zhang Lei.Differential fault analysis on HIGHT[J].Journal of Graduate University of Chinese Academy of Sciences,2012,29(2):271-276.

[15] Chen Hao,Wang Tao,Zhang Fan,et al.Algebraic fault analysis of HIGHT[J].Journal of Shanghai Jiaotong University,2015,49(12):1817-1825.

[16] Tunstall M.Fault analysis in cryptography[M].Beijing:Science Press,2015:239-253.

附中文参考文献:

[4] 李 玮,谷大武,赵 辰,等.物联网环境下LED轻量级密码算法的安全性分析[J].计算机学报,2012,35(3):434-445.

[5] 李卷孺,谷大武.PRESENT算法的差分故障攻击[C].中国密码学会2009年会,2009:3-13.

[8] 郭世泽,王 韬,赵新杰.密码旁路分析原理与方法[M].北京:科学出版社,2014.

[10] 吴克辉,赵新杰,王 韬,等.PRESENT密码代数故障攻击[J].通信学报,2012,33(8):85-92.

[11] 赵新杰,郭世泽,王 韬,等.Piccolo 密码代数故障分析研究[J].计算机学报,2013,36(4):882-894.

[14] 范伟杰,吴文玲,张 蕾.HIGHT算法的差分故障攻击[J].中国科学院研究生院学报,2012,29(2):271-276.

[15] 陈 浩,王 韬,张 帆,等.HIGHT密码代数故障分析[J].上海交通大学学报(自然科学版),2015,49(12):1817-1825.

[16] Marc J.密码故障分析与防护[M].北京:科学出版社,2015:239-253.

猜你喜欢
密文密钥成功率
成功率100%,一颗玻璃珠入水,瓶子终于坐不住了!
成功率超70%!一张冬棚赚40万~50万元,罗氏沼虾今年将有多火?
一种支持动态更新的可排名密文搜索方案
幻中邂逅之金色密钥
幻中邂逅之金色密钥
基于模糊数学的通信网络密文信息差错恢复
支持多跳的多策略属性基全同态短密文加密方案
如何提高试管婴儿成功率
密码系统中密钥的状态与保护*
密钥共享下跨用户密文数据去重挖掘方法*