一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法技术方案

技术编号:25126040 阅读:31 留言:0更新日期:2020-08-05 02:55
本发明专利技术公开了一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,使用简化Toeplitz矩阵作为通用哈希函数族,将其中的Toeplitz矩阵进行拆分为多个大小相同的子块,并分别利用快速傅氏变换来加速对应的Toeplitz矩阵块的乘积。本发明专利技术具有系统安全性更好、处理速度更快等优点。

【技术实现步骤摘要】
一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法
本专利技术主要涉及到量子密钥分发
,特指一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法。
技术介绍
基于量子力学的量子密钥分发技术能够达到无条件安全的通信。近年来,各种各样的量子密钥分发系统已经被实现并广泛应用于社会。一个量子密钥分发系统主要包括两个阶段:量子交互部分阶段和后处理阶段。其中,后处理阶段利用传统的计算机算法从量子交互部分获得的量子比特中提取出最终的安全密钥。传统的后处理阶段主要包括:基比对和数据筛选、误码纠错以及保密增强。通过保密增强,可以去除掉误码纠错获得的弱安全密钥中可能泄露的信息。近年来,高速和高维量子密钥分发系统快速发展,量子密钥分发系统的时钟频率已经可以达到GHz甚至10GHz。因此,对于保密增强算法有了更高的吞吐率要求。另外,保密增强需要有较大的输入规模来降低有限码长效应,从而提升量子密钥分发系统的安全性。保密增强技术可以利用通用哈希函数族进行实现。自从基于Toeplitz矩阵的哈希函数族被证明是通用哈希函数族,基于Toeplitz矩阵的哈希函数族被广泛应用于保密增强算法中。基于Toeplitz矩阵的通用哈希函数使用O(n)的空间复杂度,并可以采用快速傅氏变换将时间复杂度从O(n2)降低至O(nlog(n))。因此,现有的保密增强技术大多利用快速傅氏变换(FFT)运算加速基于Toeplitz矩阵的哈希函数运算。然后将改保密增强过程基于多种专有设备进行实现以进一步提升其计算吞吐率,其中专有设备主要包括,可编程门阵列、图形处理单元和众核等。现有的保密增强技术主要存在两个方面的问题:一是为了降低有限码长效应提升量子密钥分系统的安全性,因此每次保密增强步骤的输入块为大规模的输入块(通常长度大于106甚至需要108)。而FFT在处理大规模输入块的输入时,其计算速度和计算精度都会降低,无法满足量子密钥分发系统的要求。二是由于专有硬件设备资源的限制,导致无法在保持较高的吞吐率的同时,处理大规模输入。由上可知,传统量子密钥分发系统中基于专有设备和FFT技术实现的保密增强技术无法满足实际量子密钥分发系统的高速实时处理大规模的输入的需求的问题因此,为了能够满足高速量子密钥分发系统中保密增强步骤大规模输入的高速处理的需求,以达到系统的安全性、实时高速生成安全密钥的目标,设计用于量子密钥分发系统中具有大规模输入的高速保密增强算法具有重要意义。
技术实现思路
本专利技术要解决的技术问题就在于:针对现有技术存在的技术问题,本专利技术提供一种系统安全性更好、处理速度更快的用于量子密钥分发系统中支持大规模输入块的高速保密增强方法。为解决上述技术问题,本专利技术采用以下技术方案:一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,使用简化Toeplitz矩阵作为通用哈希函数族,将其中的Toeplitz矩阵进行拆分为多个大小相同的子块,并分别利用快速傅氏变换来加速对应的Toeplitz矩阵块的乘积。作为本专利技术的进一步改进:在将运算拆分为多个子块后,多个子块之间的计算是相互独立的,采用并行的方式进行加速。作为本专利技术的进一步改进:先对输入的参数进行初始化操作,输入的多个参数包括:长度为n的弱安全密钥KW、最终密钥长度r、子块长度m、长度为n-1的随机数序列S;然后求出两个中间变量k,t。作为本专利技术的进一步改进:将数据整合和切块,包括:通过对S前后补零获得A;把KW进行拆分获得KW1和KW2;在KW2之后补零获得W;将A拆分为t+k-1个长度为2m-1的子序列:{Ai|0≤i<t+k-1,Ai=A[im:(i+2)m-1]};将W拆分为t个长度为m的子序列:{Wi|0≤i<t,Wi=W[im:(i+1)m]}。作为本专利技术的进一步改进:在对应的序列上进行基于Toeplitz矩阵的保密增强算法,分别计算kt个Y*ij:Y*ij=f-1(f(Ai+j)*f([Wj,0m]))(0≤i<k,0≤j<t),Yij=Y*ij[0:m],其中f表示快速傅氏变换,f-1表示逆快速傅氏变换。作为本专利技术的进一步改进:将数据合并,输出最终的安全密钥。作为本专利技术的进一步改进:将获得的序列对应求和,获得k个长度为m的序列:{Zi|0≤i<k,Zi=Yi0+…+Yit};把上一步中获得的多个序列按照顺序拼装获得长度为km的序列:Z=[Z0,…,Zk];取出Z中的前r个元素为Z*;求出最终安全密钥Kf为Kf=Z*⊕KW1。与现有技术相比,本专利技术的优点在于:1、本专利技术通过拆分输入的弱安全密钥和随机数序列,将每次的FFT运算的输入长度从n降低至2m-1,使得在有限的硬件和软件资源基础上,可以实现大规模输入的保密增强算法,从而降低量子密钥分发系统中的有限码长效应,提升系统安全性。2、本专利技术在拆分后获得的多个子块,在步骤中的计算是相互独立的,可以采用并行的手段对于子块可以进一步加速处理,从而提升方法的吞吐率。附图说明图1是本专利技术方法的流程示意图。具体实施方式以下将结合说明书附图和具体实施例对本专利技术做进一步详细说明。本专利技术使用简化Toeplitz矩阵作为通用哈希函数族,在此基础上,将其中的Toeplitz矩阵进行拆分为多个大小相同的子块,并分别利用快速傅氏变换来加速对应的Toeplitz矩阵块的乘积。即,通过将其中的Toeplitz矩阵进行拆分并对于各个子块采用FFT进行加速,将FFT的输入规模从n降至2m-1。在将运算拆分为多个子部分后,多个子部分之间的计算是相互独立的,因此可以采用并行的方式进行进一步加速。在具体应用实例中,如图1所示,本专利技术用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,包括以下步骤:步骤S1、初始化输入。步骤S101、输入的子块大小m,长度为n的弱安全密钥KW,最终安全密钥的长度r,长度为n-1的随机数序列S;步骤S102、计算中间变量k,t:k=[r/m],t=[(n-r)/m];步骤S2、将数据整合和切块。步骤S201、构造长度为(k+t)m-1的序列A:A=[0km-r,S,0tm-n+r],其中0km-r表示长度为km-r的0向量,0tm-n+r表示长度为tm-n+r的0向量;步骤S202、将弱安全密钥KW拆分为两个序列KW1(长度为r)和KW2(长度为n-r),KW=[KW1,K];步骤S203、构造长度为tm的序列W:W=[KW2,0tm-n+r]。步骤S204、将A拆分为t+k-1个长度为2m-1的子序列:{Ai|0≤i<t+k-1,Ai=A[im:(i+2)m-1]};步骤S205、将W拆分为t个长度为m的子序列:{Wi|0≤i<t,Wi=W[im:(i+1)m]};步骤S3、在对应的序列本文档来自技高网
...

