ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展 ›› 2021, Vol. 58 ›› Issue (5): 1045-1055.doi: 10.7544/issn1000-1239.2021.20200933

所属专题: 2021人工智能安全与隐私保护技术专题

• 信息安全 • 上一篇    下一篇

RAIN:一种面向软硬件和门限实现的轻量分组密码算法

曹梅春1,张文英1,陈彦琴2,邢朝辉1,3,吴磊1   

  1. 1(山东师范大学信息科学与工程学院 济南 250358);2(三未信安科技股份有限公司 济南 250014);3(山东交通学院理学院 济南 250357) (caomeichun@stu.sdnu.edu.cn)
  • 出版日期: 2021-05-01
  • 基金资助: 
    国家自然科学基金项目(61672330);山东省自然科学基金项目(ZR2020KF011,ZR2020MF056)

RAIN: A Lightweight Block Cipher Towards Software, Hardware and Threshold Implementations

Cao Meichun1, Zhang Wenying1, Chen Yanqin2, Xing Zhaohui1,3, Wu Lei1   

  1. 1(School of Information Science and Engineering, Shandong Normal University, Jinan 250358);2(Sansec Technology Co., Ltd, Jinan 250014);3(School of Sciences, Shandong Jiaotong University, Jinan 250357)
  • Online: 2021-05-01
  • Supported by: 
    This work was supported by the National Natural Science Foundation of China (61672330) and the Natural Science Foundation of Shandong Province of China (ZR2020KF011, ZR2020MF056).

摘要: RAIN算法的设计基于国际上分组密码设计广泛采用的SPN(substitution permutation network)结构,通过迭代混淆层S盒和扩散层字混合提供强雪崩效应,不仅保证强的安全性,还兼顾了软硬件实现.算法支持64b分组和128b分组,2种不同的分组长度采用相同的轮函数结构实现,方案简洁优美.混淆层采用4b的S盒实现,在S盒实现的时候不仅考虑了其安全性,还考虑S盒的软硬件实现,与扩散层的混合运算结合提供高的实现性能.从差分分析、不可能差分分析、积分攻击和不变子空间分析4个方面对算法进行了自评估,在分析的过程中使用了一些最新的分析方法以及基于MILP(mixed integer linear programming)的自动化搜索等,结果显示:算法可以抵抗现有的分析方法,并且具有较大的安全冗余.RAIN算法软硬件实现效率高,在PC机、ARM平台和硬件FPGA(field programmable gate array)平台下都具有出色的实现性能.算法S盒可以转换为基本逻辑运算,抗侧信道攻击实现代价低.

关键词: 轻量级可调分组密码, SPN结构, 分组密码设计, RAIN算法, 混合整数线性规划

Abstract: The lightweight block cipher RAIN proposed in this paper is based on the SPN(substitution permutation network) structure widely used in international block cipher design. It provides strong avalanche utility through iterative confusion layer S-box and diffusion layer, which not only guarantees strong security, but also takes into account the implementation of software and hardware. The algorithm supports 64b block and 128b block. Two different block lengths are implemented using the same round function structure, and the scheme is simple and beautiful. The confusion layer is implemented using a 4b S-box. When the S-box is implemented, not only its security is considered, but also the software and hardware implementation of the S-box is considered. The hybrid operation of the diffusion layer provides high implementation performance. We evaluated the algorithm and give differential analysis, impossible differential analysis, integral attack and invariant subspace analysis. In the process of analysis, we combined some of the latest analysis methods and automated search based on MILP. Our algorithm can resist the existing analysis methods, and has greater safety redundancy. RAIN algorithm is efficient on software and hardware implementation, and it has excellent performance on PC, ARM platform and hardware FPGA platform. The algorithm S-box can be converted into basic logic operations, and the cost of resisting side channel attacks is low.

Key words: lightweight tweakable block cipher, SPN(substitution permutation network) structure, block cipher design, RAIN algorithm, mixed integer linear programming

中图分类号: