物联网中MIBS轻量级密码的唯密文故障分析

李 玮1,2,3,4 曹 珊1 谷大武2 李嘉耀1 汪梦林1 蔡天培1 石秀金1

1(东华大学计算机科学与技术学院 上海 201620) 2(上海交通大学计算机科学与工程系 上海 200240) 3(上海市可扩展计算与系统重点实验室(上海交通大学) 上海 200240) 4(上海市信息安全综合管理技术研究重点实验室(上海交通大学) 上海 200240)

摘 要 MIBS密码是在2009年的密码学和网络安全(CANS)会议上提出的一种轻量级算法,它具有较高的软硬件实现效率,并且能够抵抗差分分析、线性分析等传统密码分析方法,适合运行在资源受限,并有一定安全要求的物联网环境中.提出了一种针对MIBS密码的新型唯密文故障攻击,即利用新型双重“与”故障模型、新型Parzen-HW和Parzen-HW-MLE区分器对中间状态进行分析,进而破译MIBS密码.实验表明:该方法最少使用72个故障注入即可破译出主密钥,并且成功率不小于99%.该方法可以进一步降低故障注入数和时间,有效地提高了攻击效率.研究表明:唯密文故障攻击对MIBS密码算法的安全性造成极大的威胁,为其他轻量级密码的安全性分析提供了重要参考.

关键词 轻量级密码;MIBS;唯密文故障攻击;物联网;区分器

物联网是物物相连的网络,它通过信息传感设备,按照某种协议把任何物品接入互联网,进行信息交换和通信,以实现对物品的智能化识别、定位、跟踪、监控和管理,广泛应用于智能家居、食品安全、智能电网、智慧医疗、智能交通、精准农业、智能环保、智慧物流、智能零售和公共安全等领域中[1-5].物联网的普及为人们的工作、学习和生活带来了极大的便利,但是,与传统的网络相比,它遭受到更大的安全风险.原因在于物联网中使用的终端设备存储和计算能力有限,不能有效地使用传统的密码算法实现信息的保密性、完整性和认证性.为了保护物联网中的数据免遭截获、篡改和伪造等威胁,国内外学者设计了具有一系列功耗低、吞吐量小、执行效率高和安全性能佳的轻量级密码,包括MIBS密码、LBlock密码、Simon密码和Simeck密码等[6-9].

2009年Lzadi等学者[6]于密码学和网络安全(CANS)会议上提出了MIBS轻量级分组密码,该密码具有典型的Feistel结构,分组长度为64 b,密钥长度分为64 b和80 b,具有功耗低、存储占用小等优点,适合在资源受限的RFID设备上使用.MIBS算法可以进行抵抗差分攻击、线性攻击、不可能差分攻击、积分攻击、中间相遇攻击和碰撞攻击等分析[10-15].

在物联网环境中,RFID等设备易受到故障分析(fault analysis, FA)的攻击.1996年Boneh等学者[16-18]针对RSA密码系统首次提出故障分析,以较低的攻击代价破译了密钥,引起了国内外研究学者的广泛关注.1997年Biham等学者[18]提出了差分故障分析(differential fault analysis, DFA),并成功破译了DES密码.攻击者通过利用强磁场、电源电压毛刺、时钟毛刺、激光干扰、外界温度变化等方式对密码模块执行过程中的中间状态进行扰乱,从而获得错误的密文,并结合其他有效信息来破译主密钥.在物联网环境中,RFID等设备易受到这种攻击.

在故障攻击的实现中,基本假设至关重要,分为选择明文攻击(chosen plaintext attack, CPA)和唯密文攻击(ciphertext-only attack, COA).例如差分故障攻击、线性故障攻击、积分故障攻击、不可能差分故障攻击等的基本假设均为选择明文攻击,即攻击者可以选择获取任意明文的密文及相对应的错误密文.而仅有唯密文故障攻击的基本假设为唯密文攻击,即攻击者可以获得任意密文或错误密文.在唯密文攻击假设下,攻击者的能力最弱,一旦获得成功,将对密码系统的安全造成巨大威胁.因此,分析轻量级密码算法能否抵抗唯密文攻击假设下的故障攻击,对于物联网安全具有十分重要的意义.

目前,国内外还未有公开发表关于MIBS轻量级密码算法是否抵抗唯密文故障攻击方法的结果.本文深度剖析了MIBS密码的内部结构和运算,使用唯密文故障攻击对其进行了安全性分析,不仅实现了已有的“与”故障模型下的平方欧氏距离等7种区分器,而且提出了新型的双重“与”故障模型、新型Parzen-HW双重区分器和Parzen-HW-MLE三重区分器.结果表明,使用新型故障模型和区分器不仅提高了故障攻击效率,而且降低了故障攻击需要的故障注入数.该方法的提出,对于保护物联网等环境中的数据传输安全、增强密码系统的自主开发和分析能力,无疑都具有重要的现实意义和价值.

1 相关工作

自MIBS轻量级密码提出后,国内外研究学者相继使用差分攻击、线性攻击、不可能差分攻击、积分攻击、中间相遇攻击和碰撞攻击等传统密码分析方法对其安全性进行了分析.如表1所示,这些结果检测了MIBS密码缩减轮的安全性.

在故障攻击分析MIBS密码方面,研究学者通常使用选择明文假设下的差分故障攻击,完成破译MIBS密码全部轮.2011年王素贞等学者[19]在加密部分的最后2轮分别注入32 b故障,将密钥搜索空间降低到221.7.2018年王永娟等学者[20]基于S盒差分传播特性,在加密部分的最后一轮注入4 b故障,进而恢复最后一轮密钥的47 b,所需要的时间复杂度为217.2019年Gao等学者[21]通过计算S盒的差分分布的统计规律,在最后3轮中分别注入4 b故障,恢复主密钥的时间复杂度仅为22.本文分析了在唯密文攻击假设下,MIBS密码抵抗唯密文故障攻击的安全性.表2给出了针对MIBS算法的故障分析对比.

Table 1 Classical Cryptanalysis of MIBS
表1 针对MIBS密码的传统密码分析

