周文婷,王鑫,卞宇翔,喬涵,馮寶
(1國網(wǎng)新疆電力有限公司信息通信公司,新疆 烏魯木齊 830000;2南瑞集團(tuán)有限公司(國網(wǎng)電力科學(xué)研究院有限公司), 江蘇 南京 211000;3南京南瑞國盾量子技術(shù)有限公司,江蘇 南京 211000)
在量子密鑰分發(fā)(QKD)協(xié)議中,通信雙方(Alice和Bob)在經(jīng)過量子信號的產(chǎn)生、傳輸和測量之后可以獲得各自的原始密鑰。自BB84協(xié)議[1]提出以來,QKD技術(shù)有了極大地發(fā)展[2-11]。但是,在實(shí)際通信中,由于實(shí)驗(yàn)設(shè)備的不完善、外部環(huán)境的干擾以及攻擊者(Eve)的竊聽,通信雙方獲得的原始密鑰會出現(xiàn)一些錯誤,甚至部分密鑰信息還會被攻擊者竊聽。所以在生成無差錯的安全密鑰之前,對原始密鑰進(jìn)行信息協(xié)商和私密放大等后處理操作是必不可少的[12]。
按照傳輸量子態(tài)的差異,QKD協(xié)議分為離散變量(DV)QKD協(xié)議和連續(xù)變量(CV)QKD協(xié)議[13]。在CV-QKD協(xié)議中,密鑰信息被編碼在連續(xù)變量上,如高斯調(diào)制相干態(tài)的X和P正則分量上。CV-QKD具有量子信號的制備和測量更容易、在短距離通信時具有較高的密鑰成碼率的特點(diǎn),CV-QKD使用壓縮態(tài)光場[14]、EPR糾纏態(tài)光場、高斯調(diào)制的相干態(tài)光場等[15-17]光源和光通信領(lǐng)域已有的元器件探測量子態(tài)且探測效率可達(dá)90%以上。所以,CV-QKD現(xiàn)成為量子密鑰分發(fā)協(xié)議的研究熱點(diǎn)之一。
在CV-QKD協(xié)議中,協(xié)商算法的協(xié)商效率和系統(tǒng)中的過噪聲是影響協(xié)議安全通信距離和密鑰成碼率的主要原因[18]。此外,協(xié)商算法的協(xié)商效率也是決定協(xié)議的密鑰成碼率和安全通信距離的重要因素[19-21]。目前為止,CV-QKD中的協(xié)商協(xié)議主要有分層協(xié)商和多維協(xié)商[22,23]。分層協(xié)商更適合短距離系統(tǒng),而多維協(xié)商則可用于遠(yuǎn)距離系統(tǒng),并且分層協(xié)商會將一個連續(xù)變量量化成多個比特,其復(fù)雜度比只將一個連續(xù)變量量化成一個比特的多維協(xié)商更高。
Arikan[24]提出了極化碼,作為一種新的編碼方式,極化碼是第一個在理論上證明可以達(dá)到信道容量的編碼方式[25,26]。Arikan給出了極化碼在二進(jìn)制對稱信道中可以達(dá)到信道容量,隨后Korada等[27]證明了在任意的二進(jìn)制輸入離散信道中極化碼也可以達(dá)到信道容量;與此同時,極化碼的編譯碼可以做到較低的復(fù)雜度,利用極化碼的這些優(yōu)勢,Jouguet等[28]、Nakassis等[29]在QKD協(xié)商協(xié)議中加入了極化碼[28,29]。
本文在CV-QKD的多維協(xié)商協(xié)議中引入了極化碼,提出了兩種基于極化碼的多維逆向協(xié)商方案:傳輸比特翻轉(zhuǎn)信息極化碼糾錯協(xié)商方案和保留量子比特傳輸比特翻轉(zhuǎn)信息的極化碼糾錯協(xié)商方案。該協(xié)議包含兩個組成模塊,第一個模塊為多維協(xié)商模塊,第二個模塊為極化碼糾錯模塊。首先利用第一個模塊可將原始長密鑰分為多個d維向量組,每組向量經(jīng)過歸一化、球面化和旋轉(zhuǎn)處理變?yōu)槎M(jìn)制密鑰串。而通信兩方可利用第二個模塊共同分享凍結(jié)位置信息和凍結(jié)比特值,實(shí)現(xiàn)基于極化碼的逆向數(shù)據(jù)協(xié)商。相比于現(xiàn)有的極化碼逆向協(xié)商協(xié)議[11],所提出的兩種協(xié)商協(xié)議可以在糾錯成功率保持不變的條件下獲得更高的協(xié)商效率。
設(shè)Alice和Bob分別為通信的兩端,圖1描述的是基于極化碼的多維密鑰協(xié)商改進(jìn)方案,包含多維協(xié)商模塊和極化碼糾錯模塊兩個部分。在CV-QKD過程中,首先Alice依據(jù)相位分量PA和振幅分量xA制備出相干態(tài)|xA+iPA〉并發(fā)送給Bob。Bob收到Alice發(fā)來的相干態(tài)后,隨機(jī)檢測相干態(tài)的相位分量或振幅分量。Alice和Bob通過公共信道互相公布所測量的分量是相位分量還是振幅分量,Alice和Bob僅保留雙方公布相同分量的比特做為密鑰。通過多次重復(fù)以上過程,Alice和Bob可分別得到足夠長的連續(xù)變量密鑰串X和Y。接下來使用圖1中基于極化碼的多維協(xié)商協(xié)議來糾正由量子信道噪聲引入的密鑰誤差。
圖1 基于極化碼的多維協(xié)商流程圖Fig.1 Schematic diagram of multi-dimensional negotiation based on polar codes
設(shè)X和Y是Alice和Bob通過CV-QKD過程獲得的連續(xù)密鑰。由于X和Y是分布不均勻的高斯連續(xù)變量,因而首先需要將非均勻變量空間均勻化,可通過歸一化和球面化高斯變量獲得。具體步驟如下:Alice和Bob先分別將X和Y歸一化,得到x′=X/||X||,y′=Y/||Y||,其中||X||和||Y||是X和Y的模,且然后,Bob隨機(jī)選擇球面上d個最大距離星座點(diǎn)構(gòu)造一d維向量,具體方法可以是逆向構(gòu)造。隨機(jī)選取一個二進(jìn)制串(y1y2···yd),其中yi∈{0,1},獲得這樣,Bob可以實(shí)現(xiàn)將非均勻分布高斯變量轉(zhuǎn)換成均勻分布的變量。同時需保證Alice進(jìn)行同樣的變換?,F(xiàn)用矩陣表示Bob端進(jìn)行的變換。
Bob端將密鑰從y′旋轉(zhuǎn)至y的操作可以用旋轉(zhuǎn)矩陣M(y′,y)表示,所以第一步就是計(jì)算該旋轉(zhuǎn)矩陣,接著將該旋轉(zhuǎn)矩陣通過經(jīng)典信道發(fā)送給Alice,然后Alice就可以使用M(y′,y)完成與Bob一樣的旋轉(zhuǎn)變換,根據(jù)x=M(y′,y)x′計(jì)算得到旋轉(zhuǎn)后的密鑰x,y的誤差形式為x=y+ε。到此為止,一個近似的二進(jìn)制加性高斯白噪聲信道的虛擬信道在Alice和Bob間得以建立,接下來通過數(shù)據(jù)協(xié)商完成對數(shù)據(jù)的糾錯,可以在Alice和Bob間共享安全的密鑰。針對逆向協(xié)商協(xié)議,文獻(xiàn)[11]給出了基于極化碼的逆向協(xié)商協(xié)議,稱為傳輸凍結(jié)比特的極化碼糾錯協(xié)商方案。根據(jù)在協(xié)商中所傳輸?shù)男畔⒉煌?設(shè)計(jì)了兩種不同的協(xié)商方案:傳輸比特翻轉(zhuǎn)信息極化碼糾錯協(xié)商方案和保留量子比特傳輸比特翻轉(zhuǎn)信息的極化碼糾錯協(xié)商方案。
極化碼通過信道合并和信道分裂操作,獲得多個相關(guān)的虛擬信道。在總?cè)萘勘3植蛔兊那闆r下,這些虛擬信道出現(xiàn)極化現(xiàn)象,即一部分虛擬信道的容量會趨于1(即信息位,用于傳輸信息),另一些虛擬信道的容量趨于0(即凍結(jié)位,無法可靠傳輸,用于傳輸無用信息)。傳輸凍結(jié)比特的極化碼糾錯協(xié)商方案中通信雙方已知凍結(jié)位位置Uc但是不知道凍結(jié)位的值,需要經(jīng)過經(jīng)典信道傳輸,來獲取凍結(jié)位值uc,具體流程如圖2所示。
圖2 傳輸凍結(jié)比特的極化碼糾錯協(xié)商方案Fig.2 Error-correcting negotiation scheme of polar codes for transmitting frozen bits
1)Alice和Bob從他們的共同篩選集合中選擇N個值并形成向量x和y。Bob通過u=yG對序列y進(jìn)行逆編碼得到序列u,G表示極化碼的生成矩陣,且G的逆等于自身,所以也有y=uG。然后通過無差錯經(jīng)典信道把N-K個凍結(jié)比特值uc發(fā)送給Alice。
2)Alice已知凍結(jié)比特位置信息Uc,利用接收到的凍結(jié)比特值uc對序列x譯碼,得到序列u。此時,Alice和Bob可以使用序列ui作為密鑰,也可以在Bob通過y=uG恢復(fù)序列y后,使用序列y作為密鑰。
在糾錯模塊設(shè)計(jì)時,如果通信雙方已知凍結(jié)位位置Uc以及凍結(jié)位的值uc,在這種設(shè)計(jì)思路下,由于提供了更多的邊信息可以提高CVQKD多維協(xié)商的效率,進(jìn)而提高密鑰生成率。
在傳輸比特翻轉(zhuǎn)信息極化碼糾錯協(xié)商方案中,通信雙方已知凍結(jié)位位置Uc以及凍結(jié)位的值uc,并根據(jù)需求翻轉(zhuǎn)原始密鑰序列x和y,最終實(shí)現(xiàn)糾錯和密鑰共享,流程圖如圖3所示。
圖3 已知凍結(jié)比特并傳輸比特翻轉(zhuǎn)信息的極化碼糾錯協(xié)商方案Fig.3 Polar code error correction scheme with known frozen bits and transmission of bit flip information
1)Bob由隨機(jī)源生成一個長度為K的隨機(jī)序列ui,并結(jié)合凍結(jié)位位置Uc和凍結(jié)位值uc生成序列u=〈uc,ui〉。隨機(jī)序列ui與原始密鑰y無關(guān)。
2)Bob通過w=uG對序列u進(jìn)行編碼得到序列w,并計(jì)算序列 f,f=x⊕w。序列 f表示y中哪些位與w不同,但不攜帶關(guān)于y的信息。Bob通過經(jīng)典信道把序列 f發(fā)送給Alice。
3)Alice接收到序列 f后,用 f翻轉(zhuǎn)原始密鑰序列x得到序列z:z=x⊕f。Alice在已知凍結(jié)位集合的情況下,對序列z進(jìn)行譯碼,恢復(fù)序列u。
此時,Alice和Bob有三種方法生成密鑰:1)直接使用序列ui作為密鑰;2)Alice利用w=uG對序列u進(jìn)行編碼,將編碼得到序列w作為密鑰;3)Alice進(jìn)一步通過y=w⊕f重構(gòu)序列y,使用序列y作為密鑰。
利用量子信道上傳輸?shù)暮Y選比特具有稀疏特性,通過在經(jīng)典信道中發(fā)送更多的邊信息可以實(shí)現(xiàn)密鑰率的大幅提升,為此對方案2進(jìn)行改進(jìn),稱為方案3,糾錯流程圖如圖4所示。
圖4 保留量子比特已知凍結(jié)比特并傳輸比特翻轉(zhuǎn)信息的極化碼糾錯協(xié)商方案Fig.4 An error correction scheme for polar codes that retains known frozen bits of qubits and transmits bit flip information
1)Bob從序列y相同的隨機(jī)源中,生成一個長度為K的隨機(jī)比特序列ui,結(jié)合凍結(jié)比特形成序列u= 〈uc,ui〉,其中 uc是所有設(shè)置為 “0”的凍結(jié)位。
2)Bob通過〈r,w〉=uG得到序列〈r,w〉(將得到的碼字分成兩部分,r和w),其中r長度為(N-K)比特,w長度為K比特。然后,Bob通過 f=y⊕w得到序列 f,并且以概率p隨機(jī)翻轉(zhuǎn)序列r,得到序列v來模擬量子信道的誤碼率。Bob通過無差錯經(jīng)典信道將序列v和 f發(fā)送給Alice。
3)Alice接收到序列 f后,用 f翻轉(zhuǎn)原始密鑰序列x得到序列z:z=x⊕f,并結(jié)合序列v得到序列〈v,z〉。Alice在已知凍結(jié)位集合的情況下,對序列z進(jìn)行譯碼恢復(fù)序列u。
此時,Alice和Bob有三種選擇:1)使用序列ui作為密鑰;2)Alice通過w=uG對序列u進(jìn)行編碼以恢復(fù)序列w,然后使用w作為密鑰;3)Alice可以進(jìn)一步通過y=w⊕f重構(gòu)序列y,使用序列y作為密鑰。
利用數(shù)值仿真分析驗(yàn)證該協(xié)商協(xié)議的性能。仿真參數(shù)設(shè)置為:幀數(shù)的最大值設(shè)為10000,糾錯碼采用極化碼,其碼長為2048,碼率為0.5。多維協(xié)商的維數(shù)分別設(shè)置為4和8,即按照密鑰生成的順序,Alice和Bob對各自的連續(xù)變量密鑰進(jìn)行分組,將每d個連續(xù)變量組合為一個d維向量。
圖5和圖6分別表示多維協(xié)商的維數(shù)為4和8時極化碼三種協(xié)商方案的誤比特率情況。由圖5和圖6可以看出,隨著信噪比的增大,三種協(xié)商方案最終得到的密鑰的誤比特率越來越低,在信噪比大于4 dB時,誤比特率達(dá)到了10-5數(shù)量級。在相同信噪比條件下,三種協(xié)商方案的誤比特率基本一致,且在信噪比大于3 dB后,方案2和方案3的誤比特率略低于方案1,即最終密鑰序列一致性略優(yōu)。
圖5 三種極化碼協(xié)商協(xié)議的誤比特率與信噪比關(guān)系圖(d=4)Fig.5 Relation between bit error rate(BER)and signal-to-noise ratio(SNR)of three polar code negotiation schemes(d=4)
圖6 三種極化碼協(xié)商協(xié)議的誤比特率與信噪比關(guān)系圖(d=8)Fig.6 Relation between BER and SNR of three polar code negotiation schemes(d=8)
圖7和圖8分別表示多維協(xié)商的維數(shù)為4和8時極化碼三種協(xié)商協(xié)議的誤幀率情況。由圖7和圖8可以看出,隨著信噪比的增大,三種協(xié)商方案最終得到的密鑰的誤幀率越來越低,在信噪比大于4 dB時,誤幀率達(dá)到了10-4數(shù)量級。在相同信噪比條件下,三種協(xié)商方案的誤幀率基本一致,且在信噪比大于3 dB后,方案2和方案3的誤幀率略低于方案1,即最終獲得成功密鑰序列概率略優(yōu)。
圖7 三種極化碼協(xié)商協(xié)議的誤幀率與信噪比關(guān)系圖(d=4)Fig.7 Relation between the frame error rate and SNR of the three polar code negotiation schemes(d=4)
圖8 三種極化碼協(xié)商協(xié)議的誤幀率與信噪比關(guān)系圖(d=8)Fig.8 Relation between the frame error rate and SNR of the three polar code negotiation schemes(d=8)
在連續(xù)變量量子密鑰分發(fā)的多維協(xié)商協(xié)議中引入了極化碼,提出了兩種基于極化碼的多維逆向協(xié)商方案。Alice和Bob通過多維協(xié)商獲取原始密鑰,在共享凍結(jié)比特位置和凍結(jié)比特值的條件下,翻轉(zhuǎn)原始密鑰變?yōu)橐恢碌拿荑€序列。仿真實(shí)驗(yàn)結(jié)果表明:在相同條件下,與原來的極化碼逆向協(xié)商協(xié)議相比,所提出的兩種協(xié)商協(xié)議可以在糾錯成功率保持不變的條件下獲得更高的協(xié)商效率。量子密鑰分發(fā)中,竊聽者可能在傳輸量子信號過程中竊取信息,也可能在協(xié)商糾錯過程中竊取信息,因此針對本協(xié)議所提出的協(xié)商協(xié)議還需要考慮由于竊聽者竊聽而導(dǎo)致的安全性問題,將在今后的工作中對此作進(jìn)一步的分析討論。