轻量级分组密码算法普遍密码长度较短,算法结构简单,在硬件实现、加密速度、运行功耗等方面有着明显的优势,广泛应用于物联网等资源受限的环境中。下面我们就来了解一下轻量级分组密码算法中的LiCi加密算法。

LiCi算法简介

LiCi算法是由Xu Wendong和Li Xueliang等人于2019年提出的,该算法是基于分组加密,采用64bit的分组长度和128bit的密钥长度,具有结构紧凑、能耗低、占用面积小等特点。在安全性、效率、适用范围等方面,LiCi算法具有一定的优势,适用于物联网等资源受限的环境。

LiCi算法

LiCi算法的加密过程

将明文分成若干个64bit的分组,每个分组独立进行加密。选择一个128bit的密钥,并将其分成两个64bit的子密钥,即K1和K2。对每个明文分组进行加密操作,生成密文。

具体过程:

  1. 将明文分组与K1进行异或运算,得到中间结果。
  2. 将中间结果与K2进行异或运算,得到密文。
  3. 将密文进行循环移位操作,移位数为4bit,得到最终密文。

LiCi算法

LiCi算法的解密过程

LiCi算法的解密过程与加密过程类似,选择一个128bit的密钥,并将其分成两个64bit的子密钥,即K1和K2。对密文进行解密操作,生成明文。

具体过程:

  1. 将密文与K2进行异或运算,得到中间结果。
  2. 将中间结果与K1进行异或运算,得到明文。
  3. 将明文进行循环移位操作,移位数为4bit,得到最终明文。

LiCi算法

LiCi算法的优缺点

  • 安全性较高:LiCi算法采用了分组加密的方式,每个分组独立进行加密,增加了破解的难度。同时,该算法还采用了S盒字节替换等非线性运算,提高了算法的安全性。
  • 加密效率较高:LiCi算法采用了较短的分组长度和较少的迭代轮数,使得加密和解密的速度较快,适用于实时性要求较高的场景。
  • 适用范围较广:LiCi算法适用于各种数据加密、文件加密、网络通信加密等场景,特别是对于物联网等资源受限的环境具有较好的适用性。
  • 抗差分故障攻击能力较低:LiCi算法采用非线性变换和线性变换相结合的方式,能够抵抗差分攻击和线性攻击,但对于差分故障攻击的抵抗能力较弱。

免责声明:素材源于网络,如有侵权,请联系删稿。