TypeRoundsDataTimeReferenceCollision Attack10211.5248.32Ref [10]Integral Attack10261.67240Ref [11]Meet-in-the-middle Attack11239.65268.46Ref [12]Differential Attack13261256Ref [13]Impossible Differential Attack15252.8255.5Ref [14]Linear Attack19257.8274.23Ref [15]

Table 2 Comparison of Fault Analysis of MIBS
表2 针对MIBS算法的故障分析对比

TypeAssumptionModel∕bReferencesDFACPA4∕32Ref [19-21]CFACOA4This paper

2013年Fuhr等学者[22]首次针对AES密码提出了唯密文故障攻击方法,结合平方欧氏距离、汉明重量和极大似然估计等区分器,仅需要320,288和224个故障注入,可以恢复最后一轮密钥.2017年李玮等学者[23]将唯密文故障攻击应用在LED密码上,并新增了拟合优度区分器和拟合优度—平方欧氏距离双重区分器,用于降低所需的故障注入数.以上2种分析方法都是针对SPN结构的密码.2018年李玮等学者针对Feistel结构的LBlock轻量级密码,新增了双重区分器,提高了故障攻击的效率[24].从目前的研究可以看出,改进的唯密文故障攻击的方法均是通过优化选择单区分器和双重区分器来降低故障注入数.结合物联网环境和MIBS密码的设计特点,本文提出的唯密文故障攻击不仅增加了新型的双重区分器和三重区分器,而且构建了新型的双重“与”故障模型,进一步提高了故障导入效率,减少了故障注入数.表3总结了AES算法、LBlock算法和MIBS算法的唯密文故障攻击所需故障注入的结果对比.

Table 3 Comparison of Fault Injections to Decrypting the Last Subkey of AES, LBlock and MIBS

表3 破译AES,LBlock和MIBS密码最后一轮子密钥所需故障数对比

DistinguisherAESLBlockMIBSANDANDANDDouble ANDSEI32012410846GF11411038HW2887428MLE224927028GF-SEI708636GF-MLE909234MLE-SEI589234Parzen-HW6826Parzen-HW-MLE6424

2 MIBS算法介绍

2.1 符号说明

设明文为密文为主密钥为K,子密钥为表示级联,分别为第l轮输入的左右两块各32 b,其中l∈[1,32].

Fig. 1 The structure of MIBS
图1 MIBS算法的结构

2.2 MIBS密码简介

MIBS密码的分组长度为64 b,MIBS-64版本和MIBS-80版本分别对应密钥长度为64 b,80 b,其迭代轮数均为32轮.算法由加密、解密和密钥编排3部分组成.解密与加密相同,所使用的子密钥顺序相反.结构如图1所示:

轮函数F由子密钥加、非线性层和线性层组成,表示为

Ll+1=F(Ll,kl)⊕Rl=
PL(ML(SL(Llkl)))⊕Rl
Rl+1=Ll

其中,SL为非线性层,MLPL分别为线性层的混淆变换和置换.ML表达式为

Fig. 2 The distribution of a nibble after fault injections
图2 半字节被影响后的分布律

Ll,1=Ll,2Ll,3Ll,4Ll,5Ll,6Ll,7
Ll,2=Ll,1Ll,3Ll,4Ll,6Ll,7Ll,8
Ll,3=Ll,1Ll,2Ll,4Ll,5Ll,7Ll,8
Ll,4=Ll,1Ll,2Ll,3Ll,5Ll,6Ll,8
Ll,5=Ll,1Ll,2Ll,4Ll,5Ll,6
Ll,6=Ll,1Ll,2Ll,3Ll,6Ll,7
Ll,7=Ll,2Ll,3Ll,4Ll,7Ll,8
Ll,8=Ll,1Ll,3Ll,4Ll,5Ll,8.

MIBS的加密部分如算法1所示.

算法1. MIBS密码的加密算法.

输入:明文X、密钥K

输出:密文Y.

L1R1=X ;

② for l=1 to 32

kl=Keyschedule(K);

④ end for

⑤ for l=1 to 32

Ll+1=PL(ML(SL(Llkl)))⊕Rl;

Rl+1=Ll;

⑧ end for

Y=L33R33.

3 唯密文故障分析

3.1 基本假设和故障模型

本文使用的基本假设为唯密文攻击,即攻击者可以利用同一个密钥对多组随机明文进行加密,并在加密过程中导入任意故障,从而获得多组相对应的错误密文.

唯密文故障攻击中常使用的是“与”故障模型,在此基础上,本文构建了双重“与”故障模型,即

其中,I表示加密过程的中间状态值,表示导入故障后的错误值,∧表示按位与操作,e1e2是随机未知半字节,其中e1∈[0,15],e2∈[0,15].

图2统计了上述故障模型的半字节分布,图2(b)双重“与”模型中的半字节分布比图2(a)“与”模型中的半字节分布差异更大.

3.2 攻击步骤

针对MIBS算法,本文验证了前人提出的SEI,HW,ML,GF,GF-SEI,GF-MLE和MLE-SEI等区分器,并提出了2种新型区分器Parzen-HW和Parzen-HW-MLE用于唯密文故障分析,均可以破译MIBS算法,具体有3个步骤.

步骤1. 攻击者使用主密钥K对随机明文进行加密,迭代加密到第30轮,在右分组的任意一个半字节单元中导入随机故障,得到错误密文对随机明文重复多次故障导入得到若干错误密文.故障扩散路径和导入故障的位置相关,在不同的位置导入故障可以恢复出密钥的不同的位,本文以故障导入在右分支的第6个半字节为例,故障扩散路径如图3所示:

Fig. 3 Faulty diffusion path in the last three rounds
图3 最后3轮的故障扩散路径

步骤2. 攻击者通过逆向运算,推导出导入故障的中间状态、错误密文和子密钥之间的关系式,通过穷举部分子密钥,得到一组中间状态的猜测值,使用区分器对中间状态的分布进行统计分析,推导出最后一轮的正确子密钥.由MIBS密码的操作可知,在R30处的故障并未直接影响子密钥k30,且R32=L31,故只需利用R32k32之间的关系式得到猜测值然后对其进行统计区分从而恢复k32,即:

