温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
AEUR
基于
uBlock
函数
认证
加密算法
设计
2023 年 8 月 Journal on Communications August 2023 第 44 卷第 8 期 通 信 学 报 Vol.44 No.8AEUR:基于 uBlock 轮函数的认证加密算法设计 杨亚涛1,2,董辉1,刘建韬1,张艳硕1(1.北京电子科技学院电子与通信工程系,北京 100070;2.西安电子科技大学通信工程学院,陕西 西安 710071)摘 要:为了提升认证加密算法的实现效率,同时不降低算法的安全性,基于 uBlock 算法设计了一种新型认证加密算法 AEUR。首先,在分组密码算法 uBlock 轮函数的基础上,将抵抗内部碰撞攻击作为安全性目标,利用混合整数线性规划方法,搜索设计符合安全性目标的通用迭代算法结构 R(t,s)。其次,利用该结构设计了认证加密算法 AEUR,AEUR 由认证加密和解密验证两部分构成,两部分执行过程相同,不需要额外设计操作环节,从而减少算法的资源消耗。再次,通过对比轮数状态值来验证算法的正确性,采用线性攻击、滑动攻击等多种方法分析了算法的安全性。最后,采用 C 语言对算法进行了软件实现,证明所提算法具有良好的软件实现性能。结果表明,以软件运行时间计算,所提算法相比 AEGIS 和 ALE,效率分别提升了 3%和 46%;相比 AES-GCM 和 ACORN,效率分别提升了 74%和 92%,具有较好的综合性能。关键词:认证加密;分组密码 uBlock;安全性分析;软件实现 中图分类号:TN92 文献标志码:A DOI:10.11959/j.issn.1000436x.2023159 AEUR:authenticated encryption algorithm design based on uBlock round function YANG Yatao1,2,DONG Hui1,LIU Jiantao1,ZHANG Yanshuo1 1.Department of Electronic and Communication Engineering,Beijing Electronic Science and Technology Institute,Beijing 100070,China 2.School of Telecommunication Engineering,Xidian University,Xian 710071,China Abstract:In order to improve the efficiency of the implementation of the authenticated encryption algorithm without com-promising the security of the algorithm,a new authenticated encryption algorithm AEUR was designed.Firstly,based on the uBlock round function,with resistance to internal collision attacks as the security objective,a mixed integer linear program-ming approach was used to search for generic iterative component R(t,s)to meet the security objective.Secondly,the authen-ticated encryption algorithm AEUR was designed by using this component.AEUR consisted of two parts:authenticated en-cryption and decrypted verification,both of which performed the same process without the need to design additional opera-tional sessions,reducing the algorithms resource consumption.In addition,the correctness of the algorithm was verified by comparing the corresponding round state values,and the security of the algorithm was analyzed using various analysis me-thods such as linear attacks and sliding attacks.Finally,the algorithm was implemented in C language to prove the AEUR has good performance.The results show that the proposed algorithm has a better overall performance in terms of software runtime,with efficiency improvements of 3%and 46%compared to AEGIS and ALE,and 74%and 92%compared to AES-GCM and ACORN,respectively.Keywords:authenticated encryption,block cipher uBlock,security analysis,software implementation 收稿日期:20230426;修回日期:20230814 基金项目:北京市自然科学基金资助项目(No.4232034);中央高校基本科研业务费专项资金资助项目(No.328202222);“通信工程”“电子信息工程”国家级一流本科专业建设点基金资助项目 Foundation Items:Beijing Natural Science Foundation(No.4232034),The Fundamental Research Funds for the Central Universi-ties(No.328202222),National First-Class Under Graduate Dicipline Construction of“Communication Engineering”and“ElectronicInformation Engineering”第 8 期 杨亚涛等:AEUR:基于 uBlock 轮函数的认证加密算法设计 169 0 引言 认证加密(AE,authenticated encryption)算法在信息保护领域作用重大,能够兼顾数据的机密性和完整性。通过将消息认证码和加解密算法结合,可以实现认证标签的单向计算过程,且在加解密环节拥有足够的安全强度,以抵抗常见的密码分析。目前,主流的基于分组密码的认证加密算法主要有 2 种设计方式:一是基于分组密码的认证加密方式,二是在现有的分组密码的基础上进行设计。前者依靠设计可靠模式结构并在底层使用分组密码算法为相关的加解密和认证验证提供服务,但提供服务的过程是不可见的,底层的算法可以相对简单地进行替换,这类典型的认证加密算法有 OCB1(offset codebook)、EAX2(encryption with authen-tication for transfer)、GCM3(galois/counter mode)。随着物联网等信息产业的迅速发展,认证加密算法的需求环境也发生了很大的变化,之前的通用算法和基于分组密码的工作方式类在现有的资源受限环境下的表现不尽如人意,如 RFID(radio frequency identification)环境。直接设计类认证加密算法是指采用已验证安全性和其他性能指标的、成型的分组密码部件来进行认证加密算法的设计。这种设计方式致力于降低算法的实现代价和提升软硬件表现,因其采用消息来更新算法的状态,用于消息认证的实现代价较低。但这些算法的安全性不能通过可证明安全理论来证明,需依靠各种安全性分析方法,常见的此类型的认证加密算法有 AEGIS4、ALE(authenticated lightweight encryption)5、AEZ(advanced encryption standard-easy)6等。为获得更好的认证加密效率与安全性,本文提出了新的方案。本文的贡献如下。1)本文提出了一种认证加密算法通用结构R(t,s)。不同于已有采用 AES(advanced encryption standard)轮函数的直接设计类认证加密算法,该结构基于轻量级分组密码算法 uBlock7设计,以抵抗内部碰撞攻击为安全性目标,使用了混合整数线性规划(MILP,mixed integer linear programming)8方法,搜索确定结构中关键参数 t、s 和算法所使用的置换 P,保证该结构在 10 轮后有不少于 66 个活跃 S 盒。2)基于通用结构 R(t,s)设计了认证加密算法AEUR(authenticated encryption algorithm based on uBlock round function)。AEUR 算法的设计基于uBlock 轮函数和广义 Feistel 结构,以 4 个 uBlock轮函数和置换 P 组成了算法的轮函数,轮函数用来更新状态值,状态值保证算法的正确性。算法处理数据的过程简洁有效,从而优化了算法运行过程,减少了资源消耗。AEUR 算法对多种安全性分析方法具有充分的抵抗能力,为国产密码算法应用提供了一条新的参考途径。3)应用 SSE(streaming SIMD extension)指令集9对 AEUR 算法进行了软件实现。对 AEUR 算法进行实现速率测试,以软件运行时间计算,AEUR算法相比其他同类算法在运算速度上均有不同程度的提升,具有较好的综合性能。1 相关研究 Bellare 等10在 ASIACRYPT 2000 上提出了认证加密这一全新概念,将认证和加解密在同一算法中完成,通过共享一个密钥来实现数据的机密性与完整性。近年来,部分学者拓宽了认证加密算法的应用领域,并基于不同的经典密码算法实现了新的认证加密方式。2002 年,Rogaway11提出了基于相关数据的认证加密(ADAE,associated-data authen-ticated encryption)算法,结合 OCB 和伪随机函数PMAC(parallelizable MAC)构造了 ADAE 算法,这种认证方式在保证了明文信息的保密性和完整性同时也保证了相关数据的完整性。2008 年,Iwata12提出了一种针对区块密码的认证加密模式,其中加密部分由一个 CENC(common encryption)的密钥流生成,并结合了基于分组密码的哈希函数。2010 年,Sarkar13提出了并行认证加密模式,并与 IPMAC(improved parallelizable MAC)结合,获得新的认证加密方案。随着对认证加密领域以及应用环境的不断研究和探索,原有的认证加密方案设计思路不能很好地适应新的应用环境。同时,基于新结构和新思想的方案不断被提出。CAESAR(competition for authenticated encryption:security,applicability,and robustness)竞赛的举办大大推动了认证加密算法设计的发展,其第三轮算法的特点介绍1,4,14-16如表 1 所示。2018 年,张建等17基于 SM4 轮函数设计了认