基于重发机制的量子密钥分发协议
2015-12-23王育齐
王育齐,佘 堃
(1.电子科技大学 计算机科学与工程学院,四川 成都611731;2.闽南师范大学 计算机学院,福建 漳州363000)
0 引 言
随着Bennett和Brassard提出了第一个量子密钥分发(quantum key distribution,QKD)协议 (简称BB84协议),标志着量子密码研究的真正开始。随后,E91 和B92 等QKD 协议被陆续提出,这3 大协议都被验证为无条件安全[1-3]。QKD 协议的提出解决了 “一次一密”的密钥问题,实现了该加密算法真正的无条件安全。不管QKD 协议是用来分发随机密钥串还是确定的密钥串都存在以下问题[4,5]:由于信道衰减、噪音、窃听等,且光子信号比较微弱又不能够放大和检测设备性能等问题,导致在接收端出现光子丢失现象,这必然会影响协议密钥分发的效率。对于前者,既可以根据具体的实验环境估计出光子的损耗率进行校正,也可以采用本文提出的重发机制;而对于后者,则只能采用重发机制完成确定的密钥分发,完善密钥管理。尽管有学者从量子纠缠 (包括高维纠缠)、纯化以及交换、预先声明基和提高密钥生成率等方面做的大量的研究,取得不错的成果,提高了密钥分发效率[6-10],但是在接收端,仍然存在光子丢失的问题,这对于QKD 协议来说是一个不小的损失,尤其是确定性QKD。利用重发机制 “弥补”丢失光子,提高QKD 协议分发效率,具有一定的理论创新性。
本文基于BB84协议并对其进行了改进,提出了一种基于重发机制的QKD 协议。当Bob检测到有光子缺失时,要求Alice重发缺失的光子。该重发过程还是一个BB84过程,安全性与其等价,同时,由于没有使用量子内存,实验上是可以实现的。由于重发过程增加了Bob收到的有效二进制位,扩大了用来窃听检测的子区间,提高了窃听检测安全性的同时也提高密钥分发的效率。
1 BB84协议分析
BB84协议分为3个阶段,第一个阶段为量子传输,主要是Alice制备随机的二进制位串、随机选择的基序列和相应的随机光子序列,Bob用随机产生的测量基测量光子序列得到了二进制位串;第二个阶段为公共信道上的协商,主要是Alice确定Bob的哪些测量基是和自己一致的,双方保留基一致的测量结果,并在其中随机取出一部分用来窃听检测,若Bob端产生的错误率小于某个给定的阈值,协议继续进行,否则重新开始;最后将Bob用来窃听检测的二进制位删除,将最后剩下的二进制串作为最终的初始密钥,也称为筛选后的数据。
在BB84协议的执行过程中R (Rectilinear)代表线性偏振,它包括 {→,↑}两个基矢,即光子做0°和90°线性偏振;D (Diagonal)代表对角偏振,它包括 {↗,↖}两个基矢,即光子做45°和135°对角偏振,故有时也称BB84为四态协议;编码规则是 {→,↗}→0, {↑,↖}→1;在表1中,第一阶段最后一行中,空白代表没有检测到光子,测量没有输出,即光子缺失了,这些缺失的光子对协议分发效率影响较大。
2 提出新的协议
通过对BB84协议的分析可知,由于光纤色散与损耗对光量子传输的影响,光子在传输过程中可能会丢失或没有被检测器检测到,也有可能是由于窃听导致,不管哪种原因都有可能使Bob接收到的光子序列中出现空白,这对协议的密钥分发效率影响很大。因为本身BB84协议的效率较低 (选对测量基的概率为50%),再加上为了检测窃听还得拿出一部分光子进行检测,到最后实际用来作为密钥的位就非常少了,严重影响了协议密钥分发的效率。
2.1 协议流程
当Bob发现自己接收到的光子串中有缺失的情况,即该位置的光子要么在传输过程中丢失了,要么没有被自己的探测器检测到,或者是由于窃听所致,Bob 都会要求Alice重新发送相应丢失位对应的光子,重发过程是基于BB84协议的。该协议执行环境同BB84一样,下面是该协议的描述:
假设Alice生成要传送的随机二进制串放在数组a,随机选择的基放在数组b,所对应生成的随机光子序列放在数组c;Bob随机生成用来接收的基序列,并将其放在数组d。数组e,f 和g 分别用来存放Bob检测到的光子序列、相应的二进制位串和测量后缺失光子的位置;重发次数k=0。
(1)Alice将数组c 的内容依次通过量子信道发送给Bob,相邻的时间间隔为Δτ;
(2)Bob用d 中的测量基依次对接收到的光子进行测量,得到数组e,相对应的二进制串f;
(3)若Bob发现有光子缺失时,用数组g 记录缺失光子在序列中的位置;
(4)Bob检测数组g,若为空,则没有需要重发的光子,此时该协议退化为BB84协议;若g 不为空,则Bob将g 的内容发给Alice,要求Alice根据g 的内容,重新随机生成所需要的二进制位、对应的基和相应的光子序列,利用BB84协议进行重传,直到所有缺失的光子都得到了检测或需要重发光子的次数达到了一个阈值k0后停止重发操作,具体由下面步骤完成:
(5)Bob将他最终的测试基序列d 通过经典信道发送给Alice;
(6)Alice通过比较b和d 中的内容是否一致,并将比较结果告诉Bob;
(7)通信双方保留基一致的测量结果,放弃基不一致的测量结果;
(8)通信双方检测窃听。记ξ0 为错误率的阈值,若出错率ξ≤ξ0 ,说明由窃听引入的错误在可接受范围内,并继续执行下面的步骤,否则算法异常终止;
(9)通信双方按照事先约定好的规则将最终接收到的光子编码成二进制比特串,由此获得筛选后的原始密钥;
(10)利用数据协商 (主要用来纠错)和密性放大技术(降低Eve获得信息量)对原始密钥进行处理,获得最终的安全密钥,完成密钥分发任务,算法正常结束。
2.2 协议模拟
为方便进行理论分析,令:|→>=|0>,|↑>=|1>,分别代表0°和90°的R 偏振光子,满足正交性;|↗>=(|0>+|1>)/,|↖>=(|0>-|1>)/,分别代表45°和135°的D 偏振光子,同样满足正交性,但R和D 是非正交的满足测不准原理。其中,|0>≡(1,0),|1>≡(0,1)。可以验证: <→|↗>2= <→|↖>2= <↑|↗>2= <↑|↖>2=1/2,即两组基的交叠概率为1/2,意思是说当获得测量结果是|0>态时,有可能对方发送的就是|0>态 (选对了),也有1/2的可能性是从(|0>+|1>)/或(|0>-|1>)/态得到,而从后者中得到|0>的概率也是1/2,这样选错后得到的|0>的概率就是1/4。
假设Alice生成的a= {0,1,1,0,1,1,0,0,1,0,1,1,0,0,1},b= {‘D’,‘R’,‘D’,‘R’,‘R’,‘R’,‘R’,‘R’,‘D’,‘D’,‘R’,‘D’,‘D’,‘D’,‘R’},c= {‘↗’,‘↑’,‘↖’,‘→’,‘↑’,‘↑’,‘→’,‘→’,‘↖’,‘↗’,‘↑’,‘↖’,‘↗’,‘↗’,‘↑’};Bob随机生成的d= {‘R’,‘D’,‘D’,‘R’,‘R’,‘D’,‘D’,‘R’,‘D’,‘R’,‘D’,‘D’,‘D’,‘D’,‘R’}。协议模拟时的e={‘↑’,‘?’,‘↖’,‘?’,‘↑’,‘↗’,‘↗’,‘→’,‘?’,‘↑’,‘↑’,‘↖’,‘?’,‘↗’,‘↑’}, “?”表示光子的缺失;相对应的二进制串f= {1,,1,,1,0,0,0,,1,1,1,,0,1},“”表示空缺位,即没有接收到任何光子;g= {2,4,9,13}。
新协议的模拟执行过程如表1 所示。需要说明的是,首先,该协议执行过程中使用了与BB84协议相同的数据,主要是为了方便与其比较;其次,该协议在执行过程并没有使用量子内存,流程中用来存放光子序列的数组c和e 只是为了利用数组下标方便描述光子位置,实际上双方都没有存储发送或接收的光子序列。对于是否有光子缺失,完全可以在Bob接收到的二进制序列中观察到;最后,是对k0和ξ0 的说明。其中k0可以通过简单计算得到:一种是根据Bob接收到光子的比例u (u=11/15)和缺失光子数l,估算出k0≈l/u;另外一种就是k0取一个经验值,如k0=3 (因为一次猜中的概率是1/2,两次以上猜中的可能性非常大,故估计重传3次就可以了)。ξ0 是Eve获得最大的窃听信息时在Bob端引起的最小错误率,这跟Eve采用的窃听策略是有关系的,Molotkov和Gottesman等对此已经做了具体研究。
表1 新协议的模拟执行过程
2.3 协议分析
新协议是在Bob 测试到有缺失光子的情况下,要求Alice将其对应位置的光子重新发送,直到满足相关要求后停止发送,所以安全性是等价于BB84协议。由于Bob只要求Alice发送指定位置的光子,Alice根据数组c 的下标,重新随机产生相应的光子而无需存储以前产生的,所以没有用到量子内存,实验上没有增加难度,也和BB84一样。在密钥分发的效率上,该协议优势明显,首先通过重传丢失的光子,Bob接收到的有效信息增加了,自然密钥分发效率会提升;其次用来检测窃听的子区间会变大,检测率会提升,增加了一定的安全性;最后随着Bob端有效位的增加,最后生成的原始密钥也变长了。
通过对表1的计算可知:没有窃听时 (理想情况下),对于BB84协议,效率η=6/15,对于新的QKD 协议,效率η=9/15;对于最后获得原始密码长度也由原来的4位上升到6位,提升了50%。由于Alice随机生成重传的光子序列,Bob随机选择测量基,但Bob仍然有1/2 概率选对测量基,则Bob通过重传缺失光子序列后,可以多获得最少lu/2 个有效光子,最多l个有效光子。所以在重传后Bob获得有效光子数将会增加,用来作为初始密钥的二进制串自然也会变长,密钥分发效率显然优于BB84协议。
2.3.1 安全性
量子误码率QBER (quantum bit error rate,QBER)定义为筛选后的数据 (协议中第9步产生的初始密钥数据)中码值错误所占的比例,码值错误是指接收方码值 (0 或1)不同于发送方码值,公式如下:QBER=Nerr/Nsift,其中Nsift是筛选后的数据个数,Nerr是Nsift中码值错误的个数。
假定Eve选择全部截取Alice发送的光子串,测量后直接发送给Bob。由于Eve不知道Alice所选的基,他只能随机选择测量基,选对的概率为50% (也就是Eve猜对码值的概率为50%),选对后将测量的结果发送给Bob不会造成错误;但选错后 (选错概率也是50%),由于交错概率1/2的存在,Eve仍然有25%的概率猜对码值,这样Eve就有75%的概率猜对Alice发送的码值 (0或1),猜错码值的概率是25%。而对于筛选后的数据Eve确切知道基及码值的概率仍为1/2,余下的码值对错各占一半。所以,由于Eve的窃听将引起25%的QBER,这很容易被通信双方发觉。
从表2的数据表中可以看出,由于Eve的窃听,Bob随机的选择第4,9,13位置的二进制数与Alice进行窃听检测,发现第4位二进制错误,错误率为q=1/9≈11%。双方认为可以继续通信,并舍弃用来检测的3 位二进制,最终获得了筛选后的密钥串。注意,该密钥串中可能还有与Alice不一致的二进制位,安全性是比较差的,需要使用数据协商进行纠错和密性放大后才能获得可靠的保密数据,即最终的密钥。
表2 模拟窃听过程中的数据变化
注:在表2中斜体加粗的数据代表Alice重发的缺失光子经过Eve和Bob测量后的二进制位;斜体加粗N 表示所选子区间上Alice和Bob数据不一致,即发现了窃听。
2.3.2 数据协商
在协议的第10步需要利用数据协商对筛选后获得的数据进行纠错,因为在这个数据中 (第三位错误)的误码率达到了q=1/6≈17%,不能直接使用,必须使用数据纠错找出其中的错误,将所有错误清除或使误码率降低到适宜使用,同时还要降低Eve在此过程所获得信息量,并保留尽量多的有用数据。
数据协商采用的方法通常有二分纠错 (binary protocol)、级联纠错(cascade protocol)和汉明码数据协调(winnow protocol)。也可以借鉴张盛等提出的错误预测模型分析[11],但由于在表2 中筛选后的数据中只有一个错误,故采用二分纠错。首先,利用一个六位的随机排列(假定排列为a5a4a3a6a1a2)对Alice 和Bob 的筛后数据(分别是110101 和111101)进行重排列,分别得到Sa和Sb,并记录相应的位置;接着数据分组,由于误码率为q=1/6,每组数据长度h≈1/2q=3,分别将Sa和Sb分为两组;最后Alice和Bob各自检测每组数据的奇偶性并在公开信道进行比较。若奇偶性不相同的哪一组,则肯定存在错误,此时另外一组就不用再进行奇偶校验位的比较了。将出错数据一分为二,继续进行奇偶性的比较,直到找到奇偶性不同的位,并将其删除。为了确保不让Eve获得新的信息,应将每次公开奇偶性数组的最后一位删掉。最终得到的Sab为0111,这是Alice和Bob高度一致且不含错误的密钥串。
2.3.3 密性放大
经过数据协商后,误码率已经非常低了 (本例中已经为0了),但Eve还是可能知道部分信息 (如该例中的第四位为1)。为提高保密性,再利用密性放大技术[12],将Eve掌握的有效信息变为无效,这是以减少Alice和Bob拥有的信息量为代价的。具体做法如下:
设通信双方共同拥有n位二进制串x,Eve知道其中的t位,并选定s位二进制串作为安全参数。利用一个通用类Hash函数F:{0,1}n→ {0,1}r,r=n-t-s,r位的二进制串即为密性放大后的最终密钥。它使得Alice和Bob的互信息I(A,B)从n减至r,Eve和Alice的互信息I(E,A)由t减至不大于2-s/ln2。具体结合本例计算如下:
设s=1,Eve知道第四位是1,故t=1,则r=4-1-1=2,x= [x1x2x3x4]= [0 1 1 1],y= [y1y2],⊕表示模2运算,令
根据f(x)=y=xm,则有
最后得到y= [y1y2]= [0 1],从而得到了通过密性放大后的密钥串r为01。I(E,A)由1降到了0.72,说明Eve对最终的密钥串知之甚少,进一步强化了数据的保密性。
3 结束语
由于量子密码的实现跟具体的物理系统相关,它不像经典密码那样是基于抽象的数学难题,而与具体实现无关。再加上偏振光子很微弱,在传输过程又不能放大加强。所以出现接收方光子缺失的概率非常大,这种缺失对整个协议的密钥分发影响是非常大的。本文采用重发缺失对应位光子的方法,使得接收方尽可能多的接收到有效光子,这不仅有利于窃听检测 (因为扩大了检测区间),而且增加了实际密钥分发的位数 (最后获得密钥长度变长),从而有效提升了协议密钥分发的效率。
该协议的安全性等同于BB84协议,由于没有引进量子存储,只是发送方根据接收方传递的信息 (数组下标)重新随机生成相对应位缺失的二进制位、基和对应的光子序列,并利用BB84协议进行二次传输 (利用BB84协议只进行量子传输部分)。所以该协议的实现难度没有增加,同样等同于BB84协议。故该协议实验上是可行的,而且密钥分发效率高于BB84协议。
[1]LI Hongwei,CHEN Wei,HUANG Jingzheng,et al.Security of quantum key distribution [J].Scientia Sinica Physica,Mechanica &Astronomica,2012,42 (11):1237-1255 (in Chinese).[李宏伟,陈巍,黄靖正,等.量子密码安全性研究[J].中国科学:物理学力学天文学,2012,42(11):1237-1255.]
[2]WANG Jindong,ZHANG Zhiming.Unconditional security of quantum key distribution based on practical devices [J].Chinese Journal of Quantum Electronics,2014,31 (4):449-456(in Chinese).[王金东,张智明.量子密钥分发系统的现实无条件安全性 [J].量子电子学报,2014,31 (4):449-456.]
[3]Christopher Portmann,Renato Renner.Cryptographic security of quantum key distribution [DB/OL].[2014-11-26].http://arxiv.org/pdf/1409.3525.pdf.
[4]ZHENG Liming,WANG Faqiang,LIU Songhao.The influence of dispersion and loss on quantum key distribution system [J].Acta Phys Sin,2007,56 (4):2180-2183 (in Chinese). [郑力明,王发强,刘颂豪.光纤色散与损耗对光量子密钥分发系统的影响 [J].物理学报,2007,56 (4):2180-2183.]
[5]LIU Wei,YANG Shu,GUO Aipeng.Study on key transmission rate and BER of fiber-based quantum key distribution system [J].Optical Communication Technology,2008 (8):44-47 (in Chinese).[刘伟,杨树,郭爱鹏.光纤量子密钥分发系统中密钥传输率和误码率的研究[J].光通信技术,2008 (8):44-47.]
[6]Zhu Mengzheng,Liu Ye.Efficient entanglement purification via quantum communication bus [J].Quantum Information Process,2014,13 (6):1397-1412.
[7]SUN Ying, WEN Qiaoyan,YUAN Zheng.High-efficient quantum key distribution based on hybrid entanglement [J].Optics Communications,2011,284:527-530.
[8]Lucamarini M,Patel KA,Dynes JF,et al.Efficient decoystate quantum key distribution with quantified security [J].Optics Express,2013,21 (21):24550-24565.
[9]GAO Jingliang,ZHU Changhua,XIAO Heling.Efficient quantum key distribution scheme with pre-announcing the basis[J].Euro Physics Letters,2014,105 (6):6003-6004.
[10]WU Hua,WANG Xiangbin,PAN Jianwei.Quantum communication:Status and prospect[J].Scientia Sinica:Infor-mationis,2014,44 (3):296-311 (in Chinese). [吴华,王向斌,潘建伟.量子通信现状与展望 [J].中国科学:信息科学,2014,44 (3):296-311.]
[11]ZHANG Sheng,WANG Jian,ZHANG Quan,et al.An analysis of the model of the error bit s of quantum cryptography protocol[J].Acta Phys Sin,2009,58 (1):73-77 (in Chinese).[张盛,王剑,张权,等.量子密码协议的错误序列模型分析 [J].物理学报,2009,58 (1):73-77.]
[12]Joseph M Renes,Renato Renner.Noisy channel coding via privacy amplification and information reconciliation[J].IEEE Transactions on Information Theory,2011,57 (11):7377-7385.