陳 媧,李 為,雷 菁
(國防科技大學 電子科學學院,湖南 長沙 410000)
當前,為了應對海量數據的挑戰,我們需要足夠可靠以及更安全的信息傳輸機制。不同于傳統解決辦法是在信息層進行加密處理,物理層安全技術利用物理層的基礎特性從安全編碼、信號處理以及密鑰生成等角度,對調制方式和信道編碼信息進行保護,可以作為上層加密方法的一種有效補充。
無線信道密鑰生成技術是物理層安全技術研究的重要分支,其主要利用無線信道的互易性、時變性及空間去相關性在合法方之間共享相同的密鑰[1-2],用于后續加密手段中。無線信道密鑰生成技術的優點在于不需要一個固定的密鑰分發設施,并且安全性不依賴于算法的計算復雜性,因此在物聯網中的車聯網、移動通信、智能家居等設備資源有限的應用中更加體現優勢,已經作為一種輕量級密鑰分配工具而愈加受重視。
用來評價密鑰生成方案性能的標準通常有密鑰生成速率、密鑰不一致率和隨機性。
密鑰生成速率是指單位時間內生成的密鑰比特數目(單位:bit/s)或者平均每次信道探測獲得的密鑰比特數目(單位:bit/packet);
密鑰不一致率是指合法通信雙方獲得的密鑰中不一致的密鑰比特數目占總密鑰比特數的比例;
隨機性是衡量密鑰提取性能的一個非常重要的指標,目前被廣泛采用的為NIST(National Institute of Standards and Technology)隨機性測試[3],其總共包含 16 項指標。該標準按照一定的測試算法,通過對待檢測序列與理想隨機序列進行偏離程度的比較,得到各項指標的 P-value 值作為隨機性測試結果。如果所有檢測項的 P-value值大于等于0.01,則待檢測序列通過隨機性測試。
通常將無線信道密鑰生成過程分為信道測量、量化、信息協商和保密放大4個步驟,如圖1所示,其中Alice和Bob為合法通信雙方,Eve為竊聽者。

