一种密钥扩充方法技术

技术编号:39750199 阅读:4 留言:0更新日期:2023-12-17 23:48
本发明专利技术公开了一种密钥扩充方法,该方法包括客户端接收密钥中心发送的待扩充密钥,然后从本地根密钥串中获取与待扩充密钥长度相同的根密钥,待扩充密钥和根密钥均为真随机数;再按照密钥扩充比例将待扩充密钥和根密钥分别进行等分,形成多个待扩充密钥块和根密钥块;最后将每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后将所有的子密钥串进行拼接得到最终的扩充密钥串

【技术实现步骤摘要】
一种密钥扩充方法


[0001]本专利技术涉及密钥
,具体涉及一种密钥扩充方法


技术介绍

[0002]数据加密的基本过程,就是对原来为明文的文件或数据按某种加密算法进行处理,使其成为不可读的一段代码,通常称为“密文”。
通过这样的途径,来达到保护数据不被非法人窃取

阅读的目的

在如今的信息安全领域,有各种各样的加密算法凝聚了计算机科学家们的智慧,而密钥作为加密算法中输入的参数,其重要程度不言而喻

[0003]随着科技的进步,加密算法的使用频率越来越高,密钥的消耗量也就十分巨大,当然为了最大化提高加密的安全性,密钥应该使用真随机数,真随机数由于具备随机性

不可预测性

不可重现性三个特点,可以提高加密过程的不可预测性,从而增加破解难度

[0004]目前,由于密钥的消耗量很大,就使得部分技术人员会先获取一些真随机数作为初始密钥,再通过现有的密钥扩充方法对初始密钥进行扩充从而增加密钥量

这一做法虽然解决了密钥量不够的问题,但是现有的密钥扩充方法如
AES
密钥扩充方法
、SM3
密钥扩充方法,其扩充之后的密钥要么根本就无法作为密钥使用,要么密钥的随机性测试不通过,这是测试项中最重要的相关性测试,不通过也就意味着扩充之后的密钥不是真随机数,这就说明扩充之后的密钥不能作为加密算法中输入的参数


技术实现思路

[0005]专利技术目的:本专利技术目的是提供一种密钥扩充方法,解决了现有的密钥扩充方法扩充之后的密钥要么根本就无法作为密钥使用,要么就不是真随机数,导致扩充之后的密钥不能用于加密的问题

[0006]技术方案:本专利技术一种密钥扩充方法,包括以下步骤:
[0007](1)
客户端接收密钥中心发送的待扩充密钥,然后再从本地根密钥串中获取与待扩充密钥长度相同的根密钥;其中,待扩充密钥和根密钥均为真随机数;
[0008](2)
客户端按照密钥扩充比例将待扩充密钥和根密钥分别进行等分,形成多个待扩充密钥块和多个根密钥块,待扩充密钥块的数量与根密钥块的数量相同;
[0009](3)
客户端将多个待扩充密钥块中的每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后再将所有的子密钥串进行拼接得到最终的扩充密钥串

[0010]进一步地,所述客户端按照密钥扩充比例将待扩充密钥和根密钥分别进行等分,形成多个待扩充密钥块和多个根密钥块的具体过程为:
[0011]首先客户端获取待扩充密钥和根密钥的字节长度记为
m
,客户端按照密钥扩充比例1:
n

m
位的待扩充密钥等分成
n
个待扩充密钥块,以及将
m
位的根密钥等分成
n
个根密钥块;每个待扩充密钥块和根密钥块的长度均为
m/n。
[0012]进一步地,所述客户端将多个待扩充密钥块中的每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后再将所有的子密钥串进行拼接得到最终的扩充密
钥串的具体过程为:
[0013]1)
客户端将
n
个待扩充密钥块中的第一个待扩充密钥块按
n
个根密钥块的排列顺序依次与
n
个根密钥块进行异或操作得到第一子密钥串;
[0014]2)
客户端将
n
个待扩充密钥块中的第二个待扩充密钥块按
n
个根密钥块的排列顺序依次与
n
个根密钥块进行异或操作得到第二子密钥串;
[0015]3)
依此类推,直至客户端将
n
个待扩充密钥块中的第
n
个待扩充密钥块按
n
个根密钥块的排列顺序依次与
n
个根密钥块进行异或操作得到第
n
子密钥串;
[0016]4)
最后,客户端将第一子密钥串至第
n
子密钥串进行拼接得到最终的扩充密钥串

