预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN113645615A(43)申请公布日2021.11.12(21)申请号202110922748.7(22)申请日2021.08.12(71)申请人衡阳师范学院地址421008湖南省衡阳市黄白路165号(72)发明人李浪杨金玲闫柳焰(74)专利代理机构长沙市融智专利事务所(普通合伙)43114代理人欧阳迪奇(51)Int.Cl.H04W12/03(2021.01)H04W12/041(2021.01)H04L9/06(2006.01)权利要求书4页说明书9页附图2页(54)发明名称轻量级分组密码加密及解密方法(57)摘要本发明公开了一种轻量级分组密码加密及解密方法,轮函数中采用一种动态构成的F函数对明文数据进行加密处理,首先获取待加密明文数据并分为4分支明文数据组,每分支明文数据组同时进行动态F函数运算后,进行P置换,以此完成一轮函数加密,共进行15轮迭代加密,最后进行一次轮密钥的“白化”操作后,最终得到密文输出。该F函数为由轮常量加、S盒替换、列混淆、轮密钥加4个组件参与运算时的顺序循环移动构成的动态结构。其中S盒替换由一种新的类似广义Feistel结构构成,硬件实现代价小。每轮密钥更新完成后,更新后的轮密钥也分为4分支参与F函数中的轮密钥加运算。本发明使得密码算法结构设计更灵活,且能在较低的实现代价下具有更高的安全性。CN113645615ACN113645615A权利要求书1/4页1.一种轻量级分组密码加密方法,其特征在于,包括以下步骤:步骤A1:获取64位明文作为待加密数据X,进行加密运算;其中,待加密数据X从高位到低位每16位一组依次排序形成4分支明文数据组,记作X=X0X1X2X3;步骤A2:获取80位密钥作为初始密钥数据K,进行密钥更新运算:将初始密钥数据K循环左移7位;然后从高位到低位每16位一组依次排序分为5个密钥数据组,分别为K0、K1、K2、K3、K4;再对K0、K2的前4位数据与轮计数器r‑1进行异或运算,其中r代表当前轮数;得到的运算结果进行S盒替换得到更新后的K0、K2,最后将K0、K1、K2、K3、K4依次排序作为下一轮的轮密钥;步骤A3:对步骤A1所述的待加密数据X进行F函数运算;其中,F函数包括轮常量加、S盒替换、列混淆、轮密钥加4个组件,并根据4个组件参与运算时的顺序,分为F1、F2、F3、F4四种结构,4分支明文数据组X0、X1、X2、X3分别进行F1、F2、F3、F4函数运算;F函数每轮运算所使用的轮密钥为密钥更新运算后的前64位数据;设a数组中4个组件构成了F函数:a[4]=[轮常量加,S盒替换,列混淆,轮密钥加],则4个F函数中组件运算顺序以下公式表示,即Fi中第k个组件为:Fik=a[((i‑1)+(k‑1))%4],i,k∈[1,4]即X0首先进行轮常量加运算,X1首先进行S盒替换,X2首先进行列混淆变换,X3首先进行轮密钥加运算,%表示取余运算;步骤A4:对步骤A3得到的运算结果进行P置换;步骤A5:判断当前轮数r是否小于16,若小于,令r=r+1,将步骤A2、A4得到的运算结果作为新一轮运算的输入数据,返回步骤A3;否则,进行步骤A6;步骤A6:轮密钥的“白化”操作:将步骤A5得到的运算结果与第16轮密钥更新运算获得的轮密钥的前64位数据进行异或运算,然后输出加密结果。2.根据权利要求1所述的方法,其特征在于,所述步骤A3中F函数包括:F1函数运算包括:对X0依次进行轮常量加运算、S盒替换、列混淆变换和轮密钥加运算;F2函数运算包括:对X1依次进行S盒替换、列混淆变换、轮密钥加运算和轮常量加运算;F3函数运算包括:对X2依次进行列混淆变换、轮密钥加运算、轮常量加运算和S盒替换;F4函数运算包括:对X3依次进行轮密钥加运算、轮常量加运算、S盒替换和列混淆变换。3.根据权利要求1所述的方法,其特征在于,所述步骤A3中,轮常量加运算过程为:每轮在进行轮常量加运算时,将进行F函数运算的每分支数据的前4位数据与4位常量进行异或运算,其中常量更新方式为:将4位常量(rc3,rc2,rc1,rc0)左移一位,更新值的计算式为:该4位常量初始化为全0的状态;其元素如下表所示:4.根据权利要求1所述的方法,其特征在于,所述步骤A3中轮密钥加运算进一步包括以下处理步骤:每轮在进行轮密钥加运算时,进行F1函数运算的第1分支数据与密钥更新运算获得的K3进行异或运算,进行F2函数运算的第2分支数据与密钥更新运算获得的K2进行异或运算,2CN113645615A权利要求书2/4页进行F3函数运算的第3分支数据与密钥更新运算获得的K1进行异或运算,进行F4函数运算的第4分支数据与密钥更新运算获得的K0进行异或运算。5.根据权利要