RAIN:一种面向软硬件和门限实现的轻量分组密码算法
2021-06-04曹梅春张文英陈彦琴邢朝辉
曹梅春 张文英 陈彦琴 邢朝辉,3 吴 磊
1(山东师范大学信息科学与工程学院 济南 250358) 2(三未信安科技股份有限公司 济南 250014) 3(山东交通学院理学院 济南 250357)
分组密码算法作为对称密码的一个重要分支,在计算机通信和信息系统安全领域有着广泛应用,同时也是构造认证加密算法、Hash函数和密码协议的底层算法.分组密码的典型结构主要包括Feistel结构、SPN(substitution permutation network)结构和Lai-Massey结构.Feistel结构代表有数据加密标准(data encryption standard, DES)算法[1]和NSA(National Security Agency)设计的SIMON算法[2]等;SPN结构的算法有高级加密标准(advanced encryption standard, AES)[3]、轻量级分组密码算法Midori[4]和SKINNY[5]等;Lai-Massey结构的算法有国际数据加密算法IDEA[6].Feistel结构加解密采用相同的结构,加解密算法同时实现可以节省资源,但是由于其混淆扩散速度慢,一般轮数比较多,加解密效率相对低一些.而Lai-Massey结构的混淆扩散速度较快,加解密一致,且软件实现速度快.但是轮函数较为复杂,每轮的硬件实现面积较大.SPN结构混淆扩散速度快,算法轮数一般较少,算法实现时吞吐量较大.一般情况下加密和解密的部件是不同的,解密是加密运算的逆.一些SPN结构加密算法实现解密的开销通过使用对合运算作为组成部分来进行优化.在SPN结构中,有一类是基于S盒和乘矩阵的AES类结构,该类结构算法有利于对抗差分和线性分析,并进行安全性证明.
轻量级分组密码是一种特殊的分组密码体制,对轻量级分组密码进行研究的动机是某些特定应用需要比AES面积低、功耗低且安全强度相当的加密算法.轻量级密码算法硬……
