李 廣
(陸軍工程大學(xué),江蘇 南京 210007)
隨著通信系統(tǒng)的飛速發(fā)展,人們的生活發(fā)生了翻天覆地的變化。各式各樣的智能終端日益普及,基站、衛(wèi)星星座等一系列通信設(shè)備的應(yīng)用爆發(fā)式增長。從最初的短波電報(bào)通信到語音通話再到現(xiàn)在的高質(zhì)量視頻通話以及未來可及的三維全息投影通話,人們對高速率、高質(zhì)量、高可靠性的通信需求從未停止過。目前,4G 通信技術(shù)早已全面商用;5G 通信基站正鋪天蓋地地建設(shè)中,已有部分投入商用;未來的6G 時代與5G 相比無論是速率、時延以及覆蓋范圍都會有質(zhì)的飛躍。6G 將是一個地面無線與衛(wèi)星通信協(xié)作的全連接、低時延、高可靠的網(wǎng)絡(luò)。然而無論是星地信道,還是地面的異構(gòu)網(wǎng)絡(luò)都具有開放和廣播的特性[1],傳輸?shù)男盘栔兴休d的信息若不加防范,則很容易被人竊聽[2]、偽造和篡改。傳統(tǒng)的加密學(xué)通過增加密鑰熵對通信進(jìn)行加密,通常在網(wǎng)絡(luò)層以上進(jìn)行[3],但是近年來隨著計(jì)算力的大幅度提升,對無線通信的質(zhì)量和速率的要求變得更加嚴(yán)格,傳統(tǒng)的加密學(xué)已無法滿足需求,上層加密面臨著巨大的挑戰(zhàn)和威脅[4]。
傳統(tǒng)加密通信[5]如圖1 所示,將加密放在上層,浪費(fèi)了較多資源。
圖1 傳統(tǒng)加密編碼
本文采用聯(lián)合加密思想,將物理層信道編碼與加密結(jié)合的方式對明文進(jìn)行加密如圖2,采用私有[6]低密度奇偶校驗(yàn)(Low Density Parity Check,LDPC)碼的校驗(yàn)矩陣對明文加密,在不犧牲糾錯性能的前提下提升了信息傳輸?shù)陌踩訹7-9]。
圖2 物理層聯(lián)合編碼加密
本文采用有限域兩類子群混合構(gòu)造準(zhǔn)循環(huán)LDPC(Quasi Cyslic-Low Density Parity Check,QCLDPC)的校驗(yàn)矩陣[10],并通過信源碼的原模圖外信息轉(zhuǎn)移(Protograph Extrinsic Information Transfer,PEXIT)算法對校驗(yàn)矩陣進(jìn)行掩模,使校驗(yàn)矩陣具有更低的譯碼門限,對碼字信息位打孔后傳輸,提升了信息傳輸?shù)陌踩郧易g碼性能不受影響。
采用有限域設(shè)計(jì)LDPC 碼,使得碼字具有較低的錯誤平層,再通過PEXIT 算法對校驗(yàn)矩陣進(jìn)行掩模,使得掩模后的矩陣具有較低的譯碼門限,瀑布區(qū)性能更好。編碼后,將信息位打孔,只發(fā)送校驗(yàn)位。綜上,面向信息加密的LDPC 碼在保證通信系統(tǒng)可靠性的同時,增加了通信系統(tǒng)的安全性。
碼字的設(shè)計(jì)流程如圖3 所示,先根據(jù)有限域元素生成基矩陣B,再根據(jù)PEXIT 算法對基矩陣進(jìn)行掩模確定基矩陣的連接關(guān)系,最后由掩模后的基矩陣散列成校驗(yàn)矩陣H。明文編碼后,刪除信息位傳輸?shù)玫椒窍到y(tǒng)碼的密文。
圖3 LDPC 碼設(shè)計(jì)流程圖
LDPC 碼是線性分組碼,在數(shù)據(jù)傳輸上可逼近香農(nóng)極限。最早由Gallager 在1962 年提出,隨著計(jì)算機(jī)技術(shù)的發(fā)展,于1999 年MacKay 仿真出接近香農(nóng)極限二進(jìn)制對稱信道(Binary Symmetric Channel,BSC)和二進(jìn)制輸入加性高斯白噪聲信道(Binary Input Additive White Gaussian Noise,BIAWGN)信道容量的LDPC 碼。但當(dāng)時的碼字缺乏結(jié)構(gòu)性,不利于編譯碼的硬件實(shí)現(xiàn)。一種降低復(fù)雜度的方法是在LDPC 碼校驗(yàn)矩陣中引入一些額外的有助于編譯碼的結(jié)構(gòu)?;D碼[11]目前是最主流的結(jié)構(gòu)化碼字。它是采用小矩陣生成大矩陣,易于設(shè)計(jì)、實(shí)現(xiàn)和分析的LDPC 碼。
1.1.1 基模圖碼
基模圖碼是一種通過小矩陣生成大矩陣的LDPC 碼,基模圖是小矩陣對應(yīng)的Tanner 圖。通過對圖中的邊進(jìn)行復(fù)制-置換得到較大的圖,使其具有一定的結(jié)構(gòu)性,更有利于編譯碼器的硬件設(shè)計(jì)。圖4 是小矩陣的基模圖,通過對圖中的邊進(jìn)行置換可得圖5 的大矩陣,其中Pi,j代表置換矩陣。本文采用循環(huán)置換矩陣(Cyclic Permutation Matrix,CPM)來替代圖4 中的邊,即矩陣Pi,j為CPM,維度為q-1,循環(huán)右移pi,j,即循環(huán)移位因子為pi,j。
圖4 基模圖示例
圖5 基模圖擴(kuò)展后得到的Tanner 圖示例
1.1.2 有限域簡介
有限域LDPC 碼[12]是基于代數(shù)理論構(gòu)造的一類碼字。有限域GF(q)中含有q個元素,q為素?cái)?shù)冪,設(shè)α為GF(q)的本原元,q個元素分別α-∞=0,α0=1,α1,…,αq-2。設(shè)有限域矩陣為B=[bi,j],0 ≤i 基于迭代譯碼的碼字的缺陷是存在錯誤平層,而文獻(xiàn)[12]通過數(shù)值分析證明了基于有限域所設(shè)計(jì)的碼字可以有效地降低錯誤平層。迭代譯碼的瀑布區(qū)性能與校驗(yàn)矩陣Tanner 的圍長有關(guān)。圍長是指Tanner 圖中最小環(huán)長。環(huán)長定義為在由d個校驗(yàn)節(jié)點(diǎn)和d個變量節(jié)點(diǎn)所構(gòu)成的集合中存在一條經(jīng)過所有節(jié)點(diǎn)且只經(jīng)過一次的閉合路徑。根據(jù)外信息Turbo 原理可知,當(dāng)?shù)螖?shù)超過環(huán)長的1/2 時,外部信息的可靠度將會下降。增大圍長可有效地增加外部信息的可靠性。 由基矩陣散列所得到的校驗(yàn)矩陣的環(huán)長與基矩陣中的循環(huán)移位矩陣的循環(huán)移位因子有關(guān),文獻(xiàn)[12]給出了圍長為6 或8 的基矩陣的充要條件。 定理1 2×2SM(SM,Submatrices)約束(Tanner圖圍長為6 及以上原理):基矩陣B中每個2×2的子矩陣中包含至少一個0 項(xiàng)或?yàn)榉瞧娈惥仃嚒?/p> 定理2 3×3SM約束(Tanner 圖圍長為8 及以上原理):在基矩陣B中在每個2×2 和3×3 的矩陣中不存在相同非0 的行列式展開項(xiàng)。 采用有限域的乘法群和加法群可以很容易的構(gòu)造出滿足上述定理的基矩陣。 設(shè)有限域?yàn)镚F(q),其本原元為α,則基矩陣B(S1,S2)所散列矩陣的Tanner 圖圍長至少為6,B(S1,S2)定義如下: 式中:η為GF(q)中的非0 元素;數(shù)組S1、S2分別為,其中1 ≤m,n 通過計(jì)算機(jī)搜索可以找出滿足3×3SM約束的基矩陣B(S1,S2),這樣其散列的校驗(yàn)矩陣圍長至少 為8,增加了迭代譯碼的可靠性。 由于系統(tǒng)碼在高信噪比區(qū)很容易暴露明文,因此本文擬采用非系統(tǒng)碼傳輸信息,通過對系統(tǒng)碼信息比特打孔的方式來生成非系統(tǒng)碼。例如將1/3 碼率系統(tǒng)碼的信息位全部打孔,只傳輸校驗(yàn)比特,即打孔后的碼字碼率為1/2。 碼字打孔會影響譯碼的性能,本文采用PEXIT掩模算法來計(jì)算打孔后的譯碼門限,同時通過該算法對校驗(yàn)矩陣進(jìn)行掩模,使得校驗(yàn)矩陣更加稀疏,連接性更好,譯碼性能更優(yōu)。 作為密度進(jìn)化的另一種形式,不規(guī)則外信息轉(zhuǎn)移(External Information Transfer,EXIT)圖[13]是用以估計(jì)譯碼門限的一種圖形方式,但是這種方式只考慮了矩陣的變量節(jié)點(diǎn)和校驗(yàn)節(jié)點(diǎn)度分布,并未考慮矩陣的連接性,因此文獻(xiàn)[14-15]提出了基于基矩陣的多維EXIT 算法即PEXIT 算法。PEXIT 算法不僅考慮了矩陣的鏈接性,還可以用以分析打孔和收斂失敗的節(jié)點(diǎn)類型,如度為1 或2 的變量節(jié)點(diǎn)。該算法一般用以估計(jì)基矩陣的譯碼門限,在碼率設(shè)計(jì)上具有較大的優(yōu)勢。因此本文采用該算法來對有限域LDPC 碼的基矩陣掩模。設(shè)掩模矩陣Z為: 式中,當(dāng)zi,j=1 時代表“類型i”校驗(yàn)節(jié)點(diǎn)和“類型j”的變量節(jié)點(diǎn)之間存在一條邊,當(dāng)zi,j=0 時代表“類型i”校驗(yàn)節(jié)點(diǎn)和“類型j”的變量節(jié)點(diǎn)之間不存在邊。 因?yàn)镴(σ)的近似表達(dá)式為σ的單調(diào)函數(shù),所以其反函數(shù)J-1(*)的閉式表達(dá)式一定存在,如下: 采用這種近似計(jì)算方式與密度進(jìn)化計(jì)算的門限差距在0.05 dB 之內(nèi)。其中,式(5)和式(6)中的參數(shù)分別如表1 和表2 所示。 表1 J(σ)中參數(shù) 表2 J -1(I)中參數(shù) 根據(jù)式(5)和式(6),可得PEXIT 算法如下。 (1)初始化“類型j”變量節(jié)點(diǎn)的對數(shù)似然信 息,0 ≤i (4)計(jì)算累積變量節(jié)點(diǎn)的后驗(yàn)信息: 根據(jù)碼率、碼長以及打孔的要求選取有限域的大小和基矩陣的維度,例如需要設(shè)計(jì)碼率為1/2,碼長約2 000 的LDPC 碼,可以通過設(shè)計(jì)碼率為1/3,碼長為3 000 的LDPC 碼,將信息位全部打孔只傳輸校驗(yàn)位。因此可選取有限域的大小為255,基矩陣的維度為8×12。采用2.1 節(jié)中的設(shè)計(jì)方式來確定基矩陣中的循環(huán)移位因子,再通過2.2 節(jié)中PEXIT 算法設(shè)計(jì)具有良好譯碼門限的掩模矩陣對基矩陣進(jìn)行掩模。 信息位打孔比例和安全性有關(guān),信息位打孔比例越高,通信系統(tǒng)更安全但是掩模矩陣越難設(shè)計(jì),譯碼收斂速度越慢。 本節(jié)將給出一個示例去解釋上述構(gòu)造的LDPC碼的有效性和可靠性。令α為有限域GF(256)的本原元,隨機(jī)生成集合S1和S2為: 根據(jù)式(1)可得基矩陣B(S1,S2),其維度為8×12。通過PEXIT 算法設(shè)計(jì)維度為8×12 的掩模矩陣Z,對基矩陣B(S1,S2)進(jìn)行掩模,散列后得維度為2 040×3 060 的校驗(yàn)矩陣H,生成碼率為1/3、碼長為3 060 的碼字cunmp,再對cunmp的信息位進(jìn)行打孔可得碼率為1/2,碼長為2 040 的碼字cunmp。 通過Tanner 圖環(huán)的深度優(yōu)先搜索算法可知矩陣中不存在6 環(huán),8 環(huán)的數(shù)目為2 050。在如表3 所示的仿真條件下,碼字的性能如圖6 所示。圖中還包含兩種較為常用的LDPC 碼:cAR4JA[16]表示國際空間數(shù)據(jù)系統(tǒng)咨詢委員會(Consultative Committee for Space Data Systems,CCSDS)標(biāo)準(zhǔn)中由AR4JA方式所構(gòu)造的LDPC;cIRA為IEEE 802.16e 標(biāo)準(zhǔn)中由QC-IRA 所構(gòu)造的LDPC 碼[17]。 表3 仿真參數(shù) 從圖6 中可以看出其中碼字cAR4JA比碼字cmp的性能略優(yōu)0.5 dB,碼字cmp與碼字cIRA的性能幾乎一致。但是由于碼字cmp是非系統(tǒng)碼,所以無論是在低信噪比區(qū)還是高信噪比被竊聽的概率接近于0。 圖6 跳碼性能曲線 本文將加密與信道編碼結(jié)合,利用物理層的信號處理技術(shù)提升了通信系統(tǒng)的安全性。當(dāng)竊聽信道的信道質(zhì)量比合法通信信道質(zhì)量差時,通過提升保密容量來完成安全通信;當(dāng)竊聽信道質(zhì)量優(yōu)于合法通信信道時,采用非系統(tǒng)編碼來對明文進(jìn)行加密,提升了通信系統(tǒng)的安全性。2 面向信息加密的LDPC 碼構(gòu)造算法
2.1 基于有限域兩類子群的QC-LDPC 跳碼構(gòu)造算法
2.2 PEXIT 掩模算法
2.3 基于PEXIT 算法掩模的有限域QC-LDPC 碼
3 仿真與分析
4 結(jié)語