圖1 無線信道密鑰生成步驟Fig.1 Steps of key generation from wireless channels
在信道測量過程中,通信雙方在信道的相關時間內互相發送導頻,以得到特定參數的相關的觀測值作為生成密鑰的隨機源,這個參數可以是接收信號強度[4-8]、信道響應[9-10]、信道相位響應[11-12]以及信道多徑時延[13]等。多頻率[9,14-15]和多天線[16-17]提供的頻率多樣性和空間多樣性可以提供更多的隨機源,提高密鑰生成速率。
在量化過程中,通信雙方將通過信道探測得到的信號強度或信道信息量化為0,1序列。常用的方法有:基于中位數等單閾值的量化方法[18],將大于閾值的數據量化為1,小于閾值的數據量化為0;基于均值和方差的雙閾值量化方法[4],將大于較高閾值的數據量化為1,小于較低閾值的數據量化為0,閾值間的數據舍棄;基于累積分布函數的量化方法[6,10],依據數據的大小分布確定量化級別,保證每個量化級內數據所占比例相同,同時可以在此方法的基礎上加入保護間隔[17],舍棄保護間隔中的數據以使生成的比特序列不一致率降低。格雷碼可以用來進行多比特量化[19],不僅增加了密鑰的比特數,而且因為相鄰碼字之間只有一位不同,有效限制量化后序列的不一致率。
通信雙方分別量化后的比特流中通常存在不一致的情況。信息協商被用來進行對比特流的糾錯,降低不一致率。常用的有Cascade方法[5]和糾錯碼方法[7,9]。
Cascade方法中,Alice將比特序列隨機排列并將其分塊,然后將每塊的排列和奇偶校驗信息發送給Bob。Bob用同樣的方式改變序列,將比特序列分成小塊,計算并檢查塊的奇偶性是否相同。對于每個塊,如果奇偶校驗不匹配,則Bob執行二進制搜索,以確定是否可以更改塊中的少量位以使塊匹配奇偶信息,并進行迭代,直到成功的概率超過期望的閾值。
糾錯碼協商中,以BCH碼為例,通信雙方通過密鑰序列與校驗矩陣相乘得到伴隨式,Alice將伴隨式信息發給Bob,Bob通過比較伴隨式的差值可以估計出錯誤圖樣,對原始密鑰序列進行糾錯。
由于比特的相關性和信息協商過程泄漏給竊聽者的信息,合法通信雙方通過隱私放大減小輸出比特流的大小來解決。這可以通過Alice和Bob使用通用哈希函數來實現,這些函數是從一組公開的函數中隨機選擇的,以獲得固定大小的較小長度,從較長的隨機性較弱的輸入流中輸出更短的隨機性更強的數據[5,20]。
近年來,對無線信道密鑰生成技術進行研究的場景設置逐漸拓展,例如從通信雙方信道測量值互易性較理想的條件到通信雙方信道測量值互易性不理想的條件,從波動充足的動態信道條件到波動較小的靜態信道條件,從一對一通信場景到存在中繼的通信場景和多用戶通信場景。
除信道估計時的估計誤差外,由于受到半雙工系統的非同時測量、不對稱的信道噪聲、硬件差異等因素的影響,通信雙方得到的初始測量值之間的一致度可能不理想[21],而信息協商過程的能力有限,因此當通信雙方測量值互易性不理想時,可能導致信息協商后通信雙方生成密鑰仍不一致。為了解決這個問題,可以在對信道測量值進行量化前進行處理,減輕量化后的信息協商過程的負擔,起到輔助降低密鑰不一致率的作用。
對于信道測量值不一致的問題,研究者提出了不同的方案。文獻[6,22]利用插值的思想解決非同時測量的問題;文獻[23]利用多項式曲線擬合信道測量值;文獻[24-25]提出利用1范數最小化的方法增強接收信號強度的互易性;文獻[26]對通信雙方的多次測量數據利用加權系數進行線性組合,使組合后雙方的數據相關性最大;文獻[10]提出信道增益補償方案,即先用少量探測包得出信道探測值中的非互易成分,再在探測值中減去非互易成分;文獻[27]提出進行小波分析消除非互易性的影響;文獻[28]利用低通濾波器將大部分高頻噪聲過濾。
最原始的基于無線信道生成密鑰的過程十分依賴信道的變化,這些變化可以通過通信雙方的移動或環境中物體的移動而引起。在靜態的信道環境中,信道波動較小,變化慢,信道相關時間較長。如果繼續遵循每個相關時間探測一次的規則,生成密鑰的速率十分緩慢;如果保持較高的探測速率,生成的比特序列通常沒有足夠的隨機性。
靜態信道環境下的密鑰生成方案,通常通過通信雙方給基礎方案中已知、公開的訓練符號增加隨機性,得到隨機的接收信號或通過信道測量得到具備足夠隨機性的等效信道。如文獻[18,29]利用ESPAR天線,通過人工改變電抗矢量,使信道狀態隨機變化,從每個測量值中可生成0.4~0.6 bit密鑰。文獻[7,30-31]利用多天線結合隨機系數的思想,其中文獻[7]通過幅度和相位系數調節多天線通信節點發射的導頻,文獻[30-31]在MIMO系統中加入隨機波束成形系數,把雙方隨機波束成形系數與原信道響應的乘積作為等效信道響應。由于利用MIMO系統提供的多個信道信息作為隨機源,密鑰生成速率可達20 kbit/s。文獻[32]對信道探測得到的信道響應矩陣進行奇異值分解后,進行重構并由新的信道響應矩陣生成秘密導頻進行信道探測,提高等效信道的隨機性,平均可以從每個信道每次探測中生成8~10 bit密鑰。文獻[20,33-34]中通信雙方都發送隨機的探測序列,用收到的信號與發送信號的積生成密鑰,在利用多載波的情況下密鑰生成速率最高可達每個數據探測包生成64 bit密鑰。
另外,在環境中存在可用的中繼節點時,可以借助中繼節點輔助解決信道隨機性不足的問題。
在通信雙方之間沒有直接可用信道時,通過中繼節點的輔助建立多跳信道,中繼節點轉發接收信號或測量的信道信息的函數,為通信雙方提供共同的隨機源生成密鑰;在通信雙方之間有直接信道時,利用中繼節點提供的額外隨機源,可以進一步提高通信雙方的密鑰生成速率。
對協作密鑰生成技術的一些研究中,利用中繼節點轉發信號或者信道響應,輔助通信雙方得到不相鄰信道的信息。文獻[35]針對中繼節點的功能提出了4種轉發方式,利用中繼節點與通信雙方之間信道響應的乘積生成密鑰;文獻[36]考慮了在中繼節點只能與通信雙方中的一方連接的場景,利用中繼節點相鄰信道與通信雙方之間信道響應的乘積作為隨機源;文獻[37]提出中繼節點在給通信雙方發送信號時加入加權系數,使通信雙方收到相同的信號,估計出相同的等效信道響應;文獻[38]提出發送方發送隨機的探測信號,接收方通過已知信道響應值估計出探測信號,再進行對中繼節點相鄰信道的估計;文獻[39]提出中繼節點在給通信雙方發送信號時,通過計算使得一個通信節點接收的信號等于中繼節點與另一個通信節點間信道響應的值;文獻[40]考慮了多天線通信節點和多個多天線中繼節點的場景以及3種中繼之間的協作模式,進行了通信節點和中繼節點工作天線選擇的優化;文獻[41]提出了中繼節點利用反向陣列(RDA)進行轉發。但在中繼轉發的方案中,轉發過程往往會放大信道噪聲。
另外,還有一些基于網絡編碼思想的工作,核心是中繼節點與通信雙方進行信道測量后,向通信雙方發送兩個信道信息量化值的異或,輔助通信雙方得到不相鄰信道的信息。在此基礎上,文獻[42-46]進行了不同的研究;文獻[42]提出了一種在多個中繼節點存在下對中繼節點保密的密鑰生成方案;文獻[43]考慮在功率限制條件下對中繼節點進行功率分配的優化使密鑰生成速率最大;文獻[44]提出了應用壓縮感知信道估計;文獻[45]提出了通信雙方通過多個中繼進行多跳傳遞信息得到共享的信道信息的方案;文獻[46]推導了基于網絡編碼思想的單中繼密鑰生成方法的最優可達速率。
文獻[47-48]提出了在通信節點之間或通信節點與中繼節點間已經建立安全信道條件下的密鑰生成,其中文獻[47]提出了中繼節點通過發送人工干擾可以引入更大波動性,增加密鑰生成速率;文獻[48]考慮無線體區域網絡(Wbans)中的星型拓撲組模型中新節點即將加入組時,組內除中心節點外的其他節點輔助新加入的節點與中心節點建立連接交換信息。
在無線網絡中,往往需要在多個用戶之間進行安全的數據交換,這時多個用戶之間要生成共享的組密鑰。目前已有一些針對組密鑰的研究,模型中的多用戶組成環形、星型及網狀等拓撲結構。
3.4.1 環形拓撲結構
在環形拓撲結構中,節點形成一個圓環,每個節點與相鄰的兩個節點之間通過信道連接。
針對環形拓撲結構,文獻[12]以某一個節點為起點沿順時針和逆時針兩個方向發送導頻信號,將每個節點兩次探測到的相位響應之和作為共享密鑰;文獻[49]提出將任意兩節點間成對生成的密鑰映射成多個相互獨立的部分,節點將本地隨機生成的密鑰用成對密鑰對應部分進行加密依次傳遞直到所有節點共享。在半雙工條件下,依次探測或傳遞信息導致很長延時。
3.4.2 星型拓撲結構
在星型拓撲結構中,通常通過一定規則選擇出一個中心節點,其他節點與中心節點通過信道連接,但其他節點間不能直接通信。
針對星型拓撲結構,文獻[50]提出了對單簇、獨立多簇和重疊多簇等多種不同星型拓撲的組密鑰生成協議;文獻[51]提出了將中心節點通過廣播發送信號與參考信道信號之間的差值,輔助所有節點生成共同的密鑰;文獻[52]結合網絡編碼技術,中心節點把每個節點間信道與參考信道信號的異或值發給節點來共享密鑰;文獻[53]提出了中心節點直接利用隨機產生的密鑰通過一次一密系統加密傳輸給其他節點;文獻[54]提出了一種基于OFDMA系統的組密鑰生成方案,有效減少了信道探測的時間。
3.4.3 網狀拓撲結構
在網狀拓撲結構中,每個節點都與其他所有節點之間通過信道連接。
針對網狀拓撲結構,文獻[55]針對網狀拓撲,在信道探測步驟后,每個節點廣播其接受信道的加權和;文獻[56]將其拓展到節點多天線的情況,并把暴力搜索優化加權系數升級到基于新的度量的次優方案,但仍然要求節點已知相鄰所有信道的信息。文獻[57]提出由特定節點廣播輔助其他節點獲得非相鄰信道的信息時,直接將信道信息的函數量化到復星座圖上以減少延遲。總的來說,在網狀結構中需要進行多次探測和廣播得到所有的信道信息,要求相關時間有一定的長度。
無線信道密鑰生成技術已經在藍牙[58]、WiFi[8,59]、車輛通信[60-61]、無線傳感器[6,14,62-63]、BAN[64-66]及LORA[67-68]等場景的實驗平臺進行了實現。但由于現有硬件條件的限制,這些實現工作中主要是基于從接收信號強度提取隨機性生成密鑰,密鑰生成速率較低。表1總結了不同應用場景下基于不同實驗平臺實現的密鑰提取技術及對應可達到的密鑰生成速率。

