文献标识码: A
DOI:10.16157/j.issn.0258-7998.201005
中文引用格式: 杨江帅,陈怀凤,鲍金凤,等. 对NBC-128的安全性分析[J].电子技术应用,2021,47(4):91-96.
英文引用格式: Yang Jiangshuai,Chen Huaifeng,Bao Jinfeng,et al. Cryptanalysis of NBC-128[J]. Application of Electronic Technique,2021,47(4):91-96.
0 引言
为推动我国密码算法的设计及实现技术发展,培养密码学人才,中国密码学会于2018年启动了全国密码算法设计竞赛,共22个分组密码算法进入第一轮评估,有10个算法进入第二轮评估[1]。其中ublouk[2]、FESH[3]、TANGRAM[4]和SPRING[5]算法采用SPN结构,ANT[6]、SMBA[7]和Raindrop[8]算法采用Feistel结构,NBC[9-10]和FBC[11]算法采用广义Feistel结构。最终,uBlock和Ballet获得一等奖,FESH、ANT和TANGRAM获得二等奖,Raindrop、NBC、FBC、SMBA和SPRING获得三等奖。
本文将针对NBC算法进行安全性分析,NBC算法由徐洪等人设计并提出,支持128/128 bit、128/256 bit、256/256 bit 3种分组和密钥尺寸。该算法的非线性F函数部分采用16 bit S盒,由16级非线性反馈移位寄存器迭代而成,具有较低的硬件实现成本。差分分析[12]、线性分析[13]、不可能差分分析[14]、零相关线性分析[15-17]和积分分析[18]等是分析分组密码算法安全性的主要方法,算法设计者针对NBC算法的各个版本给出了初步分析结果。
针对NBC-128算法的两个版本,设计者的研究表明[9-10]:NBC-128算法不存在9轮有效的线性特征和差分特征。对于不可能差分攻击和零相关线性攻击,设计者在第二轮的提交文档[9]中给出了10轮的区分器及详细的攻击过程,后来在新版本中[10]将两类路线各扩展一轮,并相应地将可攻击轮数扩展了一轮。利用不可能差分分析方法,设计者攻击19轮NBC-128/256、17轮NBC-128/128,利用零相关线性分析方法,可以攻击16轮NBC-128/256、15轮NBC-128/128。对于积分分析方法,设计者给出了12轮的积分路线,数据复杂度为2127,可以攻击18轮NBC-128/256、16轮NBC-128/128。
本文详细内容请下载:http://www.chinaaet.com/resource/share/2000003483
作者信息:
杨江帅1,陈怀凤1,鲍金凤2,康潇文3
(1.中国电子信息产业集团有限公司第六研究所,北京100083;
2.北京联合大学旅游学院,北京110101;3.61428部队,北京100097)