分组密码uBlock算法快速软件实现
作者机构:空天网络安全工业和信息化部重点实验室 北京航空航天大学网络空间安全学院
出 版 物:《国防科技大学学报》 (Journal of National University of Defense Technology)
年 卷 期:2023年
核心收录:
学科分类:08[工学] 081201[工学-计算机系统结构] 0812[工学-计算机科学与技术(可授工学、理学学位)] 081202[工学-计算机软件与理论]
基 金:国家重点研发计划(2022YFB2701600) 国家自然科学基金项目(61932011 61972017) 北京市自然科学基金项目(M21033)
主 题:uBlock算法 AVX2指令集 并行运算 低延迟 软件快速实现
摘 要:为对国产分组密码算法uBlock进行软件优化,选择支持256比特数据位宽的高级矢量扩展(Advanced Vector Extension 2, AVX2)指令集,提高编译器自动优化等级,优化函数的调用过程,优化数据存储结构,综合使用高位并行、低延迟指令逻辑优化等方法实现单线程并行计算。通过使用这种有效的组合方法,uBlock-128/128算法、uBlock-128/256算法和uBlock-256/256算法的速度较原版代码分别提升269%、182%和49%。基于这些优化方法,uBlock-128/128、uBlock-128/256和uBlock-256/256三个算法版本均实现了单密钥场景与多密钥场景。