一种基于UWB的轻量化AES-128动态加密方法技术

技术编号:38769464 阅读:14 留言:0更新日期:2023-09-10 10:42
本发明专利技术公开了基于UWB的轻量化AES

【技术实现步骤摘要】
一种基于UWB的轻量化AES

128动态加密方法


[0001]本专利技术涉及无线通信领域和计算机密码学领域,具体为一种基于UWB的轻量化AES

128动态加密方法。

技术介绍

[0002]UWB(Ultra

Wideband)技术是一种用于短距离高速数据传输和精确定位的技术。它所使用的超宽带信号具有高速传输和低功耗的特点,可以实现高精度定位和高速数据传输。UWB技术一般应用在嵌入式设备上,而这些设备基本都具有资源有限的情况。UWB技术本身没有保证安全性的措施,安全性的保障需要引入外部方法。
[0003]AES加密算法是一种对称密钥加密算法,是目前使用最广泛的加密算法之一。它可以使用128位、192位或256位密钥对数据进行加密,其加密过程包括四个主要步骤:密钥扩展、行移位、列混合和轮密钥加。在加密过程中,数据会被切分成一系列16字节大小的块,并且经过多轮加密操作,最终生成密文。相比于较旧的加密算法,AES具有更高的安全性和更快的加密速度。
[0004]AES

128加密算法即使用128位密钥的AES加密算法。对于一些资源相对有限的嵌入式设备,进行AES

128加密时仍可能会消耗大量的资源导致系统实时性降低。如果直接减少AES

128加密算法的函数循环次数,虽然降低了运算量,但同时也会降低安全性。综上,UWB通信系统在数据传输过程中存在嵌入式微处理器性能限制和数据易被截获的问题。/>
技术实现思路

[0005]本专利技术的目的在于克服上述现有技术的缺点,提供一种基于UWB的轻量化AES

128动态加密方法。
[0006]为达到上述目的,本专利技术采用以下技术方案予以实现:
[0007]一种基于UWB的轻量化AES

128动态加密方法,包括以下步骤:
[0008](1)将初始密钥对进行十轮密钥扩展,计算每轮密钥扩展后比特差,将比特差最大的轮次和密钥作为最优轮次和轮密钥;
[0009](2)基于所述最优轮次和轮密钥执行轮加密的循环迭代操作。
[0010]进一步的,收发双方持有相同密码本,收发双方通过随机算法生成密钥坐标以明文形式传输。
[0011]进一步的,所述密码本为二维密码本,二维密码本即确定一个密钥对应两个坐标,AES

128加密算法的密钥为16字节,每一个坐标对应8字节密钥片段;
[0012]采用随机算法构建长度为l的密码本(x1,x2,

,x
l
),每个元素为8字节,发送方在加密前,在密码本的长度范围内生成两个随机数{x
m
,x
n
},查询密码本获取密钥片段后拼接成16字节作为初始密钥,其中,1≤m≤l,1≤n≤l,l≤10。
[0013]进一步的,在无线通信开始之前,将密码本中所有组合的最优加密轮次和密钥扩展均按照步骤(1)的计算方法计算出来并保存,在加解密过程中读取对应的最优加密轮次
和轮密钥,基于所述最优轮次和轮密钥执行轮加密的循环迭代操作。
[0014]进一步的,在无线通信开始后,每次随机生成的密钥片段组合,按照步骤(1)的计算方法计算最优加密轮次和扩展密钥后,将结果保存;
[0015]下次若随机到相同的密钥片段组合时,读取保存的所述最优加密轮次和轮密钥,基于所述最优轮次和轮密钥执行轮加密的循环迭代操作。
[0016]进一步的,步骤(2)包括以下操作:
[0017](201)、执行字节代换算法;
[0018](202)、执行行移位算法;
[0019](203)、执行列混合算法;
[0020](204)、执行轮密钥加算法;
[0021](205)、循环步骤(201)~(204),直至达到最优轮次,完成加密。
[0022]进一步的,步骤(201)、(202)、(203)和(204)的具体操作如下:
[0023](201)、执行字节代换算法,具体为:
[0024]定义一个16
×
16矩阵的S盒和一个逆S盒,将每字节明文的高4位作为行值,低4位作为列值,根据正、逆变换,取出S盒或者逆S盒中对应的行的元素作为输出代换原数据,得到状态矩阵;
[0025](202)、执行行移位算法,具体为:
[0026]将状态矩阵的第0行左移0字节,第1行左移1字节,第2行左移2字节,第3行左移3字节;行移位的逆变换是将状态矩阵中的每一行执行相反的移位操作;
[0027](203)、执行列混合算法,具体为:
[0028]将行移位后的状态矩阵与列混合固定矩阵相乘,得到新的状态矩阵;
[0029]逆变换时,将逆列混合固定矩阵应用于所述新的状态矩阵进行逆列混合操作,最终得到原始的列状态;
[0030](204)、执行轮密钥加算法,具体为:
[0031]将所述轮密钥与状态矩阵中的数据进行逐位异或操作,轮密钥加的逆运算与轮密钥加的运算完全一致。
[0032]进一步的,步骤(1)的具体操作为:
[0033](101)、对初始密钥矩阵A中,每一行最后一个字节的最后一个比特若为0执行加1操作,为1执行减1操作,得到与初始密钥相差一位比特的二维对比密钥矩阵B,对初始密钥矩阵A和对比密钥矩阵B分别进行十轮密钥扩展,将结果存储在四维矩阵U[l*l][11][4][4]和V[l*l][11][4][4]中;同时,密钥扩展将128位原密钥转换为4*4矩阵,存储在U[0]‑
U[3]中,基于U[0]‑
U[3]通过式(2)和(3)求解出10个子密钥U[4i]‑
U[4i+3],其中1≤i≤10,1≤j≤10;
[0034]U[4i]=U[4(i

1)]+T(U[4i

1])
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0035]U[4i+j]=U[4(i

1)+j]+U[4i

1+j]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0036](102)、计算比特差
[0037]将四维矩阵U[l*l][11][4][4]和V[l*l][11][4][4]中对应元素异或得到矩阵W[l*l][11][4][4],得到两个矩阵中每个对应字节元素比特差,再统计每个元素为1的位数,得到四维矩阵U[l*l][11][4][4]和V[l*l][11][4][4]对应字节元素的比特差的统计值
COUNT[l*l][11][4][4],最后进行降维操作得到SUM[l*l][11],每一行代表每组密钥经过轮密钥扩展后的比特差;
[0038](103)、最优轮次获取
[0039]在SUM[l*l][11]矩阵中每行元素的最大值及其所在的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于UWB的轻量化AES

