Journal of Computer Research and Development ›› 2021, Vol. 58 ›› Issue (5): 1045-1055.doi: 10.7544/issn1000-1239.2021.20200933
Cao Meichun1, Zhang Wenying1, Chen Yanqin2, Xing Zhaohui1,3, Wu Lei1
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.
lightweight tweakable block cipher,
SPN(substitution permutation network) structure,
block cipher design,
mixed integer linear programming
Cao Meichun, Zhang Wenying, Chen Yanqin, Xing Zhaohui, Wu Lei. RAIN: A Lightweight Block Cipher Towards Software, Hardware and Threshold Implementations[J]. Journal of Computer Research and Development, 2021, 58(5): 1045-1055.
Add to citation manager EndNote|Reference Manager|ProCite|BibTeX|RefWorks