用于QKD的基于准循环LDPC的自适应密钥协商方法与流程

文档序号:17070077发布日期:2019-03-08 23:14阅读:385来源:国知局
用于QKD的基于准循环LDPC的自适应密钥协商方法与流程
本发明涉及qkd系统的密钥协商
技术领域
,特别涉及一种用于qkd的基于准循环ldpc的自适应密钥协商方法。
背景技术
:qkd系统(量子密钥分配系统)由一个发送端和一个接收端构成,其光学与硬件数据处理部分获得原始密钥信息,这些原始密钥信息通过数据后处理工作,包括对基、密钥协商、保密放大等环节获得一致且安全的最终密钥。在密钥后处理工作中密钥协商的目的是将发送端与接收端密钥中因器件不完善、信道和环境的影响、eve的窃听等因素造成的随机错误比特进行纠正,最终获得一致的密钥。密钥协商方法的评价主要关注三个指标:协商准确度,协商效率,交互通信次数。其中协商准确程度衡量协商过程能否有效降低残留误差,用协商后密钥帧中残留误差比特出现的概率ber及协商后有残留误差比特的密钥帧出现的概率fer来评价,范围在[0,1]取值越低,残留误差越少,协商准确度越高;在密钥协商过程中,公开信道传输的冗余信息中包含着密钥本身的信息,该信息为泄露比特,协商效率则是实际泄露比特数和泄露比特数量的理论下界的比值(大于1),在给定误码率的情况下,该值越小,表示协商效率表现越好;密钥协商中,通信双方在公开信道中相互发送信息,为减少维护专用公开信道资源,需要减少公开信道使用次数。现有技术情况:密钥协商过程需要与经典信道进行通信,交互以获取数据发生了错误的位置信息。这部分信息可以使用原始密钥进行加密,或者通过计算协商效率在后续操作中进行密钥蒸馏处理。现有qkd系统中的密钥协商过程主要采用后一种做法,但针对后一种做法的基于ldpc码的密钥协商方法存在下面几个问题:1、采用无结构ldpc码不易于硬件实现和扩展,需存储整个纠错码,且编译码算法简化或并行度设计困难,从软件及硬件层面实现都存在资源开销大,实用性差的缺点。2、整个密钥协商过程中使用多个纠错码来适应误码率的大范围变化,且纠错码的选择严格依赖于误码参数,协商准确度和协商效率严格依赖于误码参数估计的准确率,容错能力较差,实际应用中性能成阶梯性波动。3、方法中提供的实验条件不利于实际应用且性能结果基于较低的协商准确度(fer在10-2或10-3量级)条件下给出,在实际应用中协商失败的概率较高,直接影响qkd系统的整体性能。技术实现要素:本发明目的在于提供一种用于qkd的基于准循环ldpc的自适应密钥协商方法,以解决现有技术中在密钥协商过程中编译码算法简化或并行度设计困难,从软件及硬件层面实现都存在资源开销大,实用性差的缺点以及协商准确度和协商效率依赖于误码参数估计的准确率,容错能力较差,实际应用中性能成阶梯性波动的技术性缺陷。本发明的技术方案是这样实现的:一种用于qkd的基于准循环ldpc的自适应密钥协商方法,该方法包括以下步骤:1)设置准循环ldpc码h及打孔比特位置p;2)将待协商密钥按照已设置的ldpc码h及打孔位置p进行扩展,得到待编码数据序列;3)对待编码数据序列进行双向编码操作,双向计算校验子s并通过经典信道发送给译码端进行译码操作;4)进行译码,译码成功则完成密钥协商过程,若译码失败则跳转到第5)步骤;5)缩短,根据当前译码失败后的变量节点的对数似然比信息的绝对值大小进行比特缩短的选择,并将选择的比特位置信息经过经典信道发送给编码端,并执行第6)步;6)根据收到的缩短比特位置将编码序列对应位置的比特信息经经典信道发送给译码端进行新一轮的译码操作,跳转到第4)步,更新所收到的比特初始信息并执行译码;7)重复进行第4)、5)、6)步直到译码成功或达到密钥协商流程的终止条件。优选地,所述准循环ldpc码h的设置为基于有限域构造,辅以掩模、散列、叠加,并对码h进行了消环操作,根据使用码h的规模大小进行最小环长的约束和限制,构造性能和结构上优化的码。优选地,所述打孔采用有意删除算法进行ldpc码的打孔,对所有可能的位置进行打孔,该打孔方式添加评估打孔图样的价值函数来针对性的进行打孔位置的取舍。优选地,所述缩短方法根据译码收敛情况选择最不确定的比特位进行公开,单次缩短的比特公开数量基于准循环ldpc的基础矩阵码率及单次处理密钥量进行优化选择,避免公开多余的比特信息。优选地,所述译码采用经典通信中的修正的最小和译码算法,采用软信息进行译码。与现有技术相比,本发明有以下有益效果:1、在qkd密钥协商中采用准循环ldpc码作为纠错码,硬件实现复杂度低,存储资源开销小,并行度高,例如设计0.5码率12700码长的码,采用基矩阵50x100,扩展127倍即可,整体上硬件实现只需要计算或者存储50x100的基矩阵(基矩阵为稀疏矩阵),可以达到127的计算并行度,并且硬件逻辑资源可以灵活调整,根据吞吐量需求进行并行度设计;2、本发明的密钥协商过程中采用自适应交互设计,容错能力强,算法稳定性高,无需对参数估计的依赖等特点,整个密钥协商过程中使用一个纠错码就可以适应qkd应用中的误码率的大范围变化(0.5%~11%),整个系统中只需要存储一个纠错码的基矩阵即可,纠错不需要依赖于误码参数的估计,且协商效率在各个误码区间基本在同等水平,容错能力强,适用性高;3、本发明的密钥协商过程是根据实时的协商准确度情况动态控制双方的通信交互,在实际应用中协商效率,密钥处理速率可动态调节,算法灵活性高,普适性强。附图说明图1为本发明用于qkd的基于准循环ldpc的自适应密钥协商方法的流程图;图2为本发明实施例的密钥协商过程中信息序列变化示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明进行清楚、完整地描述。如图1所示,一种用于qkd的基于准循环ldpc的自适应密钥协商方法,该方法包括以下步骤:1)设置准循环ldpc码h及打孔比特位置p;2)将待协商密钥(筛后密钥)按照已设置的ldpc码h及打孔位置p进行扩展,得到待编码数据序列;3)对待编码数据序列进行双向编码操作,双向计算校验子s并通过经典信道发送给对端(译码端)进行译码操作;4)进行译码,译码成功则完成密钥协商过程,若译码失败则跳转到第5)步骤;5)缩短,根据当前译码失败后的变量节点的对数似然比信息的绝对值大小进行比特缩短的选择,并将选择的比特位置信息经过经典信道发送给编码端,并执行第6)步;6)根据收到的缩短比特位置将编码序列对应位置的比特信息经经典信道发送给译码端进行新一轮的译码操作,跳转到第4)步,更新所收到的比特初始信息并执行译码;7)重复进行第4)、5)、6)步直到译码成功或达到密钥协商流程的终止条件。针对准循环ldpc码设计准循环ldpc码的设计基于有限域构造,辅以掩模(masking)、散列(dispersion)、叠加(superposition),在该基础上本方案中对于码的设计加上了消环操作,根据使用码的规模大小进行最小环长的约束和限制,来构造性能和结构上更好的码。针对掩模矩阵m的设计,本方案采用基于密度进化的方法优化度序列(λ,ρ),利用这个度序列采用peg算法生成掩模矩阵。表1给出针对100次迭代优化的一组不同码率的度序列分布实例。表1:准循环ldpc码掩模矩阵的度分布(100迭代)码率度分布(点的分布)threshold0.5l(x)=0.3x2+0.52x3+0.12x6+0.02x15+0.04x310.96310.55l(x)=0.3x2+0.52x3+0.12x6+0.02x15+0.03x31+0.01x350.082060.60l(x)=0.34x2+0.27x3+0.25x4+0.07x9+0.03x15+0.04x200.070980.65l(x)=0.34x2+0.21x3+0.25x4+0.12x6+0.04x15+0.04x200.057890.70l(x)=0.34x2+0.21x3+0.25x4+0.10x5+0.05x15+0.05x200.045940.75l(x)=0.14x2+0.46x3+0.27x4+0.04x9+0.09x200.034840.80l(x)=0.12x2+0.49x3+0.23x4+0.06x9+0.10x150.025900.85l(x)=0.10x2+0.46x3+0.21x4+0.08x7+0.08x8+0.02x12+0.05x150.017420.90l(x)=0.10x2+0.32x3+0.34x4+0.09x7+0.08x8+0.07x90.00984打孔方法的设计采用基于一步到位的有意删除算法(intentionalpuncturingalgorithmbasedonone-stepuntainted)进行ldpc码的打孔,该方法对所有可能的位置进行打孔,对于打孔位置选择的灵活性欠缺。在此基础上本方案中的打孔方式在该方法的基础上添加了评估打孔图样的价值函数来针对性的进行打孔位置的取舍。定义r为ldpc码码率,度分布为(λ,ρ),打孔后码率为ψ,ψ{λ(x),ρ(x)}表示所有可能的打孔矩阵的度分布的候选集合。评估打孔图样的价值函数为:其中c0是辅助参数,用于修正价值函数。对所有打孔图样可以将评价上述价值函数的大小转换为求解的优化问题。通过对可打孔位置进行价值大小的计算排序,灵活按照所需打孔的数量优先选择具有更高价值的位置进行打孔。针对表1中给出的实施例,表2给出了一组码长12700的各个码基于上述改进的打孔方法得到的打孔个数实施例(表中给出所对应码可参考的最大打孔个数及最小打孔数,实际应用可以根据需求按照价值权重选取所需打孔个数位置)。表2.上述方法得出的准循环ldpc码对应的打孔个数情况码率r0.50.550.60.650.70.750.80.850.9pmax3148276523972051180515041220905597pmin2119195420211805166416051253956726基于ldpc的译码方法本实施例中的译码算法采用现有的经典通信中的修正的最小和译码算法,采用软信息进行译码。内部算法的处理基本一致,本方案中采用的译码算法在算法的应用上在软信息的初始化及译码成功与否的判决上有差别:1.初始化:用e表示量子信道估计的误码率,初始信道信息pi如下:2.判决:在译码过程结束后,根据与编码端相同的校验矩阵h计算校验子s并与编码端的s比较,若相同则译码成功,否则进行新的译码操作。下面将介绍本方案中的其他模块。编码方法h和p分别表示根据上述对应实施例得到的校验矩阵和打孔位置序列,令x表示对基后发送端的筛后密钥,x={x1,x2,…,xk}t(k<n),将x按照p位置插入随机数补充至n阶向量:x'={x1,x2,…,xk,0,…,1}t。则发送端进行编码操作,计算校正子s=hx'并通过经典可信信道直接发送校验子s到接收端。该编码方案只需要进行一个稀疏矩阵的乘法操作来计算校验子,而不需要像传统编码算法那样产生成生成矩阵进而与信息序列相乘产生码字,从而,避免编码复杂度高的问题。同时由于h是通过基矩阵bmxn进行循环扩展q-1倍得到的,且bmask也是一个稀疏的矩阵,设b中存在nb个非0元素(远小于n),则该编码方案的复杂度为(nb-m)*(q-1)次异或操作,其中m,n分别表示为b矩阵的行数和列数,q表示循环扩展因子。而相同校验矩阵规模下,无结构的纠错码采用传统编码需要约(n-m)*n*(q-1)次异或操作。缩短方法本实施例中,缩短实质上是在密钥协商过程中基于译码过程中的收敛情况选取一些特定位置的原始信息进行公开,以泄露尽量少的信息来帮助两端获取一致的密钥。实际应用中,根据变量节点对数似然比信息(log-likelihoodratio,llr)的绝对值大小作为缩短比特的选择依据。定义所需缩短数量为d,选择前d个序号所代表的系统位进行缩短。在密钥协商过程中,对所使用的ldpc码进行译码计算,根据译码迭代的llr绝对值大小作为置信度特征,并对系统比特按照从小到大进行排序,存入置信表t中,t=(t0,t1,t2,…,tk-1);发送端根据所需要缩短的个数d,从待缩短的置信列表t中选择前d个位置的比特发送给接收端,接收端根据所收到的信息执行译码,译码时将对应比特初始信息设置为无穷大。编译码双方的自适应方式在译码失败后输出最终译码迭代次数下各比特信息的对数似然比llr,对llr绝对值进行统计排序,定义为l={l1,l2,…lk},根据当前所使用的ldpc码码率和对应的缩短比特个数z,选取前z个记录校验比特位置的序列d发送到发送端,发送端根据收到的位置信息将对应位置的信息序列x[d]发送到译码端,译码端在译码时将这些发送来的比特序列的初始信道信息设置为无穷大执行新的译码过程。每次交互的缩短比特都作为纠错泄露信息量计入到协商效率的计算中。实施例中采用的缩短比特个数根据实际应用中交互次数,性能等指标进行优化调整。根据本方案中的方法及策略,表3中给出采用两个纠错码实现本方案的初步性能情况(在10^9数据量下残余误码ber及fer均为0)。表3基于准循ldpc的自适应密钥协商方法实例性能如图2中给出密钥协商算法中密钥在不同阶段的数据形式变化。综合本发明的用于qkd的基于准循环ldpc码的自适应密钥协商方法可知,本发明的在qkd密钥协商中采用准循环ldpc码作为纠错码,硬件实现复杂度低,存储资源开销小,并行度高,例如设计0.5码率12700码长的码,采用基矩阵50x100,扩展127倍即可,整体上硬件实现只需要计算或者存储50x100的基矩阵,可以达到127的计算并行度,并且硬件逻辑资源可以灵活调整,根据吞吐量需求进行并行度设计;本发明的密钥协商过程中采用自适应交互设计,容错能力强,算法稳定性高,对参数估计无依赖等特点,整个密钥协商过程中使用一个可以适应qkd应用中的误码率的大范围变化(0.5%~11%),整个系统中只需要存储一个纠错码的基矩阵即可,纠错不需要依赖于误码参数的估计,且协商效率在各个误码区间基本在同等水平,容错能力强,适用性高;本发明的密钥协商过程是根据实时的协商准确度情况动态控制双方的通信交互,在实际应用中协商效率,密钥处理速率可动态调节,算法灵活性高,普适性强。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1