通过中间状态、子密钥和错误密文之间的关系式可以求出k32的第1,2,4,5,6个半字节的值,由此可推出R32k32的20位相关,依次可以求解k32的20个位.同步骤1,在第7个半字节导入故障,即可求得k32剩余12个位.

步骤3. 与步骤2类似,可以推出最后3轮所有子密钥,通过密钥编排方案即可恢复出主密钥.

3.3 区分器介绍

本文使用了9种区分器对MIBS密码进行分析,其中最后2种是本文所提出的新型区分器.

1) 平方欧氏距离区分器

平方欧氏距离(square Euclidean imbalance, SEI)区分器[22]是通过计算样本值与理论值之间的距离来估计密钥候选值为正确密钥的可能性.理论上每一个中间状态的取值都处于均匀分布,只有当候选密钥为正确的子密钥时,中间状态值会偏离均匀分布,当取最大值时,所对应的密钥猜测值为正确的子密钥:

其中,为第l轮子密钥的猜测值,为第i组密文右分支的第j个字节,的猜测值,N为故障注入的总数,表示中间状态的猜测值取值为r出现的次数.

2) 拟合优度区分器

拟合优度(goodness of fit, GF)区分器[23]是在已知样本分布率的情况下,通过计算一组样本与给定分布的拟合程度,从而找出正确的子密钥.图2给出了“与”、双重“与”故障模型下的理论分布.样本与已知分布率的拟合相似度越大,即误差越小,所对应的密钥候选值为正确子密钥的可能性越大,因此当GF取值最小时,所对应的密钥猜测值为正确子密钥:


其中,#{i|=r}表示中间状态的猜测值为r出现的次数,#{i|=r}表示在检验假设的条件下每个中间状态理论值为r的个数.

3) 汉明重量区分器

汉明重量(Hamming weight, HW)区分器[22]是计算中间状态和等长非零字符串的汉明距离,导入故障后会打破中间状态0,1的平衡,

其中,N为故障注入的总数,hw()表示中间状态的汉明重量.当汉明重量取值最小时,该组样本对应的密钥为正确子密钥.

4) 极大似然估计区分器

极大似然估计(maximum likelihood estimate, MLE)区分器[22]是通过利用观察到的样本信息,反推最具有可能出现此样本结果的模型参数值.通过建立似然函数,计算每一组中间状态理论应该出现概率的乘积:

其中,表示第i组错误密文的第j个字节的错误中间状态,表示每一个错误中间状态的取值对应的理论概率.当使MLE取值最大时,所属样本对应的密钥候选值即为正确的子密钥.

5) 拟合优度——平方欧氏距离区分器

拟合优度——平方欧氏距离(GF-SEI)区分器[23]先利用拟合优度算法过滤一部分明显不符合理论分布的样本所对应的密钥候选值,再利用平方欧氏距离进一步计算选择出最优的样本.该区分器的使用可以提高攻击效率,减少需要的故障注入数:

其中,表示精度为α分布上侧分位数表中查询的临界值,α的精度可以适当调整.当时,该密钥猜测值对应的中间状态不符合已知分布,因此该密钥猜测值将被筛选掉,接着使用继续过滤剩下的密钥候选值,当密钥候选值使得取最小值且取最大值时,该密钥猜测值即为正确的子密钥.

6) 拟合优度—极大似然估计区分器

拟合优度—极大似然估计(GF-MLE)区分器[24]先利用GF区分器挑选出与理论分布最接近的部分密钥候选值,再使用MLE区分器计算挑选出来的样本对应的概率,达到减少故障注入数和提高攻击效率的目的:

时,该密钥猜测值对应的中间状态不符合已知分布,因此该密钥猜测值被剔除,然后,当达到最大值时,所对应的密钥猜测值即为正确的子密钥.

7) 极大似然估计—平方欧氏距离区分器

极大似然估计—平方欧氏距离(MLE-SEI)区分器[24]先利用MLE区分器筛选出密钥候选值,再计算出这些值对应样本的平方欧氏距离,从而达到减少故障注入数:

其中,θ表示给定的一个概率标准.当达到最大值时,所对应密钥猜测值即为正确的子密钥.

8) 窗估计—汉明重量区分器

窗估计—汉明重量(Parzen-HW)区分器是本文提出的一种新型双重复合区分器.Parzen窗估计是一种无参估计,由于Parzen区分器不需要假设数据分布,所以具有通用性的优点,但是要准确地估计窗函数需要大量的样本,因此使用Parzen区分器理论上需要更多的故障注入.通过结合HW区分器可以有效地避免上述问题,具体方法为先利用Parzen方法过滤大部分密钥候选值,然后再使用HW方法作精确筛选:

其中,f(u)为概率密度函数,表示以为中心长度为h的区域内的样本数,N为故障注入总数.当达到最小值时,对应的密钥候选值即为正确的子密钥.

9) 窗估计—汉明重量—极大似然估计区分器

现有的区分器均为单区分器和双重区分器,本文提出的窗估计—汉明重量—极大似然估计(Parzen-HW-MLE)区分器是一种新型的三重区分器,有效地发挥了3种单区分器的优点,进一步提高了攻击效率,减少故障注入数.首先,攻击者构造窗函数,使用Parzen过滤大量密钥候选值

然后,结合汉明重量区分器进一步筛选:

其中,μ代表一个标准值,当时,会筛选掉较多密钥候选值;最后,攻击者利用MLE区分器进一步筛选剩余的候选密钥值,当MLE取最大值时,所对应的密钥候选值为正确的子密钥.

4 唯密文故障破译MIBS密码的实验分析

实验使用的PC配置为Intel Core I5-4200M,实验平台为Eclipse.使用Java编程语言软件模拟攻击环境.本文共进行了1 000次实验,均以超过 99%的成功概率破译MIBS-64版本和MIBS-80版本的密钥.附录A列出了实验所有数据.

图4(a)(b)表示在“与”、双重“与”故障模型下,所有区分器恢复子密钥的20 b所需要的成功概率和所需故障注入数的关系,其中横坐标表示故障注入数,纵坐标表示攻击成功率.不同颜色表示SEI,GF,HW,MLE,GF-SEI,GF-MLE,MLE-SEI,Parzen-HW和Parzen-HW-MLE等区分器的变化趋势.最终每一种区分器恢复子密钥的成功概率不小于99%.因而,在“与”、双重“与”故障模型下,攻击者恢复出最后一轮子密钥最少需要的故障注入为64个、24个,破译主密钥最少需要的故障注入为192个、72个.由表3可知,新型区分器Parzen-HW和Parzen-HW-MLE所需的故障注入数均较少.