[0017]进一步地,所述客户端将多个待扩充密钥块中的每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后再将所有的子密钥串进行拼接得到最终的扩充密钥串的具体过程为:
[0018]A)
客户端按照不放回抽样策略从
n
个根密钥块中进行
n
次抽样,同时将每次抽样得到的根密钥块与
n
个待扩充密钥块中的第一个待扩充密钥块进行异或操作,再按抽样顺序将每次异或操作得到的结果进行拼接得到第一子密钥串;
[0019]B)
客户端按照不放回抽样策略从
n
个根密钥块中进行
n
次抽样,同时将每次抽样得到的根密钥块与
n
个待扩充密钥块中的第二个待扩充密钥块进行异或操作,再按抽样顺序将每次异或操作得到的结果进行拼接得到第二子密钥串;
[0020]C)
依此类推,直至客户端按照不放回抽样策略从
n
个根密钥块中进行
n
次抽样,同时将每次抽样得到的根密钥块与
n
个待扩充密钥块中的第
n
个待扩充密钥块进行异或操作,再按抽样顺序将每次异或操作得到的结果进行拼接得到第
n
子密钥串;
[0021]D)
最后,客户端将第一子密钥串至第
n
子密钥串进行拼接得到最终的扩充密钥串

[0022]进一步地,所述步骤
(3)
之后,客户端从扩充密钥串中获取与根密钥长度相同的回填密钥,并将回填密钥回填至本地根密钥串中

[0023]进一步地,所述每个待扩充密钥块和根密钥块的长度均为2的整数幂次方,且长度均大于等于22

[0024]进一步地,所述按
n
个根密钥块的排列顺序是指
n
个根密钥块从前到后的顺序或从后到前的顺序

[0025]本专利技术的有益效果:本专利技术按照密钥扩充比例将待扩充密钥和根密钥分别进行等分,形成多个待扩充密钥块和根密钥块;然后再将多个待扩充密钥块中的每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后再将所有的子密钥串进行拼接得到最终的扩充密钥串

本专利技术使得密钥扩充前的随机性,在进行密钥扩充之后仍然可以保持,其得到的扩充密钥串依旧是真随机数

这样可以有效的节省密钥资源,同时大大提升密钥资源的使用率;在整个量子网络数据传输的过程中,对于密钥传输所占用的带宽将大大减少,有效提高了整个网络的传输性能

附图说明
[0026]图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种密钥扩充方法,其特征在于,包括以下步骤:
(1)
客户端接收密钥中心发送的待扩充密钥,然后再从本地根密钥串中获取与待扩充密钥长度相同的根密钥;其中,待扩充密钥和根密钥均为真随机数;
(2)
客户端按照密钥扩充比例将待扩充密钥和根密钥分别进行等分,形成多个待扩充密钥块和多个根密钥块,待扩充密钥块的数量与根密钥块的数量相同;
(3)
客户端将多个待扩充密钥块中的每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后再将所有的子密钥串进行拼接得到最终的扩充密钥串
。2.
根据权利要求1所述的一种密钥扩充方法,其特征在于:所述客户端按照密钥扩充比例将待扩充密钥和根密钥分别进行等分,形成多个待扩充密钥块和多个根密钥块的具体过程为:首先客户端获取待扩充密钥和根密钥的字节长度记为
m
,客户端按照密钥扩充比例1:
n

m
位的待扩充密钥等分成
n
个待扩充密钥块,以及将
m
位的根密钥等分成
n
个根密钥块;每个待扩充密钥块和根密钥块的长度均为
m/n。3.
根据权利要求2所述的一种密钥扩充方法,其特征在于:所述客户端将多个待扩充密钥块中的每个待扩充密钥块分别与多个根密钥块进行异或操作得到子密钥串,然后再将所有的子密钥串进行拼接得到最终的扩充密钥串的具体过程为:
1)
客户端将
n
个待扩充密钥块中的第一个待扩充密钥块按
n
个根密钥块的排列顺序依次与
n
个根密钥块进行异或操作得到第一子密钥串;
2)
客户端将
n
个待扩充密钥块中的第二个待扩充密钥块按
n
个根密钥块的排列顺序依次与
n
个根密钥块进行异或操作得到第二子密钥串;
3)
依此类推,直至客户端将
n
个待扩充密钥块中的第
n
个待扩充密钥块按
n
个根密钥块的排列顺序依次与
n
个根密钥块进行异或操作得到第
n
子密钥串;<...

【专利技术属性】
技术研发人员:杨鸽徐同恺张仕峰冯俊徐辉
申请(专利权)人:矩阵时光数字科技有限公司
类型:发明
国别省市:

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

1