馬鴻洋,張鑫,徐鵬翱,劉芬2,,范興奎
(1.青島理工大學理學院,山東 青島 266520;2.青島理工大學量子光學與量子通信研究中心,山東 青島 266520;3.青島理工大學信息與控制工程學院,山東 青島 266520)
信息安全[1]是政府企業(yè)和個人隱私等領(lǐng)域發(fā)展的必要保障,而量子保密通信[2-10]是解決信息安全的有效手段之一,是一種與經(jīng)典保密通信相互補充的通信方式。量子保密通信在理論上具有經(jīng)典通信所不具備的絕對安全性,在政府機構(gòu)、企業(yè)金融、個人信息等領(lǐng)域有重大的應(yīng)用價值和發(fā)展前景。
1984 年,Bennett 等[11]提出了第一個量子密碼分發(fā)協(xié)議,即BB84 編碼協(xié)議;1991 年,Ekert[12]提出了EPR 編碼協(xié)議;1992 年,Bennett[13]提出了E92 編碼協(xié)議;2002 年,Long 等[14]提出了基于糾纏光子對的量子保密通信方案;2004 年,Deng 等[15]借鑒經(jīng)典密碼的一次一密的思想提出基于單光子的一次一密量子安全直接通信方案,簡稱DL04 方案;2007 年,Wen 等[16]提出了基于EPR 對的量子簽名協(xié)議的方案,并證明采用該方案即使通信被竊聽也不會泄露機密信息;同年,Li 等[17]提出了基于糾纏態(tài)的秘密信息共享方案;2008 年,楊宇光等[18]參考經(jīng)典Shamir 秘密共享方案提出沒有糾纏的門限量子保密通信協(xié)議,對相應(yīng)的幺正算符操作從而獲取秘密信息。2009 年,秦素娟等[19]提出集體幅值阻尼信道上的量子保密通信,且能克服量子信道中集體噪聲;2014 年,郭大波[20]對高斯量子密鑰分發(fā)數(shù)據(jù)提出性能優(yōu)化方案;2014 年,吳貴銅等[21]提出雙向的帶身份認證的無信息泄露的量子保密通信協(xié)議,能夠解決信道噪聲問題;2015 年,常利偉等[22]提出利用最大糾纏信道和部分糾纏信道,構(gòu)造了2 個多方控制量子通信協(xié)議。隨著量子通信的發(fā)展[23-26],2019 年,王華等[27]提出了基于量子密鑰分發(fā)的城域光通信網(wǎng)絡(luò)架構(gòu)方案;同年,Qian 等[28]提出一種有效抵御量子密鑰分發(fā)系統(tǒng)探測器控制攻擊的方案;2020 年,Guo 等[29]提出基于量子信道的因果序的相干疊加的量子通信方案,并通過實驗驗證了該方案能夠超越標準量子香農(nóng)理論的限制。
本文提出了一種循環(huán)碼和信息壓縮混合使用的量子保密通信算法。首先發(fā)送端對傳輸?shù)男畔⑦M行預處理,分割為長度不等的2 組數(shù)據(jù),其中一組數(shù)據(jù)用于循環(huán)編碼,另一組數(shù)據(jù)用于壓縮編碼,提高通信效率;其次,發(fā)送端添加一串量子態(tài)傳輸給接收端,根據(jù)接收端宣布的誤碼數(shù)作為信道安全檢測的依據(jù),若信道安全,則對預處理好的數(shù)據(jù)量子態(tài)處理,利用量子穩(wěn)定子碼編碼分段并傳輸,依據(jù)穩(wěn)定字碼的特性克服環(huán)境引起的誤碼,提高準確率;最后,接收端依據(jù)校驗矩陣獲得正確傳輸?shù)牧孔有畔?,并解循環(huán)和解壓縮,從而獲得數(shù)據(jù)。該算法在考慮環(huán)境噪聲的前提下,利用量子穩(wěn)定字碼對傳輸?shù)牧孔討B(tài)進行編碼優(yōu)化,保證了傳輸量子態(tài)的準確性。
信息壓縮是指按照一定的算法對數(shù)據(jù)重新進行組織排列,減少冗余數(shù)據(jù)。設(shè)數(shù)據(jù)表示為G,依次按照m bit 劃分,記為:m 比特|m bit|…|m bit。如果臨近的比特串按位相同,例如0111100101… |0111100101…,則被壓縮為0111100101… 0|;如果臨近的比特串按位相反,如0111100101… |1000011010…,則被壓縮為0111100101… 1|。
循環(huán)碼是線性分組碼中的一個重要子類,由于其具有循環(huán)特性,因此其編碼和伴隨式較容易實現(xiàn)。假設(shè) g(x)需要生成[n,k]循環(huán)碼,u(x)為要編碼的信息,的余式為 b(x),則v(x)=b(x)+u(x)xn-k,可推算出相應(yīng)的碼字,其中最右邊的k bit 為信息位,最左邊的(n-k)bit 為校驗位,用其相對應(yīng)的校驗函數(shù)進行校驗。
量子穩(wěn)定子碼[n,k,d ]稱為量子加性量子碼,是一類結(jié)構(gòu)豐富的量子糾錯碼,記為 C(W),其中,n是編碼后的比特數(shù),k 是原始的比特數(shù)。其特點是Abel 子群W 隸屬n 量子位Pauli 算子群,該子群內(nèi)元素本征值為 +1,所構(gòu)造的本征值空間為Hs,則當?Hs時,對于任意的 M(M∈W),存在。Hs所對應(yīng)的量子碼為穩(wěn)定子碼,M為W 的生成元,子群W 為穩(wěn)定子碼 C(W)的穩(wěn)定子,表示為
將比特串P={ P1,P2,…,PK}分割為長度不等的比特串,分別表示為a={P1,P2,…,PC} 和b={PC+1,PC+2,…,PK},且a>> b,K=a+b。對比特串a(chǎn) 進行壓縮操作,對比特串b 進行循環(huán)操作。數(shù)據(jù)分段以及數(shù)據(jù)循環(huán)和數(shù)據(jù)壓縮如圖 1所示。
圖1 數(shù)據(jù)分段及數(shù)據(jù)壓縮和數(shù)據(jù)循環(huán)
對a={P1,P2,…,PC}進行壓縮操作,對b={PC+1,PC+2,…,PK}按照g(x)=1+x+x3和 u(x)=1 +x3進行循環(huán)操作,壓縮后的比特串為c={P1,P2,…,PC-X},X 是可壓縮的長度。循環(huán)后的比特串為d={PC+1,…,PK,…,PY},選擇的循環(huán)碼為(7,4),因此d=1.75b 。
循環(huán)部分采用(7,4)循環(huán)碼,將比特數(shù)據(jù)按4 分段,然后將4 位數(shù)據(jù)循環(huán)成7 位的數(shù)據(jù),可以糾正單個比特錯誤,并且能夠檢測任意2 個比特錯誤的組合。利用(7,4)循環(huán)碼能將易出錯區(qū)域的準確率從0.062 5 提升到0.312 5。為了盡可能降低復雜度,本文選用(7,4)循環(huán)碼對易出錯字段進行有效糾正。
將2 個比特串c 和d 重新組合為Q=c +b,c={ P1,P2,…,PC-X}中發(fā)生壓縮的位置記錄標記為Sign-A,通過經(jīng)典信道傳給接收端,Sign-A 信息作為解壓縮操作的起始比特位;循環(huán)操作對應(yīng)的校驗矩陣也通過經(jīng)典信道傳給接收端,用來進行解循環(huán)操作。
對于信道安全檢測信息,為了保證不丟失有效數(shù)據(jù)Q。本文沒有采用Q 中的信息作為信道檢測,而是添加一組長度為n bit 的量子態(tài)來檢測信道安全。
把比特串Q 按塊傳輸,每塊為k bit,共m 塊,即Q=mk,其量子串表示為
其中,第j 塊量子比特串表示為
生成元Mi作用于,其正常本征值應(yīng)為+1;如果本征值變?yōu)?1,則說明比特傳輸中出現(xiàn)錯誤,該錯誤用算子Ei表示。因為,Mi與Ei之間存在相互對易和相互反對易這2 種關(guān)系,分別記為[Ei,Mi]=EiMi-MiEi=0,[Ei,Mi]=EiMi+MiEi=0。利用穩(wěn)定子W 的(n-k)個生成元測量,可得到本征值,其中Wi∈{0,1}。
攜帶有效信息的第j 塊包含k bit 的比特串,經(jīng)過穩(wěn)定子糾錯編碼后以此擴展。對于每個量子比特,編碼前確定穩(wěn)定子糾錯編碼的子群W 總個數(shù)為。對于任意的Mi(Mi∈W),存在。Mi為穩(wěn)定子W 群內(nèi)n-k 個生成元中的任意一個,由以下4 個酉正算子組合而成。
其生成元的編碼信息為
依次對所有的 Ei(φic)進行測量,判斷這個k 數(shù)據(jù)塊中出現(xiàn)的所有錯誤信息以及糾錯位。生成元M用矢量偶表示,M1,…,Mn-k為(n-k)× 2n階的校驗矩陣。
其中,HX是生成元M1,…,Mn-k的比特翻轉(zhuǎn)X 組成的矩陣。本文協(xié)議中量子比特只存在比特翻轉(zhuǎn),不存在相位翻轉(zhuǎn)錯誤。H 作用于接收到的量子態(tài),得到所有Mi的本征值矩陣 H ′,根據(jù) H ′判斷出現(xiàn)比特翻轉(zhuǎn)錯誤的所有量子位。
接收端根據(jù)測量結(jié)果和量子伴隨式比對,可判斷X 翻轉(zhuǎn)的出錯量子位。X 翻轉(zhuǎn)錯誤對應(yīng)酉正算子xσ 。針對出錯量子位進行對應(yīng)的酉正門操作,將糾正后的碼字反向編碼,獲得的正確量子信息。因為單光子作為信息的載體,容易受到環(huán)境噪聲的影響,所以利用量子穩(wěn)定子碼能較好地克服環(huán)境噪聲的影響。
發(fā)送端可以將相應(yīng)校驗函數(shù)等信息通過經(jīng)典信道傳輸給接收端,字符串分割點位置Sign-A 用BB84 協(xié)議通信。
接收端通過校驗函數(shù)和Sign-A 解循環(huán),解壓縮0111100101… |0| 0111100101… |1 →10111100101…|0111100101… 0111100101… 1000011010…的相關(guān)內(nèi)容進行相應(yīng)的還原操作。
本文協(xié)議可能會受到來自協(xié)議本身和第三方的攻擊,下面對這2 種情況的安全性進行分析。
假設(shè)在通信過程中發(fā)生竊聽時,對量子態(tài)的攻擊實行操作E。
設(shè)m2=a,n2=b,得到a+b=1。因為竊聽后基態(tài)變化的隨機性,4 個基態(tài)是出現(xiàn)的最大量,可能被選擇其中的2 個,即出現(xiàn)的組合是=6種,且出現(xiàn)的概率相同。所以得到竊聽概率為
對于每個基態(tài)所包含的最大信息量為
第三方竊聽到3.3 節(jié)所述檢測光子攜帶的信息時,不會導致信息泄露,因為檢測光子攜帶的信息只是用于檢測誤碼,而不是要傳輸?shù)挠行畔?。此時,只需再次傳輸檢測信息即可。
第三方竊聽到3.1 節(jié)所述循環(huán)操作和壓縮操作后的信息,即 c={P1,P2,…,PC-X},d={PC+1,…,PK,…,PY},由于Sign-A 的標記信息由BB84 協(xié)議保障,第三方不知道Sign-A 的標記信息,對竊取的信息無法解壓縮和解循環(huán),因此不會導致泄露信息,仍可保障安全性。
本文利用Python 語言生成3.1 節(jié)所述數(shù)據(jù),對其壓縮部分進行仿真實驗,利用Mathematica 計算最終的壓縮率。在數(shù)據(jù)壓縮中,本文主要考慮數(shù)據(jù)分段情況和數(shù)據(jù)長度情況,分別按5、10、20 分段。所有仿真均是對105~109bit 數(shù)據(jù)進行模擬,仿真結(jié)果如圖2 所示,其中,圖2(a)是按5、10、20 分段壓縮的仿真匯總,圖2(b)~圖2(d)分別為按5、10、20 分段壓縮的仿真。
圖2 壓縮仿真結(jié)果
從圖2 可以看出,當分段情況確定時,數(shù)據(jù)串長度的變化對壓縮比率的影響很?。粚?yīng)位相同或相反的概率均為0.5,假設(shè)按P 長度進行分段,壓縮成功的可能性為0.5P,在長度一定的情況下,分段數(shù)越小,壓縮率越高;按20 分段的壓縮率非常小,幾乎可以忽略。由仿真結(jié)果可知,按5 分段壓縮率最高。
本文提出了一種循環(huán)碼和信息壓縮混合使用的量子保密通信算法,對經(jīng)典信息進行操作,利用循環(huán)碼提升傳輸準確率,利用信息壓縮提升傳輸效率;利用穩(wěn)定子碼對量子信息進行操作,對出現(xiàn)的比特翻轉(zhuǎn)進行糾錯;此外,對協(xié)議的安全性進行了分析。仿真結(jié)果表明,所提算法在保障安全性的前提下,有效地克服了環(huán)境噪聲,并且傳輸效率和傳輸準確率都達到了較好的效果。