图5(a)(b)表示在“与”、双重“与”故障模型下,使用所有区分器恢复子密钥20 b需要消耗的时间堆积图和故障注入数的关系.其中,横坐标表示故障注入数,纵坐标表示需要消耗的时间堆积,不同颜色线条分别代表各区分器.图6表示在相同区分器中,“与”、双重“与”故障模型下恢复出子密钥的平均时间对比图.其中,横坐标表示区分器,纵坐标表示时间,不同色块分别代表各故障模型.由图5和图6可知,SEI区分器和GF区分器所耗时间最多.和原有的“与”故障模型相比,双重“与”故障模型下各区分器需要的时间都大幅度减少.

Fig. 4 Comparison of success probability of recovering 20 b in two fault models
图4 2种故障模型下恢复出20 b的成功率对比

Fig. 5 Comparison of time of recovering 20 b using two fault models
图5 2种不同故障模型下恢复20 b所需的时间对比

Fig. 6 Comparison of average time of recovering 20 b
图6 恢复20 b所需的平均时间对比

在双重“与”故障模型中,所有区分器可以以较短时间和较少故障注入破译子密钥.并且,双重区分器Parzen-HW和三重区分器Parzen-HW-MLE在故障注入和时间消耗上均少于原有的区分器,因而,使用新型故障模型和新型区分器有效地提升了提高了故障攻击的效率,降低故障注入数和攻击时间.

5 结束语

本文提出并讨论了MIBS密码算法抵抗唯密文故障攻击的安全性.仿真结果表明:以MIBS密码为代表的Feistel结构密码算法易受到唯密文故障分析的威胁,在新型双重“与”故障模型下,新型Parzen-HW二重区分器和Parzen-HW-MLE三重区分器可以以较少的故障注入数、较低的时间花费破译MIBS密码,该方法的提出优化了唯密文故障攻击方法的效率和性能,为物联网中轻量级密码算法的安全性分析提供了参考.

参考文献

[1]Zamanifar A, Nazemi E. An approach for predicting health status in IoT health care[J]. Journal of Network and Computer Applications, 2014, 134(15): 100-113

[2]García M I, González L F. Collaboration of smart IoT devices exemplified with smart cupboards[J]. IEEE Access, 2019, 7(1): 9881-9892

[3]Muangprathub J, Boonnam N, Kajornkasirat S, et al. IoT and agriculture data analysis for smart farm[J]. Computers and Electronics in Agriculture, 2019, 156(1): 467-474

[4]Gope P, Sikdar B. Lightweight and privacy-preserving two-factor authentication scheme for IoT devices[J]. IEEE Internet of Things Journal, 2019, 6(1): 580-589

[5]Tiburski R T, Moratelli C R, Filho S J, et al. Lightweight security architecture based on embedded virtualization and trust mechanisms for IoT edge devices[J]. IEEE Communications Magazine, 2019, 57(2): 67-73

[6]Lzadi M, Sadeghiyan B, Sadeghian S S, et al. MIBS: A new lightweight block cipher[C] Proc of the 8th Int Conf on Cryptology and Network Security. Berlin: Springer, 2009: 334-348

[7]Wu Wenling, Zhang Lei. LBlock: A lightweight block cipher[C] Proc of the 9th Int Conf on Applied Cryptography and Network Security. Berlin: Springer, 2011: 327-344

[8]Beaulieu R, Shors D, Smith J, et al. The SIMON and SPECK families of lightweight block ciphers[J]. IACR Cryptology ePrint Archive, 2013, 2013(1): 404-449

[9]Yang Gangqiang, Zhu Bo, Suder V, et al. The simeck family of lightweight block ciphers[C] Proc of the 17th Int Workshop on Cryptographic Hardware and Embedded Systems. Berlin: Springer, 2015: 307-329

[10]Duan Danqing, Wei Hongru. Collision attack on MIBS algorithm[J]. Computer Science, 2018, 45(2): 222-225 (in Chinese)

(段丹青, 卫宏儒. 对MIBS算法的碰撞攻击[J]. 计算机科学, 2018, 45(2): 222-225)

[11]Yu Xiaoli, Wu Wenlin, Li Yanjun. Integral attack of reduced-round MIBS block cipher[J]. Journal of Computer Research and Development, 2013, 50(10): 2117-2125 (in Chinese)

(于晓丽, 吴文玲, 李艳俊. 低轮MIBS分组密码的积分分析[J]. 计算机研究与发展, 2013, 50(10): 2117-2125)

[12]Liu Chao, Liao Fucheng, Wei Hongru. Intermediate encounter attack on MIBS algorithm[J]. Journal of Inner Mongolia University: Natural Science Edition, 2013, 44(3): 308-315 (in Chinese)

(刘超, 廖福成, 卫宏儒. 对MIBS算法的中间相遇攻击[J]. 内蒙古大学学报: 自然科学版, 2013, 44(3): 308-315)

[13]Bay A, Nakahara J, Vaudenay S. Cryptanalysis of reduced-round MIBS block cipher[C] Proc of the 9th Int Conf on Cryptology and Network Security. Berlin: Springer, 2010: 1-19

[14]Cheng Lu, Xu Peng, Wei Yuechuan. New related-key impossible differential attack on MIBS-80[C] Proc of the 8th Int Conf on Intelligent Networking and Collaborative Systems. Piscataway, NJ: IEEE, 2016: 203-206

[15]Bay A, Huang Jialin, Vaudenay S. Improved linear cryptanalysis of reduced-round MIBS[C] Proc of the 9th Int Conf on Advances in Information and Computer Security. Berlin: Springer, 2014: 204-220

[16]Boneh D, Demillo R A, Lipton R J. On the importance of checking cryptographic protocols for faults[C] Proc of the 16th Int Conf on the Theory and Applications of Cryptographic Techniques. Berlin: Springer, 1997: 37-51