128动态加密方法,其特征在于,包括以下步骤:(1)将初始密钥对进行十轮密钥扩展,计算每轮密钥扩展后比特差,将比特差最大的轮次和密钥作为最优轮次和轮密钥;(2)基于所述最优轮次和轮密钥执行轮加密的循环迭代操作。2.根据权利要求1所述的一种基于UWB的轻量化AES

128动态加密方法,其特征在于,收发双方持有相同密码本,收发双方通过随机算法生成密钥坐标以明文形式传输。3.根据权利要求2所述的一种基于UWB的轻量化AES

128动态加密方法,其特征在于,所述密码本为二维密码本,二维密码本即确定一个密钥对应两个坐标,AES

128加密算法的密钥为16字节,每一个坐标对应8字节密钥片段;采用随机算法构建长度为l的密码本(x1,x2,

,x
l
),每个元素为8字节,发送方在加密前,在密码本的长度范围内生成两个随机数{x
m
,x
n
},查询密码本获取密钥片段后拼接成16字节作为初始密钥,其中,1≤m≤l,1≤n≤l,l≤10。4.根据权利要求1所述的一种基于UWB的轻量化AES

128动态加密方法,其特征在于,在无线通信开始之前,将密码本中所有组合的最优加密轮次和密钥扩展均按照步骤(1)的计算方法计算出来并保存,在加解密过程中读取对应的最优加密轮次和轮密钥,基于所述最优轮次和轮密钥执行轮加密的循环迭代操作。5.根据权利要求1所述的一种基于UWB的轻量化AES

128动态加密方法,其特征在于,在无线通信开始后,每次随机生成的密钥片段组合,按照步骤(1)的计算方法计算最优加密轮次和扩展密钥后,将结果保存;下次若随机到相同的密钥片段组合时,读取保存的所述最优加密轮次和轮密钥,基于所述最优轮次和轮密钥执行轮加密的循环迭代操作。6.根据权利要求1所述的一种基于UWB的轻量化AES

128动态加密方法,其特征在于,步骤(2)包括以下操作:(201)、执行字节代换算法;(202)、执行行移位算法;(203)、执行列混合算法;(204)、执行轮密钥加算法;(205)、循环步骤(201)~(204),直至达到最优轮次,完成加密。7.根据权利要求6所述的一种基于UWB的轻量化AES

128动态加密方法,其特征在于,步骤(201)、(202)、(203)和(204)的具体操作如下:(201)、执行字节代换算法,具体为:定义一个16
×
16矩阵的S盒和一个逆S盒,将每字节明文的高4位作为行值,低4位作为列值,根据正、逆变换,取出S盒或者逆S盒中对应的行的元素作为输出代换原数据,得到状态矩阵;(202)、执行行移位算法,具体为:将状态矩阵的第0行左移0字节,第1行左移1字节,第2行左移2字节,第3行左移3字节;行移位的逆变换是将状态矩阵中的每...

【专利技术属性】
技术研发人员:周柯成陈皓胡玉龙唐艺菁
申请(专利权)人:西安微电子技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1