物联网中MIBS轻量级密码的唯密故障研究
2020-10-09陈培基
陈培基
摘要:本文对物联网中MIBS轻量级密码的唯密故障分析展开了实验研究,结果表明,双重区分器、三重区分器能够达到更好的增强故障攻击效率的效果,促使密钥破译中故障注入数量以及攻击时间明显下降,即唯密文故障攻击会降低物联网中MIBS轻量级密码的使用安全。
关键词:物联网;MIBS轻量级密码;唯密故障
中图分类号:TP393文献标识码:A
文章编号:1009-3044(2020)18-0055-02
开放科学(资源服务)标识码(0SID):
当前,物联网得到普及性应用,为人们的工作、生活提供了更便捷的条件。但是,相比于传统网络来说,物联网无法有效使用传统的密码算法进行信息保护,因此面对的安全风险就更高。其中,MIBS轻量级密码的使用就能够避免上述问题,为了最大程度保障物理网安全,对该密码是否能够抵抗唯密故障攻击展开分析具有极高的现实价值。
1 MIBS轻量级密码的概述
MIBS轻量级密码的长度在64b,迭代轮数为32轮,相应算法中主要包含加密、密钥编排、解密三大部分[1]。其中,加密与解密部分的操作基本相同,区别在于子密钥的使用顺序呈现出相反的状态。
2 MIBS轻量级密码唯密故障分析的主要内容
2.1 基本假设与故障模型
(1)基本假设
在本次MIBS轻量级密码唯密故障分析中,使用的基本假定为唯密文攻击,具体有:设定攻击者可以在同一密钥的支持下,对多组随机明文落实加密处理,结合故障导人以获取多组错误密文。
2.2 故障分析步驟
为了确保实验分析结果的科学性与有效性,在本次研究中,不仅引入了前人研究中提出的区分器,同时,对三重区分器和双重区分器这两种新型区分器在唯密文故障分析中的应用效果展开了分析,具体的故障分析步骤如下所示:
第一,在主密钥的支持下,随机选择明文展开加密处理;在迭代加密至30轮的情况下,在右分组内选择任意一个半字节单元,并在其中完成故障的导人,以此落实错误密文的构建。需要注意的是,故障的导人位置与故障扩散途径之间存在着相对紧密的联系,即在导入故障位置不同的情况下,可以在后期恢复出密钥的不同位。
第二,在逆向计算的支持下,可以对完成故障导人后的错误密文、中间状态以及子密钥之间存在的逻辑关系展开整理与推测;此时引入一部分子密钥,可以实现某一组中间状态猜测值的确定;在区分器的支持下,可以实现中间状态分布情况的确定,并在此基础上展开最后一轮正确密钥的确定。在MIBS算法中,R30处的故障(迭代加密至30轮后导入故障)不会对相应子密钥造成直接性影响,且R32与L31相等。所以,依托R32与y、k32之间的关系表达式,就能够完成猜测值R32的估计,并联合统计区分实现k32的恢复。此时,可以列出的表达式为:R32=P(ML(SL(R 33 ○k32》)○L 33。根据相应关系式,能够完成k32的1-6个半字节的值的计算,并推导出R32与k32的20位相关,实现k32中20个位的计算。重复上一步操作,即在第七个半字节中实施故障导人,由此获取k32其余12位。
第三,该步骤的操作与前一步骤操作基本相似,最终实现所有子密钥的分析与确定;此时,参考密钥编排方案,达到恢复主密钥的效果。
2.3 区分器
结合上文能够了解到,在本次MIBS轻量级密码唯密故障分析中,为了保证分析结果的科学准确与有效性,主要使用了9种区分器(包含7种前人研究中提出的区分器以及两种新型区分器)。
2.3.1 平方欧氏距离区分器
该区分器在进行正确密钥的确定中,主要通过判断密钥候选值为正确密钥的概率完成。因此,在应用实践中,需要计算样本值与理论值之间的距离。理论上,所有的中间状态取值均表现出均匀分布的状态,若是中间状态取值偏离均匀分布,则意味着相应密钥候选值为正确密钥。通常情况下,在SEI(k1)取最大值的条件下,所对应的密钥候选值为正确密钥。
2.3.2 拟合优度区分器
在使用该区分器展开正确密钥的获取时,必须要保证样本分布率为已知条件。在实践中,若样本与给定分布率之间的拟合相似度最大时,相应密钥候选值即可判定为正确密钥。
2.3. 3汉明重量区分器
该区分器在应用中主要计算了中间状态与等长非零字符串之间的汉明距离。实践中,若是汉明重量的取值为最小值时,则可以判定相应密钥候选值为正确密钥。
2.3.4极大似然估计区分器
该区分器依托对样本信息的观察,反推出可能出现相应样本结果的模型参数值。结合理论上所有中间值状态出现概率的乘积(似然函数),可以完成正确密钥的推断。实践中,若是极大似然估计值达到最大,即可判定相应密钥候选值为正确密钥。
2.3.5 拟合优度一平方欧氏距离区分器
该区分器先使用拟合优度算法剔除部分样本,避免不符合理论分布的样本对正确密钥的确定产生干扰。然后,结合平方欧氏距离计算,实现最优样本的获取。较于上述两种区分器,该区分器能够促使攻击效率增高,并降低故障注入数。在具体的计算与实践中,若密钥候选值GF(k1)达到最小且SEI(k1)达到最大时,即可判定相应密钥候选值为正确密钥。
2.3.6 拟合优度一极大似然估计区分器
该区分器先使用拟合优度算法,实现与理论分布接近程度更高的密钥候选值的挑选,然后,结合极大似然估计计算,完成挑选出的密钥候选值对应概率的计算。较于上述两种区分器,该区分器能够促使攻击效率增高,并降低故障注入数。在具体的计算与实践中,MLE(k1)达到最大时,即可判定相应密钥候选值为正确密钥。
2.3.7 极大似然估计一平方欧氏距离区分器
该区分器先使用极大似然估计算法完成密钥候选值的筛选,然后,结合平方欧氏距离计算,确定正确密钥。较于上述两种区分器,该区分器能够降低故障注入数。一般情况下,在SEI(k1)取值最大时,即可判定相应密钥候选值为正确密钥。
2.3.8三重区分器
该区分器先利用窗函數完成密钥候选值的筛选,然后依托汉明重量算法再次筛选密钥候选值,最终,结合极大似然估计算法提取正确密钥。此时,若是极大似然估计值达到最大,即可判定相应密钥候选值为正确密钥。
2.3.9 双重区分器
该区分器融合了出窗估计算法、汉明重量算法,在完成样本筛选后最终确定正确密钥。通常情况下,若是汉明重量为最小值时,则可判定相应密钥候选值为正确密钥。
3 MIBS轻量级密码的唯密故障实验分析
3.1 实验环境与设备
在本次实验中,使用设备有计算机、Eclipse实验平台;应用Java语言完成攻击环境的构建[3],实验流程如前文所述。
3.2 结果分析
实验结果显示,在“与”故障模型下,想要恢复最后的密钥,至少要注入64个故障;在双重“与”故障模型下,想要恢复最后的密钥,至少要注入24个故障;想要实现主密钥的破译,至少要注入192个、72个故障;若是使用新型区分器,在破译中需要注入的故障数量更少。
总体而言,在双重“与”故障模型条件下,9种区分器均可以在较短的时间内并使用更少故障注入量完成子密钥的破译,而双重区分器或是三重区分器,所需要注入的故障数量以及破译时长更低。这一结果表明,新型故障模型以及新型区分器能够达到增强故障攻击效率的效果,促使密钥破译中故障注入数量以及攻击时间明显下降。
4 总结
综上所述,对MIBS轻量级密码对于抵御唯密文故障的情况进行了仿真分析,结果表明:该密码极容易遭受唯密文故障分析的攻击;相比于传统的区分器来说,新型故障模型以及新型区分器能够达到增强故障攻击效率的效果,促使密钥破译中故障注入数量以及攻击时间明显下降。
参考文献:
[1]李玮,曹珊,谷大武,等.物联网中MIBS轻量级密码的唯密文故障分析[J].计算机研究与发展,2019,56(10):2216-2228.
[2]崔杰,左海风,仲红.对轻量级分组密码MIBS和l-PRESENT的非对称Biclique攻击[J].中国科学:信息科学,2017,47(10):1395-1410.
[3]伊文坛,鲁林真,陈少真.轻量级密码算法MIBS的零相关和积分分析[J].电子与信息学报,2016,38(4):819-826.
【通联编辑:闻翔军】