[17]Boneh D, Lipton R J. On the importance of eliminating errors in cryptographic computations[J]. Journal of Cryptology, 2001, 14(2): 101-119

[18]Biham E, Shamir A. Differential fault analysis of secret key cryptosystems[C] Proc of the 17th Annual Int Cryptology Conf on Advances in Cryptology. Berlin: Springer, 1997: 513-525

[19]Wang Suzhen, Zhao Xinjie, Wang Tao, et al. Differential fault attack on block cipher MIBS[J]. Computer Science, 2011, 38(4): 122-124 (in Chinese)

(王素贞, 赵新杰, 王韬, 等. 针对MIBS的宽度差分故障分析[J]. 计算机科学, 2011, 38(4): 122-124)

[20]Wang Yongjuan, Zhang Shiyi, Wang Tao, et al. Differential fault attack on block cipher MIBS[J]. Journal of University of Electronic Science and Technology of China, 2018, 47(4): 601-605 (in Chinese)

(王永娟, 张诗怡, 王涛, 等. 对MIBS分组密码的差分故障攻击[J]. 电子科技大学学报, 2018, 47(4): 601-605)

[21]Gao Yang, Wang Yongjuan, Yuan Qingjun, et al. Probabilistic analysis of differential fault attack on MIBS[J]. IEICE Transactions on Information & Systems, 2019, 102(2): 299-306

[22]Fuhr T, Jaulmes E, Lomné V, et al. Fault attacks on AES with faulty ciphertexts only[C] Proc of the 8th Int Workshop on Fault Diagnosis and Tolerance in Cryptography. Piscataway, NJ: IEEE, 2013: 108-118

[23]Li Wei, Ge Chenyu, Gu Dawu, et al. Research on the LED lightweight cipher against the statistical fault analysis in Internet of things[J]. Journal of Computer Research and Development, 2017, 54(10): 2205-2214 (in Chinese)

(李玮, 葛晨雨, 谷大武, 等. 物联网环境中LED轻量级密码算法的统计故障分析研究[J]. 计算机研究与发展, 2017, 54(10): 2205-2214)

[24]Li Wei, Wu Yixin, Gu Dawu, et al. Ciphertext-only fault analysis of the LBlock lightweight cipher [J]. Journal of Computer Research and Development, 2018, 55(10): 2174-2184 (in Chinese)

(李玮, 吴益鑫, 谷大武, 等. LBlock轻量级密码算法的唯密文故障分析[J]. 计算机研究与发展, 2018, 55(10): 2174-2184)

附录A. 唯密文故障分析MIBS密码的实验数据及结果.

明文:随机生成.

MIBS-64版本主密钥:0123456789ABCDEF.

MIBS -80版本主密钥:0123456789ABCDEF0123.

结果表明:各区分器均能恢复主密钥,数据如表A1和表A2所示.

Table A1 Success Probability of Breaking MIBS Using AND/Double AND Fault Model for Different Distinguishers
表A1 “与”模型双重“与”模型下不同区分器破译MIBS密码的成功率 %

#Fault InjectionsSEIGFHWMLEGF-SEIGF-MLEMLE-SEIParzen-HWParzen-HW-MLE00∕00∕00∕00∕00∕00∕00∕00∕00∕010∕00∕00∕00∕00∕00∕00∕00∕00∕020∕00∕00∕00∕00∕00∕00∕00∕00∕030∕00∕00∕00∕00∕00∕00∕00∕01∕040∕00∕92∕130∕120∕130∕112∕101∕181∕1950∕40∕191∕170∕171∕50∕190∕132∕191∕2060∕21∕212∕251∕266∕260∕101∕202∕174∕2570∕91∕71∕283∕401∕213∕261∕323∕317∕3681∕130∕143∕434∕500∕251∕381∕304∕482∕5191∕204∕241∕524∕541∕373∕323∕385∕566∕60101∕252∕285∕727∕674∕501∕487∕556∕669∕74111∕282∕5010∕818∕643∕480∕595∕578∕8515∕84121∕322∕6310∕863∕811∕604∕697∕629∕8814∕89131∕440∕6917∕8811∕834∕583∕734∕8110∕8714∕90144∕490∕6516∕889∕878∕705∕805∕7716∕9415∕95153∕533∕7728∕9419∕956∕815∕7712∕8520∕9831∕99163∕602∕7723∕9729∕9712∕836∕8913∕8728∕9930∕99173∕771∕7229∕9827∕9910∕9310∕9419∕9427∕9931∕100186∕762∕8126∕9932∕9918∕9414∕9114∕9430∕10041∕100193∕794∕8143∕9942∕10022∕9613∕9625∕9442∕10039∕100205∕821∕9037∕10040∕10017∕9015∕9819∕9843∕10050∕100216∕876∕9345∕10051∕10020∕9718∕9819∕9850∕10052∕1002210∕924∕9254∕10052∕10018∕9820∕10032∕9951∕10051∕100239∕9311∕9463∕10056∕10027∕9932∕10028∕9955∕10064∕1002412∕967∕9962∕10062∕10029∕9919∕10040∕10063∕10064∕1002515∕9813∕9962∕10066∕10036∕9922∕9932∕10067∕10067∕1002613∕9715∕9969∕10063∕10038∕9929∕10046∕10069∕10074∕1002726∕9811∕9969∕10073∕10049∕9933∕10053∕10070∕10075∕1002820∕9820∕9980∕10064∕10036∕9941∕10044∕10078∕10078∕1002919∕9915∕9975∕10074∕10046∕9938∕10056∕10079∕10084∕1003019∕9912∕9973∕10076∕10063∕9937∕10064∕10080∕10083∕1003122∕9923∕9989∕10082∕10065∕9945∕10064∕10089∕10090∕1003239∕9926∕9987∕10086∕10069∕9946∕10060∕10090∕10091∕1003329∕10030∕9987∕10094∕10059∕9954∕10063∕10095∕10094∕100

Continued (Table A1) %

