Cascade类误码协商算法的优化方法技术领域
本发明涉及一种量子密钥分发过程中的误码协商算法,是一种对Cascade类误码
协商算法的优化方法,属于量子通信技术领域。
背景技术
误码协商算法的作用是纠正量子密钥分发(Quantum Key Distribution,QKD)中
筛选码中的错误比特。误码协商是QKD后处理中最受关注的环节。
现有的误码协商算法包括:BBBSS算法、Cascade类算法、Winnow算法、基于LDPC的
误码协商算法和基于极化码的误码协商算法。早期的误码协商算法,如BBBSS算法和
Cascade类算法,关注如何尽可能地降低暴露信息量,后来提出的Winnow算法主要关注于如
何提升误码协商算法的处理速率,近期提出的误码协商算法,如基于LDPC的误码协商算法、
基于极化码的误码协商算法,关注于如何在保证低暴露信息量的同时,提高处理速率。但是
暴露信息量与处理速率通常是一对矛盾体,高处理速率往往意味着高暴露信息量。目前,在
暴露信息量方面,Cascade类算法具有最好的性能。
目前的Cascade类误码协商算法主要包括三种:原始Cascade算法、Cascade-Yan算
法和Cascade-Jesus算法。
原始Cascade算法由Brassard等于1993年提出,其方法是在Alice与Bob间执行多
轮纠错,先各自进行分组,比对奇偶校验码,不一致的分组采用二分搜索进行纠错,其仅对
具有奇数个错误的分组有效。具体参见Brassard G,Salvail L.Secret-key
reconciliation by public discussion[C],advances in Cryptology—EUROCRYPT’93,
1994:410–423。
Cascade-Yan算法是对原始Cascade算法的改进,其改进包括两方面:一是通过修
改二分搜索过程中记录的分组信息,使得历史分组集合中的分组长度尽可能地短,减少纠
正错误所暴漏的信息量;二是参数优化,在经过第二轮纠错之后,密钥串中仅含有很少的错
误,因而将第二轮之后的分组长度变为具体参见Yan H,Ren T,Peng X,et
al.Information reconciliation protocol in quantum key distribution system[C]
.Natural Computation,2008.ICNC’08.Fourth International Conference on,2008,3:
637–641。
Cascade-Jesus算法则是通过大量的实验给出了Cascade算法的多种配置,算法的
执行过程与原始Cascade相同,具体参见Martinez Mateo J,Pacher C,Peev M,et
al.Demystifying the information reconciliation protocol cascade[J].Quantum
Information&Computation,2015,15(5&6):453–477。
发明内容
对于筛选码速率较低的QKD系统,如远距离QKD系统与测量设备无关QKD系统,误码
协商算法的处理速率很容易满足,如何尽可能地降低其暴露信息量则是关键问题。针对此
问题,本发明提供一种降低暴露信息量的Cascade类误码协商算法的优化方法。
本发明的Cascade类误码协商算法的优化方法,所述Cascade类误码协商算法为:
对Alice和Bob的密钥串执行I轮纠错,I≥2,每轮纠错的方法为:
Alice和Bob分别对各自的密钥串进行分组,获取所有分组的奇偶校验码,Alice和
Bob交换奇偶校验码,Alice和Bob将自己的奇偶校验码与接收到的奇偶校验码进行比对,对
奇偶校验码不一致的分组进行纠错;
所述优化方法包括:
当i=2,…,I,在执行第i轮纠错的最后一个分组时,Alice与Bob无需交换奇偶校
验码,根据该轮之前的分组的奇偶检验码的比对,确定最后一个分组的奇偶检验码是否相
同。
所述对奇偶校验码不一致的分组进行纠错时,当回溯块的大小为2,直接将Alice
或Bob的回溯块翻转,即完成纠错。
所述Alice和Bob分别对各自的密钥串进行分组:
Alice和Bob按照选择的分组长度和随机函数对各自的密钥串进行随机置乱和分
组,所述随机函数用于对各自的密钥串进行随机置乱。
每轮纠错的方法还包括:
记录包含错误位置的分组信息。
当i=2,…,I,对奇偶校验码不一致的分组进行纠错:
当回溯块的大小不等于2时,根据记录包含错误位置的分组信息,采用二分搜索方
法进行纠错。
本发明的有益效果在于,本发明从两个方面优化Cascade类算法以提升它们的协
商效率性能。首先,对于第i轮(i≥2)纠错的最后一个分组,Alice与Bob的奇偶校验码的一
致性可以由前面的分组的情况推导出来,因而不需要进行奇偶校验码的传递与比对,降低
暴露信息量。其次,在回溯纠错时,对于长度为2的分组可以不执行BINARY过程而直接完成
纠错,降低暴露信息量。本发明适用于远距离QKD系统、测量设备无关QKD系统等筛选码速率
较低的QKD系统。
附图说明
图1(a)为一种Cascade-Yan算法中,块长为2的回溯快数量与帧长N、量子比特误码
率QBER的关系。
图1(b)为一种Cascade-Jesus算法中,块长为2的回溯快数量与帧长N、量子比特误
码率QBER的关系。
图2(a)为将本发明应用于原始Cascade算法后,协商效率比较示意图,其中f表示
协商效率,N表示帧长,QBER表示量子比特误码率。
图2(b)将本发明应用于原始Cascade算法后,与图2(a)对应的协商效率提升比例
示意图,其中IR表示协商效率改善比。
图3(a)为将本发明应用于Cascade-Yan算法后,协商效率比较示意图,其中f表示
协商效率,N表示帧长,QBER表示量子比特误码率。
图3(b)将本发明应用于Cascade-Yan算法后,与图3(a)对应的协商效率提升比例
示意图,其中,IR表示协商效率改善比。
图4(a)为将本发明应用于Cascade-Jesus算法的opt.(7)后,协商效率比较示意
图,其中f表示协商效率,N表示帧长,QBER表示量子比特误码率。
图4(b)将本发明应用于Cascade-Jesus算法的opt.(7)后,与图4(a)对应的协商效
率提升比例示意图,其中IR表示协商效率改善比。
具体实施方式
由于本发明是对Cascade类误码协商算法的优化,Cascade类误码协商算法包括原
始Cascade算法、Cascade-Yan算法和Cascade-Jesus算法。首先介绍一下原始Cascade算法:
原始Cascade算法在Alice与Bob间执行I轮纠错,I由Alice和Bob在协商前决定,其
一般与QBER有关。原始Cascade算法包括如下步骤:
步骤一:在第一轮纠错中,Alice和Bob选择一个分组长度k1和一个随机函数
对密钥串进行随机置乱与分组,第v组比特串的位置为
N为密钥串的长度。此处随机函数f1的作用是对原始密钥进行随机置乱,使误码分布的更加
均匀。Alice计算所有分组的奇偶校验码并发送给Bob。Bob也计算所有分组的奇偶校验码,
并将这些校验码与接收到的校验码进行比对。对校验码不一致的分组使用BINARY过程纠正
错误。此时,Bob的所有分组均含有偶数个错误,可能为0个错误。Alice与Bob均保存这些分
组的位置信息,记为集合并初始化i=2;
步骤二:进行第i轮纠错:
步骤二一:在第i轮纠错中,Alice和Bob选择一个分组长度ki和一个随机函数
对密钥串进行随机置乱与分组,第v组比特串的位置为
Alice与Bob保存这些分组的位置信息,记为集合并初始化j=1;
步骤二二:对于第j个分组,Alice计算该分组的奇偶校验码,并发送给Bob;Bob也
计算第j个分组的奇偶校验码,并与接收到的奇偶校验码进行比较,如果不一致,则使用二
分搜索方法纠正错误,设该错误位置为l1。如果一致,则跳转到步骤二四;
步骤二三:记集合P1为第1~(i-1)轮所有记录的历史分组中包含错误位置l1的分
组信息,即由于错误位置l1的发现,集合β1=P1中的分组均具有
奇数个错误;Alice与Bob从集合β1中选取长度最短的分组使用二分搜索方法纠正错误,设
该错误位置为l2。同样记集合P2为第1~(i-1)轮所有记录的历史分组中包含错误位置l2的
分组信息,即则集合β2=(β1∪P2)\(β1∩P2)中的分组均含有奇数
个错误。如果β2≠φ,则Alice与Bob从集合β2中选取长度最短的分组使用二分搜索方法纠正
错误,并由错误位置构造集合P3继而构造出含有奇数个错误的分组的集合β3。该过程一直进
行直至某个βh=φ;
步骤二四:如果Alice与Bob令j=j+1,跳转至步骤二二;否则跳转至
步骤三;
步骤三:如果i<I,则Alice与Bob令i=i+1并跳转至步骤二;否则,算法完成,退
出。
原始Cascade算法记录了纠正过程中的所有分组,这些分组均具有偶数个错误,利
用这些历史分组以及新发现的错误,可以回溯纠正更多的错误,从而减少了暴漏信息量,提
高协商效率。采用二分搜索方法纠错的过程包括如下步骤:
步骤1:如果比特串x与y的长度为1,即Len(x)=Len(y)=1,则Bob翻转比特y的值,
BINARY过程结束;否则执行步骤2;
步骤2:Alice将比特串x一分为二,记为x=x1x2,其中
Alice计算子串x1的奇偶校验码
并将其发送给Bob;
步骤3:Bob同样将比特串y一分为二,记为y=y1y2,其中
Bob计算子串y1的奇偶校验码并
与接收到的进行比较;
步骤4:如果说明子串x1与y1可能没有错误或者具有偶数个错误,而子
串x2与y2具有奇数个错误,则Alice令x=x2且Bob令y=y2;如果不等于说明子串x1与y1
具有奇数个错误,而子串x2与y2可能没有错误或者具有偶数个错误,则Alice令x=x1且Bob
令y=y1,转到步骤1继续执行。
Cascade-Yan算法和Cascade-Jesus算法都是在原始Cascade算法上的改进,这三
种方法均需要对Alice和Bob的密钥串执行I轮纠错,I≥2,每轮纠错的方法为:
Alice和Bob分别对各自的密钥串进行分组,获取所有分组的奇偶校验码,Alice和
Bob交换奇偶校验码,Alice和Bob将自己的奇偶校验码与接收到的奇偶校验码进行比对,对
奇偶校验码不一致的分组进行二分搜索纠错。
本实施方式针对上述Cascade类误码协商算法的优化方法,包括:
第一,当i=2,…,I,在执行第i轮纠错的最后一个分组时,Alice与Bob无需交换奇
偶校验码,根据该轮之前分组的奇偶检验码的比对,确定最后一个分组的奇偶检验码是否
相同。
在第i轮第v个分组纠错过程中,Cascade类算法总是纠正偶数个错误,包括0个错
误。而经过第一轮纠错之后,对于第i轮的最后一个分组,Alice与Bob的奇偶校验码的一致
性可以由前面的分组的情况推导出来,因而不需要进行奇偶校验码的传递与比对。在已有
的Cascade类算法中,第i轮最后一个分组的奇偶校验码的异同,总是通过奇偶校验码交互
的方式确定。因此本实施方式的优化可以减少第i轮一比特的暴露信息量。对于整个
Cascade类算法,本实施方式的优化可减少I-1比特的暴漏信息量,其与帧长、量子比特误码
率QBER均无关。
第二,对奇偶校验码不一致的分组进行纠错时,当回溯块的大小为2时,直接将
Alice或Bob的回溯块翻转,即完成纠错。
本实施方式采用回溯纠错,记Alice端回溯块为a1a2,Bob端回溯块为b1b2,b1为刚翻
转纠正的比特,即a1==b1。由a1⊕a2≠b1⊕b2,即a2⊕b2≠a1⊕b1=0,可推断a2与b2不同。因
此Bob直接翻转b2即可,而无需执行二分查找过程,减少了一个信息比特的泄露。对于整个
Cascade类算法,该优化减少的暴漏信息量为回溯纠错时块长为2的回溯块的数量。一般地,
帧长越长、QBER越高,块长为2的回溯块的数量越多。图1给出了Cascade-Yan算法和
Cascade-Jesus算法块长为2的回溯块数量与帧长N、QBER的关系。
本实施方式中,当回溯块的大小不等于2时,依然采用二分搜索方法进行纠错。
实验验证:
考察不同帧长N(从1000到20000,步长为1000)、不同量子比特误码率(Quantum
Bit Error Rate,QBER)(从0.01到0.15,步长为0.01)条件下,从两个指标分析本发明的效
果。这两个指标分别为协商效率以及协商效率改善比。协商效率定义如下:
其中N为帧长,M为协商过程中的暴露信息量,psuc为协商后Alice与Bob密钥串一致
的概率,X与Y分别为Alice与Bob协商前的密钥串。f的值越小意味着协商效率越高,其理论
极限为1。协商效率改善比定义如下:
其中forg与fpro分别为原算法与应用本发明后算法的协商效率。IR值越大意味着本
发明对Cascade类算法的改善效果越明显,IR>0意味着本发明提升了原算法的协商效率,IR
<0意味着本发明降低了原算法的协商效率,IR=0意味着本发明对原算法没有影响。
图2(a)和图2(b)列出了本发明对原始Cascade算法的协商效率的影响。由图2(a)
可以看出,应用本发明前后的原始Cascade算法的协商效率具有相同的变化趋势,且应用本
发明后的原始Cascade算法总是具有更好的协商效率。从图2(b)可以看出,协商效率最大提
升比例在帧长N=1000,QBER=0.01时取得,其值为3.49%;最小提升比例为0.02%。
图3(a)和图3(b)列出了本发明对Cascade-Yan算法的协商效率的影响。由图3(a)
可以看出,应用本发明前后的Cascade-Yan算法的协商效率具有相同的变化趋势,且应用本
发明后的Cascade-Yan算法总是具有更好的协商效率。从图3(b)可以看出,协商效率最大提
升比例在帧长N=1000,QBER=0.01时取得,其值为10.49%;最小提升比例为0.15%。
图4(a)和图4(b)列出了本发明对Cascade-Jesus算法中opt.(7)的协商效率的影
响。由图4(a)可以看出,应用本发明前后的协商算法的协商效率具有相同的变化趋势,且应
用本发明后的算法总是具有更好的协商效率。从图4(b)可以看出,协商效率最大提升比例
在帧长N=1000,QBER=0.01时取得,其值为14.14%;最小提升比例为0.23%。