表1 不同應用場景下基于不同實驗平臺實現的密鑰提取技術Tab.1 Key generation implemented by different platforms in different application situations
現有工作中,通常使用Jakes模型對信道相關性進行建模。該模型中,在均勻散射的非視距瑞利信道中,假設散射體有無窮個,則距離半個波長以上的信道可以視作不相關信道。文獻[69]發現,在室內環境中,即使竊聽者距離合法通信節點半個波長,信道間仍然有一定的相關性。另外,5G毫米波信道不能直接建模為Jake’s模型,實現竊聽信道不相關的條件可能更加嚴格。在未來的研究中,不僅需要解決竊聽者信道相關的問題,還需要對于竊聽者的性能和系統的安全性用更加具體的標準進行定量的分析和驗證。
在通信節點移動的場景中,信道相關時間會隨著移動速度的增加而變短。即使只是在車輛通信的場景中,相關時間就可能短到微秒數量級。在傳統無線信道密鑰生成技術中通常認為的傳輸、接收數據包的時間遠小于信道相關時間這個設定可能不再成立。在節點移動速度更高的場景中,比如節點位于高鐵時,通信雙方進行信道探測是否還能保持互易性是值得探索和發現的。如何在節點高速移動的場景中從本質上解決信道探測互易性低的問題以及提出密鑰生成速率更理想的方案,有待下一步研究。
在現有工作中,大多數考慮的竊聽模型為單個被動竊聽者,即系統模型中只存在一個竊聽者,竊聽者只對通信過程進行竊聽而不會主動進行干預。對于竊聽者具備更強攻擊能力的情況,仍需投入更多研究,如竊聽者多天線、系統中存在多個協作竊聽者的情況對系統安全性能的影響,以及在竊聽者進行主動攻擊時,能夠在消除主動攻擊影響的同時,不影響合法通信的密鑰生成技術等。
無線信道密鑰生成技術作為一種輕量級的密鑰分發工具,在物聯網等資源受限的通信場景中具有廣泛應用前景。本文總結了無線信道密鑰生成技術的性能標準和步驟,以及幾種特殊環境或場景下的密鑰生成技術的發展,歸納了密鑰生成技術的應用實現,并分析了未來值得進一步研究的方向。