張孝甜 趙生妹,2 鄭寶玉,2
(1. 南京郵電大學(xué)信號處理與傳輸研究院,江蘇南京 210003;2. 南京郵電大學(xué)寬帶無線通信與傳感網(wǎng)技術(shù)教育部重點實驗室,江蘇南京 210003)
安全性有兩方面的要求,一是確保合法用戶通信的可靠性,二是確保傳輸信息的安全性。無線信道由于其固有的開放性和廣播性,很容易受到竊聽、篡改等威脅,無線通信中的安全性尤為重要。
目前,物理層安全是無線通信安全的熱點。在物理層密鑰技術(shù)中,合法用戶Alice和Bob通過對無線信道的信道特征進行提取獲得共享比特串?;谕ㄐ烹p方信道互異原理[1-2],合法用戶間可以提取基本一致的上、下行信道特征,得到實時獨立的密鑰,從而避免密鑰的傳輸,實現(xiàn)“一次一密”,達到通信安全的目的。
但是,在無線通信中,由于實際信道中噪聲的干擾,Alice和Bob得到的密鑰序列X和Y在有些位置會存在一定的誤差,并且信道中的竊聽者Eve還有可能竊聽到部分密鑰序列[1-2](Z),因此要得到安全的密鑰序列,還需要經(jīng)過密鑰協(xié)商和保密增強兩個過程,其中密鑰協(xié)商是糾正密鑰序列X和Y間不一致位,而保密增強則是保證Eve不能從Z中獲取有關(guān)安全密鑰的信息。
由于合法通信雙方信道估計的強相干性,雙方生成的初始密鑰只有極小部分密鑰比特不匹配,利用糾錯碼技術(shù)可以使得通信雙方獲得一致的密鑰序列。例如,文獻[3]利用二分法分組算法來提高密鑰序列的一致性。由于二分法每輪只能糾正奇數(shù)個錯誤,所以二分法協(xié)商需要進行多次通信,糾錯效率低。文獻[4]提出了基于散列函數(shù)的檢錯方案,利用散列函數(shù)校驗通信雙方信道特征的一致性。文獻[5]在Winnow算法的基礎(chǔ)上利用卷積碼進行密鑰協(xié)商。文獻[6]把低密度奇偶校驗碼(Low Density Parity Check Code,LDPC碼)應(yīng)用到密鑰協(xié)商算法中,獲得了比散列函數(shù)和卷積碼更高的一致性和糾錯成功率。但是基于LDPC碼的協(xié)商協(xié)議是通過校驗信息進行糾錯的,在初始密鑰序列不一致比特較多時,會達不到協(xié)商糾錯的要求。
Polar碼是Arikan在2007年提出的一種新型編碼方式,對于二進制對稱信道,Polar碼理論上可以達到信道容量[7]。S.Korada,R.Urbanke和E.Sasoglu等人證明了對于任意的二進制輸入離散信道(Discret memoryless channel,DMC),Polar碼同樣可以達到信道容量[8];同時,Polar碼的編譯碼復(fù)雜度都較低,利用Polar碼的這些優(yōu)勢,Jouguet等人將Polar碼應(yīng)用到量子密鑰分發(fā)(Quantum key distribution,QKD)協(xié)商協(xié)議中[9]。我們小組對高斯信道中的Polar碼進行了設(shè)計研究,并將Polar碼應(yīng)用于經(jīng)典物理層密鑰協(xié)商協(xié)議和量子密鑰分發(fā)協(xié)商協(xié)議中[10-11]。
本文將Polar碼應(yīng)用到無線信道密鑰協(xié)商中,針對由無線信道特征提取的密鑰存在不完全一致的問題,提出了一種基于Polar碼的密鑰協(xié)商方法。在這個協(xié)商方法中,合法用戶(發(fā)送端Alice和接收端Bob)分別進行信道估計生成各自的原始密鑰,然后Bob對自己的原始密鑰進行Polar碼逆編碼,并將凍結(jié)位信息傳輸給Alice。Alice在獲得凍結(jié)位及其位置信息的基礎(chǔ)上,進行Polar碼的譯碼,對自已的原始密鑰進行糾錯,最后,再通過Polar的編碼,獲得與Bob一致的密鑰序列。分析了基于Polar碼的無線信道密鑰協(xié)商協(xié)議的性能,并與相同條件下采用LDPC碼的協(xié)商協(xié)議結(jié)果進行了比較。
假設(shè)通信雙方為Alice和Bob,基于Polar碼的密鑰協(xié)商協(xié)議可以描述為圖1,主要有3個部分,即信道估計部分、原始密鑰生成部分和Polar碼協(xié)商部分。
信道模型建立時要考慮到無線信道的互異性和有噪聲干擾的傳輸特性,現(xiàn)考慮信道中是加性噪聲且滿足正態(tài)分布。
信道估計過程如圖1中第一部分所示,圖中xa、xb分別表示Alice和Bob的探測信息,hab、hba分別表示上行信道、下行信道的信道特征,ya和yb表示Alice和Bob端接收到的響應(yīng)信號。首先Alice和Bob分別向?qū)Ψ桨l(fā)送探測信息xa、xb,由信道噪聲的加性特性可知他們分別接受到的響應(yīng)信號ya和yb可表示為:
ya(t)=xb·hba+n(t)
(1)
yb(t)=xa·hab+n(t)
(2)
在通信雙方進行探測和通信時,無線信道都可能有竊聽者(Eve)存在,如圖所示,竊聽者通過竊聽信道對Alice和Bob的通信進行竊聽。而無線信道的短時互異性[2-3]表明每次信道探測得到的信道特性都是不同的,即保證通信雙方可以同時、異地、獨立地生成實時更新的密鑰,實現(xiàn)安全加密通信。
圖1 密鑰協(xié)商流程圖Fig.1 The process diagram of key reconciliation
上一節(jié)介紹了Alice和Bob對信道特征的估計過程,下面介紹從信道特征提取原始密鑰的過程。
根據(jù)公式(1)或(2),設(shè)無線傳輸?shù)奶綔y信號為x,由于無線信道多徑效應(yīng)和噪聲干擾,所以接收到的信號可以表示為:
(3)
上式中ξ(t)表示加性噪聲n(t)在經(jīng)過信道調(diào)制后的窄帶隨機噪聲信號。對于窄帶隨機信號ξ(t),它的波形可表示為包絡(luò)和相位都是隨機緩變的正弦波,所以噪聲信號ξ(t)可以表示為:
ξ(t)=aξ(t)cos[ωct+φξ(t)]
(4)
φξ∈[0,2π]
(5)
由上式可知,相位φξ服從均勻分布。而Alice和Bob對無線信道特征的估計反應(yīng)的是信道噪聲的統(tǒng)計特性,所以特征信息的相位也服從均勻分布。
原始密鑰獲取如圖1第二部分所示,Alice和Bob分別從各自的信道估計信息中提取相位信息,目前主要是用信道估計算法[2]對估計信號進行特征提取,常用的信道估計算法主要有互相關(guān)法和代價函數(shù)法,圖中用F表示信道估計算法,則得到的信道特征(相位)可以用F(h)表示。
在協(xié)商過程前,合法用戶Alice和Bob需根據(jù)傳輸信道特征,設(shè)計并構(gòu)造Polar碼。根據(jù)Polar碼構(gòu)造特點,Alice和Bob共享將共享信息位集合、凍結(jié)位集合。
圖2 Polar碼糾錯過程流程圖Fig.2 The flow diagram of Polar code reconciliation
如圖1中Polar碼協(xié)商部分所示,現(xiàn)用N表示碼長,K表示信息位集合A中元素的個數(shù),AC表示凍結(jié)位位置集合。
Polar碼協(xié)商部分設(shè)計如圖2所示,Bob端首先對原始密鑰b進行Polar碼逆編碼:
Ub=bG-1
(6)
式中Ub表示逆編碼得到的序列,且序列Ub由K位信息比特UA和N-K位凍結(jié)比特UAC構(gòu)成。G-1表示Polar碼生成矩陣的逆矩陣。根據(jù)Polar碼生成矩陣的構(gòu)造特性,G的逆矩陣等于它自身[7- 8],所以此時有Ub=bG。生成矩陣G由信息位集合A中索引對應(yīng)的行向量組成的矩陣GN(A)和凍結(jié)位集合AC中索引對應(yīng)的行向量組成的矩陣GN(AC)組成。
然后,Bob通過無線信道把N-K個凍結(jié)比特UAC={ui,uj,...}傳送給Alice。Alice根據(jù)接收到的凍結(jié)比特UAC和共享的凍結(jié)位位置信息對原始密鑰a對應(yīng)位置上的比特進行替換,并對替換后得到的密鑰序列進行譯碼,得到序列Ua。
本文采用的Polar碼譯碼算法是連續(xù)消除(successive cancellation,SC)算法。在SC算法中,根據(jù)碼字序列給定的參數(shù)(N,K,A,UAC),對每位ui根據(jù)如下判決函數(shù)進行判斷:
(7)
(8)
(9)
Alice譯碼得到比特序列Ua后,通過a=UaG即可得到與序列b一致的密鑰序列a,這樣Alice和Bob就可以利用一致的密鑰序列b進行加密通信。
在Polar碼協(xié)商方案中如果記一次模二加的復(fù)雜度為1、翻轉(zhuǎn)一次長度為N的序列的復(fù)雜度為N,則Polar碼編碼和譯碼的復(fù)雜度為:
(10)
χD(N)=NlogN
(11)
其中χE(N)和χD(N)[11]分別表示Polar碼編碼復(fù)雜度和SC譯碼復(fù)雜度。
如圖2所示,Polar協(xié)商過程包括兩次編碼過程(Alice端的逆編碼過程和Bob獲得最終密鑰的編碼過程)和一次譯碼過程,所以Polar協(xié)商方案的復(fù)雜度χ(N)為:
χ(N)=2χE(N)+χD(N)≤4NlogN=O(NlogN)
(12)
現(xiàn)通過數(shù)值仿真驗證該協(xié)商協(xié)議對密鑰一致性的影響。數(shù)值仿真中基本參數(shù)設(shè)置如下:最大幀數(shù)設(shè)為2000,糾錯碼分別采用碼長為2048碼率為0.75和0.5的Polar碼、碼長為4096碼率為0.5的Polar碼;碼長為2048碼率為0.5的Polar碼和LDPC碼,LDPC碼中BP譯碼最大迭代次數(shù)設(shè)置為100次。
圖3是通過對比不同參數(shù)Polar碼的糾錯情況,得到的譯碼成功率與信噪比的關(guān)系圖。由圖3可以看出:當(dāng)碼率相同時,隨著信噪比的增大,譯碼成功率越來越高,即成功完成糾錯的概率越來越高,且在相同信噪比條件下,碼長為4096的Polar碼的譯碼成功率一直高于碼長為2048的Polar碼;另一方面,當(dāng)碼長相同時,在相同信噪比條件下,碼率為0.5的Polar碼的譯碼成功率一直高于碼率為0.75的Polar碼。
圖3 Polar碼譯碼成功率與信噪比關(guān)系圖Fig.3 The figure of the success rate of Polar decoding with different SNRs
圖4是根據(jù)通信雙方原始密鑰的初始不一致率,對比碼率為0.5,碼長為2048的Polar碼和LDPC碼的譯碼成功率,得到譯碼成功率與初始不一致率關(guān)系圖。由圖3的對比圖可以看出,在初始錯誤率很低時,LDPC碼的譯碼成功率略高于Polar碼,但是,隨著初始錯誤率的增大即信道噪聲干擾的增加,LDPC碼的譯碼成功率下降明顯而Polar碼相對下降平緩并在初始錯誤率大于0.15后獲得優(yōu)于LDPC碼的譯碼效果。總的來說,當(dāng)初始錯誤率處于大于0.2的一段區(qū)間內(nèi),Polar碼仍可獲得較好的譯碼糾錯效果,而LDPC碼基本很難實現(xiàn)成功譯碼。
圖4 LDPC碼和Polar碼初始錯誤率與譯碼成功率對比圖Fig.4 The figure of the success rate of Polar decoding with established key inconsistent rate
本文針對無線信道特征的密鑰提取技術(shù)中獲得的信道特征不完全一致的問題,把Polar運用到密鑰協(xié)商協(xié)議中,提出了一種基于Polar碼的密鑰協(xié)商方案。通過信道估計、原始密鑰生成和Polar碼協(xié)商,Alice和Bob可獲得一致的密鑰。仿真實驗結(jié)果表明:碼率一定時,隨著信噪比的增大,基于Polar碼的密鑰協(xié)商協(xié)議的譯碼成功率越來越高;相同碼率時,Polar碼的碼長越長其譯碼成功率越高;與基于LDPC碼的協(xié)商協(xié)議相比,當(dāng)初始錯誤率處于大于0.15時,基于Polar碼協(xié)商協(xié)議可獲得較好的糾錯性能。