【技术保护点】
1.一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,其特征在于,使用简化Toeplitz矩阵作为通用哈希函数族,将其中的Toeplitz矩阵进行拆分为多个大小相同的子块,并分别利用快速傅氏变换来加速对应的Toeplitz矩阵块的乘积。/n

【技术特征摘要】
1.一种用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,其特征在于,使用简化Toeplitz矩阵作为通用哈希函数族,将其中的Toeplitz矩阵进行拆分为多个大小相同的子块,并分别利用快速傅氏变换来加速对应的Toeplitz矩阵块的乘积。


2.根据权利要求1所述的用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,其特征在于,在将运算拆分为多个子块后,多个子块之间的计算是相互独立的,采用并行的方式进行加速。


3.根据权利要求1或2所述的用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,其特征在于,先对输入的参数进行初始化操作,输入的多个参数包括:长度为n的弱安全密钥KW、最终密钥长度r、子块长度m、长度为n-1的随机数序列S;然后求出两个中间变量k,t。


4.根据权利要求3所述的用于量子密钥分发系统中支持大规模输入块的高速保密增强方法,其特征在于,将数据整合和切块,包括:
通过对S前后补零获得A;
把KW进行拆分获得KW1和KW2;
在KW2之后补零获得W;
将A拆分为t+k-1个长度为2m-1的...

【专利技术属性】
技术研发人员:吴纯青
申请(专利权)人:广东天镝科技有限公司
类型:发明
国别省市:广东;44

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

1