#Fault InjectionsSEIGFHWMLEGF-SEIGF-MLEMLE-SEIParzen-HWParzen-HW-MLE3436∕10031∕9986∕10094∕10074∕9952∕10072∕10094∕10094∕1003536∕10035∕9990∕10092∕10076∕10073∕10072∕10093∕10094∕1003632∕10041∕9991∕10093∕10068∕10066∕10076∕10094∕10095∕1003742∕10038∕9994∕10094∕10079∕10081∕10075∕10096∕10097∕1003846∕10050∕9996∕10095∕10078∕10072∕10075∕10096∕10098∕1003945∕10047∕9996∕10095∕10084∕10076∕10088∕10097∕10099∕1004049∕10051∕9995∕10090∕10084∕10068∕10080∕10097∕10099∕1004158∕10051∕9993∕10096∕10087∕10084∕10082∕10098∕10099∕1004256∕10061∕10098∕10096∕10092∕10082∕10091∕10099∕100100∕1004350∕10054∕9995∕10093∕10090∕10087∕10089∕10099∕100100∕1004459∕10064∕9998∕10099∕10092∕10084∕10089∕10099∕100100∕1004568∕10054∕10098∕10099∕10095∕10090∕10092∕10099∕100100∕1004671∕10069∕10099∕10099∕10096∕10087∕10093∕10099∕100100∕1004773∕10077∕100100∕10099∕10093∕10097∕10095∕100100∕100100∕1004873∕10075∕100100∕10099∕10094∕10096∕10090∕100100∕100100∕1004973∕10077∕100100∕10099∕10090∕10090∕10092∕10099∕100100∕1005082∕10073∕100100∕10099∕10096∕10095∕10093∕10099∕100100∕1005173∕10080∕100100∕10099∕10094∕10096∕10098∕100100∕100100∕1005276∕10076∕100100∕10099∕10098∕10098∕10095∕100100∕100100∕1005384∕10083∕100100∕10099∕10096∕10095∕10093∕100100∕100100∕1005486∕10083∕100100∕10099∕10099∕10098∕10096∕100100∕100100∕1005581∕10079∕100100∕10099∕10099∕10095∕10097∕100100∕100100∕1005685∕10087∕100100∕10099∕10099∕10097∕10095∕100100∕100100∕1005790∕10085∕100100∕100100∕10099∕10098∕10099∕100100∕100100∕1005890∕10089∕100100∕100100∕10099∕10094∕10099∕100100∕100100∕1005984∕10091∕100100∕100100∕10099∕10099∕10099∕100100∕100100∕1006092∕10086∕100100∕100100∕10099∕10099∕10099∕100100∕100100∕1006189∕10093∕100100∕100100∕10099∕10099∕10099∕100100∕100100∕1006288∕10092∕100100∕100100∕10099∕10099∕10099∕100100∕100100∕1006389∕10092∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1006491∕10094∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1006595∕10098∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1006695∕10097∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1006799∕10095∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1006899∕10099∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1006999∕10099∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕1007099∕10099∕100100∕100100∕10099∕100100∕100100∕100100∕100100∕100

Table A2 Time in Breaking MIBS Using ANDDouble AND Fault Model for Different Distinguishers
表A2 “与”模型双重“与”模型下不同区分器破译MIBS需要的时间 min

#Fault InjectionsSEIGFHWMLEGF-SEIGF-MLEMLE-SEIParzen-HWParzen-HW-MLE00.00∕0.000.00∕0.000.00∕0.000.00∕0.000.00∕0.000.00∕0.000.00∕0.000.00∕0.000.00∕0.0010.86∕0.361.22∕0.500.75∕0.390.70∕0.331.67∕0.860.70∕0.680.41∕0.440.63∕0.550.65∕0.6421.13∕0.491.48∕0.630.99∕0.490.92∕0.441.83∕0.870.87∕0.830.64∕0.650.91∕0.690.80∕0.7831.44∕0.661.78∕0.801.25∕0.611.13∕0.562.08∕0.980.96∕0.980.69∕0.761.23∕0.950.99∕0.9541.60∕0.761.98∕0.921.66∕0.781.57∕0.722.33∕1.151.08∕1.100.84∕0.921.41∕1.171.20∕1.1451.97∕0.952.15∕1.132.07∕0.951.86∕0.862.55∕1.391.24∕1.290.98∕1.051.72∕1.391.40∕1.3462.14∕1.112.37∕1.292.20∕1.112.01∕1.042.67∕1.501.39∕1.471.13∕1.211.91∕1.601.64∕1.5372.34∕1.242.55∕1.432.76∕1.252.54∕1.163.02∕1.671.54∕1.641.28∕1.392.21∕1.851.83∕1.7782.45∕1.322.80∕1.573.22∕1.412.92∕1.313.15∕1.751.70∕1.771.52∕1.532.41∕2.071.97∕1.8892.75∕1.533.24∕1.843.56∕1.563.22∕1.453.58∕1.891.84∕2.011.58∕1.702.64∕2.222.20∕2.09102.97∕1.683.40∕2.003.84∕1.743.55∕1.593.70∕2.031.99∕2.172.71∕1.852.95∕2.452.40∕2.27113.18∕1.853.61∕2.183.96∕1.893.63∕1.743.83∕2.152.15∕2.372.89∕2.043.09∕2.652.60∕2.46123.44∕1.953.80∕2.323.75∕2.063.49∕1.894.00∕2.252.28∕2.522.99∕2.173.35∕2.892.83∕2.68133.65∕2.174.07∕2.564.34∕2.233.99∕2.044.24∕2.412.43∕2.723.17∕2.363.6∕3.172.99∕2.85144.02∕2.274.40∕2.744.67∕2.394.39∕2.204.51∕2.512.56∕2.933.30∕2.513.82∕3.323.23∕3.04154.09∕2.444.62∕2.934.98∕2.554.57∕2.324.71∕2.643.22∕3.143.45∕2.704.06∕3.583.45∕3.24164.19∕2.444.78∕3.094.92∕2.694.50∕2.454.86∕2.733.84∕3.403.58∕2.864.30∕3.823.62∕3.44174.69∕2.705.08∕3.315.12∕2.844.66∕2.595.12∕2.864.02∕3.613.76∕3.014.56∕3.953.80∕3.61184.68∕2.845.35∕3.475.82∕3.015.39∕2.745.35∕3.004.12∕3.823.89∕3.214.79∕4.244.02∕3.81194.90∕3.045.56∕3.726.22∕3.195.66∕2.92 5.53∕3.164.27∕3.994.05∕3.365.00∕4.274.21∕3.99205.10∕3.145.39∕3.856.19∕3.325.66∕3.045.35∕3.254.44∕4.174.19∕3.525.25∕4.524.45∕4.18215.33∕3.305.57∕3.996.47∕3.495.92∕3.205.50∕3.384.57∕4.304.35∕3.695.48∕4.784.60∕4.35225.56∕3.435.75∕4.096.96∕3.646.43∕3.335.70∕3.514.72∕4.474.47∕3.855.70∕5.054.79∕4.55235.81∕3.615.95∕4.297.20∕3.796.69∕3.485.92∕3.634.87∕4.524.64∕3.955.95∕5.245.00∕4.76246.23∕3.736.18∕4.477.27∕3.966.74∕3.626.08∕3.775.03∕4.844.78∕4.206.18∕5.565.27∕4.97256.27∕3.896.43∕4.626.98∕4.136.47∕3.776.28∕3.915.17∕4.984.94∕4.356.44∕5.765.41∕5.21266.35∕3.996.66∕4.647.27∕4.266.73∕3.916.49∕4.015.33∕5.075.08∕4.546.65∕5.945.61∕5.37276.52∕4.166.85∕4.877.56∕4.456.92∕4.076.70∕4.175.45∕5.295.23∕4.696.95∕6.095.79∕5.54286.76∕4.257.04∕5.007.83∕4.577.19∕4.186.87∕4.285.62∕5.415.41∕4.907.14∕6.386.01∕5.74296.95∕4.427.27∕5.148.04∕4.757.42∕4.367.10∕4.435.72∕5.575.52∕5.067.38∕6.596.21∕5.89307.18∕4.597.48∕5.408.34∕4.927.65∕4.507.31∕4.575.88∕5.745.67∕5.217.61∕6.786.41∕6.13317.41∕4.767.72∕5.528.60∕5.127.91∕4.697.48∕4.776.01∕5.875.81∕5.397.84∕6.756.59∕6.29327.47∕4.767.92∕5.618.79∕5.248.21∕4.807.70∕4.856.20∕5.985.98∕5.568.07∕7.076.80∕6.55337.79∕4.988.08∕5.679.33∕5.398.56∕4.947.88∕4.976.35∕6.156.12∕5.718.30∕7.187.02∕6.68348.02∕5.238.30∕6.0110.00∕5.559.28∕5.078.12∕5.146.49∕6.306.28∕5.888.60∕7.397.20∕6.85358.22∕5.288.53∕5.9710.63∕5.749.76∕5.248.29∕5.276.64∕6.466.40∕6.158.78∕7.597.38∕6.99368.42∕5.478.74∕6.3311.03∕5.8410.12∕5.348.51∕5.386.76∕6.696.55∕6.339.01∕7.807.60∕7.26378.62∕5.608.96∕6.3211.32∕6.0410.50∕5.518.74∕5.516.90∕6.736.70∕6.459.23∕7.947.79∕7.42388.97∕5.719.16∕6.5511.16∕6.1910.26∕5.658.94∕5.667.08∕7.286.87∕6.699.51∕9.868.01∕7.61

Continued (Table A2) min

#Fault InjectionsSEIGFHWMLEGF-SEIGF-MLEMLE-SEIParzen-HWParzen-HW-MLE399.11∕5.899.40∕6.7312.02∕6.4011.11∕5.849.17∕5.837.21∕7.137.03∕6.719.75∕8.878.20∕7.82409.30∕6.109.59∕7.0711.15∕6.5610.29∕6.009.36∕5.997.37∕7.377.17∕6.999.95∕8.638.44∕8.09419.53∕6.179.79∕6.9911.27∕6.6710.39∕6.109.58∕6.067.44∕7.557.26∕7.1410.19∕8.708.59∕8.21429.74∕6.3310.03∕7.2210.44∕6.839.64∕6.249.81∕6.237.64∕7.747.44∕7.3110.41∕9.128.78∕8.434310.01∕6.3910.22∕7.3710.59∕6.969.75∕6.369.97∕6.317.73∕7.757.55∕7.4610.64∕9.139.01∕8.664410.17∕6.5810.48∕7.3710.82∕7.139.99∕6.5110.20∕6.487.91∕7.997.73∕7.6510.89∕9.409.23∕8.774510.39∕6.7010.66∕7.5011.06∕7.3010.13∕6.6710.42∕6.618.05∕8.047.86∕7.7611.26∕9.579.40∕9.034610.72∕6.8310.87∕7.6411.28∕7.4510.40∕6.8010.58∕6.768.21∕8.268.04∕7.9711.36∕9.779.66∕9.144710.78∕6.9511.13∕7.8011.50∕7.6310.64∕6.9810.82∕6.898.33∕8.558.16∕8.1311.58∕9.979.81∕9.304810.99∕7.1011.27∕7.8811.68∕7.7410.86∕7.1111.02∕7.018.53∕8.558.35∕8.2911.81∕10.2610.01∕9.554911.27∕7.2711.49∕8.1411.93∕7.9111.05∕7.2411.23∕7.178.61∕8.918.44∕8.4712.05∕10.4710.20∕9.805011.52∕7.3911.74∕8.1412.40∕8.0911.42∕7.3911.47∕7.308.77∕8.878.63∕8.6212.28∕10.6710.44∕9.945111.69∕7.5511.88∕8.3812.58∕8.2511.62∕7.5311.66∕7.458.91∕9.218.75∕8.8312.52∕10.8110.61∕10.125211.90∕7.6412.17∕8.3712.82∕8.4111.86∕7.6711.89∕7.629.09∕8.988.94∕8.9212.75∕11.1210.78∕10.275312.16∕7.8412.34∕8.6513.02∕8.5511.99∕7.8112.10∕7.749.21∕9.429.04∕9.1212.98∕11.2311.00∕10.575412.28∕7.9412.52∕8.6513.09∕8.8012.13∕8.0612.29∕7.939.34∕9.339.18∕9.2113.42∕11.4811.22∕10.695512.50∕8.0512.75∕8.7513.34∕8.8812.32∕8.1012.53∕8.019.51∕9.789.35∕9.4513.52∕11.6711.41∕10.955612.69∕8.1812.98∕8.9213.61∕9.0512.52∕8.2712.74∕8.209.65∕9.619.50∕9.5213.89∕14.2611.64∕10.995712.90∕8.3713.15∕9.0813.90∕9.2112.79∕8.4212.91∕8.339.71∕9.9410.60∕9.8013.96∕12.0311.86∕11.245814.11∕8.4613.41∕9.2314.08∕9.3713.01∕8.5813.17∕8.469.88∕9.8710.77∕9.8214.16∕12.2812.00∕11.365915.59∕8.6514.00∕9.3414.29∕9.5113.23∕8.6713.72∕8.6010.10∕10.2810.99∕10.1114.37∕12.4712.38∕11.526015.99∕8.7814.03∕9.8941.08∕9.6813.54∕8.8513.78∕8.7210.17∕10.3210.06∕10.1814.61∕12.7212.59∕11.716116.43∕8.8814.12∕9.7915.11∕9.8714.02∕9.0313.87∕8.8810.33∕10.4810.21∕10.4214.91∕13.1913.09∕11.906216.50∕9.0414.36∕10.0014.81∕10.0013.64∕9.1714.08∕8.9810.51∕10.6310.39∕10.5015.13∕13.1212.87∕12.136315.33∕9.2014.86∕9.9315.06∕10.1613.92∕9.2714.55∕9.1810.67∕10.7710.54∕10.7315.35∕13.3513.06∕12.306414.64∕9.2014.81∕10.2815.25∕10.3414.07∕9.4214.52∕9.2510.75∕10.7810.61∕10.8315.56∕13.5613.19∕12.416515.90∕9.5314.97∕10.6515.52∕10.5014.32∕9.5614.69∕9.4310.99∕11.0710.86∕10.9315.81∕13.9413.53∕12.706617.23∕9.6815.37∕10.5815.99∕10.6914.64∕9.7315.12∕9.5711.02∕11.1610.93∕11.0716.02∕13.8113.59∕12.786717.35∕9.8115.74∕10.7815.98∕10.8014.73∕9.8415.41∕9.7011.20∕11.4111.11∕11.3316.25∕14.3313.80∕13.166821.43∕10.0015.96∕10.8316.21∕11.0214.93∕10.0215.52∕9.8611.30∕11.4011.23∕11.3916.49∕14.2314.28∕13.266921.37∕10.0916.03∕10.8919.53∕11.1917.92∕10.1815.78∕10.0211.53∕11.7011.45∕11.6216.74∕14.7314.20∕13.417020.00∕10.2016.03∕10.9819.91∕11.3318.36∕10.3015.76∕10.1211.58∕11.8211.50∕11.8116.95∕14.8314.38∕13.55

Ciphertext-Only Fault Analysis of the MIBS Lightweight Cryptosystem in the Internet of Things

Li Wei1,2,3,4, Cao Shan1, Gu Dawu2, Li Jiayao1, Wang Menglin1, Cai Tianpei1, and Shi Xiujin1

1(School of Computer Science and Technology, Donghua University, Shanghai 201620) 2(Department of Computer Science and Engineering, Shanghai Jiao Tong University, Shanghai 200240) 3(Shanghai Key Laboratory of Scalable Computing and Systems (Shanghai Jiao Tong University), Shanghai 200240) 4(Shanghai Key Laboratory of Integrate Administration Technologies for Information Security (Shanghai Jiao Tong University), Shanghai 200240)

Abstract The lightweight cryptosystem MIBS was proposed at the CANS conference in 2009. It has high efficiency in both hardware implementation and software implementation. MIBS can resist against classical cryptanalysis, such as differential analysis and linear analysis, etc. It is suitable for the resource-limited devices in the Internet of things. This paper proposes new ciphertext-only fault analysis of the MIBS cryptosystem. The attackers can apply a new fault model of Double AND and two novel distinguishers of Parzen-HW and Parzen-HW-MLE to break MIBS. The experiments only require at least 72 fault injections to recover the secret key with a success probability of no less than 99%. The method can further reduce fault injections and time, and effectively improve the attacking efficiency. It shows that the ciphertext-only fault analysis poses a serious threaten to the security of MIBS. The research also provides an important reference for the security analysis of other lightweight cryptosystems.

Key words lightweight cryptosystem; MIBS; ciphertext-only fault analysis; Internet of things; distinguisher

(liwei.cs.cn@gmail.com)

中图法分类号 TP309.7

收稿日期20190612;修回日期:20190801

基金项目国家自然科学基金项目(61772129);国家密码发展基金项目(MMJJ20180101);上海市可扩展计算与系统重点实验室开放课题;上海市信息安全综合管理技术研究重点实验室开放课题(AGK201703);上海市青年科技英才扬帆计划(17YF1405500);东华大学研究生创新基金项目(GSIF-DH-M-2019013)

This work was supported by the National Natural Science Foundation of China (61772129), the National Cryptography Development Fund (MMJJ20180101), the Open Fund of Shanghai Key Laboratory of Scalable Computing and Systems, the Open Fund of Shanghai Key Laboratory of Integrated Administration Technologies for Information Security (AGK201703), the Shanghai Sailing Program (17YF1405500), and the Graduate Student Innovation Fund of Donghua University (GSIF-DH-M-2019013).

通信作者石秀金(sxj@dhu.edu.cn)

Li Wei, born in 1980. PhD, professor and PhD supervisor. Senior member of CCF. Her main research interests include the design and analysis of symmetric ciphers.

Cao Shan, born in 1995. Master candidate. Her main research interests include security analysis of lightweight ciphers.

Gu Dawu, born in 1970. PhD, professor and PhD supervisor. His main research interests include cryptology and computer security.

Li Jiayao, born in 1996. Master candidate. His main research interests include security analysis of symmetric ciphers.

Wang Menglin, born in 1998. Master candidate. Her main research interests include security analysis of symmetric ciphers.

Cai Tianpei, born in 1996. Master candidate. His main research interests include security analysis of lightweight block ciphers.

Shi Xiujin, born in 1975. PhD, associate professor. His main research interests include security analysis of the Internet of things.