李 妹
(福州職業(yè)技術(shù)學(xué)院 阿里巴巴大數(shù)據(jù)學(xué)院,福建 福州 350001 )
隨著信息技術(shù)的發(fā)展,萬(wàn)物互聯(lián)并逐漸智能化,為人們生活提供便利的同時(shí)也帶來(lái)了種種安全隱患.2014 年,曾有研究工作人員演示如何在15 s 內(nèi)成功進(jìn)入中國(guó)家用恒溫控制器,監(jiān)視家庭環(huán)境或控制電器開(kāi)關(guān),導(dǎo)致巨額電費(fèi)賬單;2016 年,兩名黑客通過(guò)無(wú)線方式控制了一輛吉普車(chē)車(chē)中的空調(diào)、雨刮和電臺(tái),甚至能控制車(chē)輛的運(yùn)行與啟停.這兩例演示中,黑客入侵的目的是通過(guò)實(shí)驗(yàn)引起公眾對(duì)物聯(lián)網(wǎng)安全的重視,也表明物聯(lián)網(wǎng)安全問(wèn)題可能引發(fā)的嚴(yán)重后果.
物聯(lián)網(wǎng)節(jié)點(diǎn)之所以容易被入侵,與物聯(lián)網(wǎng)的特點(diǎn)有很重要關(guān)系.首先,物聯(lián)網(wǎng)節(jié)點(diǎn)軟硬件資源有限,往往沒(méi)有足夠的計(jì)算能力和存儲(chǔ)空間,不能像個(gè)人電腦和智能手機(jī)一樣進(jìn)行各種重量級(jí)的安全防護(hù)[1];其次,物聯(lián)網(wǎng)分布極為廣泛,其節(jié)點(diǎn)的密鑰更新或者安全升級(jí)難度極大;再次,物聯(lián)網(wǎng)節(jié)點(diǎn)的軟件開(kāi)發(fā)通常是開(kāi)源的,為黑客的攻擊提供了便利;最后,物聯(lián)網(wǎng)節(jié)點(diǎn)通常通過(guò)無(wú)線鏈路與互聯(lián)網(wǎng)相連,而無(wú)線通信的廣播特性為黑客的非法接入開(kāi)啟了“綠色通道”[2].
針對(duì)安全問(wèn)題,本文設(shè)計(jì)了一種全新的解決方案:生成一種竊聽(tīng)者根本無(wú)法獲得的安全密鑰,在物理層直接屏蔽竊聽(tīng)者,相當(dāng)于搭建了一座物理層動(dòng)態(tài)“防火墻”,將竊聽(tīng)者拒之墻外.合法通信的雙方根據(jù)信道特征生成的密鑰,僅需極少的軟硬件資源;密鑰根據(jù)信道特征的變化實(shí)時(shí)更新,解決了物聯(lián)網(wǎng)節(jié)點(diǎn)密鑰分發(fā)困難的問(wèn)題;只有在合法雙方所處的位置才能獲得一致的密鑰,既實(shí)現(xiàn)了定點(diǎn)控制安全,又避免了電磁波廣播特性帶來(lái)的風(fēng)險(xiǎn).本文方法可移植到幾乎所有的物聯(lián)網(wǎng)節(jié)點(diǎn)上,計(jì)算量少、安全性能強(qiáng),與現(xiàn)有的密鑰安全機(jī)制兼容,在未來(lái)物聯(lián)網(wǎng)安全領(lǐng)域具有重要的應(yīng)用價(jià)值.
本文選擇基于嵌入式無(wú)線通信系統(tǒng)進(jìn)行設(shè)計(jì),選用一臺(tái)大疆經(jīng)緯M100 無(wú)人機(jī)作為一個(gè)典型的物聯(lián)網(wǎng)智能節(jié)點(diǎn).地面控制端由地面控制模塊、密鑰生成模塊、加解密模塊和無(wú)線收發(fā)模塊組成;無(wú)人機(jī)端由無(wú)線收發(fā)模塊、密鑰生成模塊、加解密模塊、指令處理模塊和無(wú)人機(jī)組成;地面控制站使用PC 機(jī)搭建,密鑰生成和加解密模塊集成在Nucleo-F411 開(kāi)發(fā)板上;無(wú)線收發(fā)模塊由LoRa 模塊組成;指令處理模塊基于STM32 F407 開(kāi)發(fā),物聯(lián)網(wǎng)節(jié)點(diǎn)使用大疆經(jīng)緯M100 飛行平臺(tái).系統(tǒng)總體架構(gòu)如圖1.
圖1 系統(tǒng)總體架構(gòu)
1.2.1 收發(fā)兩端交互并提取信道信息 系統(tǒng)工作在時(shí)分雙工(TDD)模式下,通信雙方的信道分為上行信道和下行信道.假設(shè)從地面控制端到無(wú)人機(jī)端為上行信道,從無(wú)人機(jī)端到地面控制端為下行信道,地面控制端和無(wú)人機(jī)端收發(fā)硬件完全相同,所以兩者的無(wú)線信道有一致的隨機(jī)源.根據(jù)LoRa 特點(diǎn),提出簡(jiǎn)化的交互式信道信息提取方案,地面控制端和無(wú)人機(jī)的交互較好地實(shí)現(xiàn)上下行信道信息的獲取,功能實(shí)現(xiàn)流程圖如圖2.
圖2 功能實(shí)現(xiàn)流程圖
1.2.2 生成密鑰并加密私密信息 擁有了相同的隨機(jī)源,地面控制端和無(wú)人機(jī)就可以從中提取原始密鑰序列.利用糾錯(cuò)編碼進(jìn)行密鑰協(xié)商,消除收發(fā)兩端的不一致密鑰;用哈希變換進(jìn)行隱私放大,進(jìn)一步防止密鑰被竊??;最終生成相同的保密性較強(qiáng)的密鑰序列,對(duì)下一時(shí)刻的交互信息進(jìn)行加密.
根據(jù)信道的時(shí)變性,每個(gè)時(shí)刻交互信息經(jīng)歷的信道是不同的,因此提取生成的密鑰序列是動(dòng)態(tài)時(shí)變的,且密鑰序列在通信兩端分別生成,簡(jiǎn)化了密鑰分發(fā).信息交互和密鑰生成同步進(jìn)行,形成物聯(lián)網(wǎng)動(dòng)態(tài)“防火墻”.
動(dòng)態(tài)密鑰系統(tǒng)分為:物聯(lián)網(wǎng)無(wú)線收發(fā)裝置和嵌入式信號(hào)處理模塊,用UART 串口連接,可設(shè)置為一對(duì)一模式和一對(duì)多模式.系統(tǒng)結(jié)構(gòu)如圖3.
圖3 系統(tǒng)結(jié)構(gòu)圖
一對(duì)一模式硬件配置:2 個(gè)LoRa 收發(fā)模塊,2 個(gè)Nucleo F411RE 開(kāi)發(fā)板,1 個(gè)STM 32 F407VG 開(kāi)發(fā)板,1 臺(tái)PC 和1 個(gè)經(jīng)緯M100 無(wú)人機(jī);一對(duì)多模式配置:LoRa、Nucleo F411RE 開(kāi)發(fā)板和PC 各需要一個(gè),其他板卡配置不變.
嵌入式信號(hào)處理模塊由Nucleo F411 和STM32 F407 組成.Nucleo F411 在地面控制端通過(guò)串口分別與PC 和APC340 模塊連接,組成指令的封裝、加密、控制和發(fā)送模塊;在無(wú)人機(jī)端跟APC340 和STM32 F407 模塊連接,組成指令接收和解密模塊.同時(shí)在沒(méi)有無(wú)人機(jī)控制指令傳輸?shù)臅r(shí)候,由該部分完成密鑰的生成和協(xié)商.
通過(guò)C/C++完成整個(gè)系統(tǒng)的仿真調(diào)試及實(shí)現(xiàn).PC 端的操控界面如圖4,界面主要分為4 個(gè)功能區(qū):1號(hào)區(qū)域是串口參數(shù)調(diào)試區(qū),可對(duì)串口通信參數(shù)進(jìn)行設(shè)置和更改,并具有輸入指令功能,可對(duì)通信、加密、無(wú)人機(jī)控制指令進(jìn)行調(diào)試;2 號(hào)區(qū)域是無(wú)人機(jī)控制區(qū),可選擇控制指令是否啟用密鑰發(fā)送,對(duì)無(wú)人機(jī)發(fā)出各類(lèi)固定指令,設(shè)置無(wú)人機(jī)移動(dòng)參數(shù)并控制其移動(dòng);3 號(hào)區(qū)域是無(wú)人機(jī)遙控模擬區(qū),可模擬無(wú)人機(jī)的遙控器操作,控制無(wú)人機(jī)在三維空間移動(dòng)以及自旋;4 號(hào)區(qū)域是密鑰生成控制區(qū)域,可控制密鑰生成的開(kāi)始、停止和重啟,并顯示當(dāng)前密鑰.
圖4 PC 端操控界面
為實(shí)現(xiàn)基于位置物理層密鑰的動(dòng)態(tài)防火墻系統(tǒng),需要在上下行信道中獲取信道信息并量化生成密鑰,過(guò)程涉及信道參數(shù)的量化、密鑰的一致性協(xié)商及保密增強(qiáng)技術(shù)[3].
密鑰生成方案的信道模型如圖5,Alice 和Bob 為合法通訊者,Eve 為被動(dòng)竊聽(tīng)者.為測(cè)量信道特征參數(shù),Alice 和Bob 在相干時(shí)間內(nèi)互發(fā)探測(cè)信號(hào).
圖5 利用無(wú)線信道參數(shù)生成密鑰的信道模型
Alice、Bob 和Eve 接收到的信號(hào)可表示為
對(duì)于竊聽(tīng)者Eve,只要位于合法用戶半個(gè)波長(zhǎng)之外,則竊聽(tīng)方的信道狀態(tài)信息(CSI)與合法用戶不相關(guān),因此Eve 無(wú)法通過(guò)yeb(t)和yea(t)生成與合法用戶相似的密鑰[4].
采用雙門(mén)限量化方法[5],可有效減少由量化產(chǎn)生的密鑰不一致位,提高密鑰的一致性.首先,合法雙方Alice 和Bob 根據(jù)RSSI 樣本值計(jì)算量化門(mén)限:
式中:下標(biāo)u 代表用戶;μu=E {Xu}和σu=D {Xu}分別表示RSS 樣本值的均值和標(biāo)準(zhǔn)差;α 為量化門(mén)限間隔的調(diào)整因子.本文以Xu(t)表示用戶u 從接收信號(hào)yu(t)中選取的信道參數(shù)(例如RSSI).假設(shè)采樣間隔為T(mén),t=iT,i∈(1,2,…,Nk),則Xu(iT)表示t 時(shí)刻的RSSI 采樣值,表示用戶u 對(duì)信道參數(shù)的采樣值Xu(iT)量化得到的第i 個(gè)二進(jìn)制密鑰比特,此時(shí)的量化函數(shù):
式中,e 表示刪除位.Alice 和Bob 在量化時(shí)分別記錄處于上下門(mén)限內(nèi)的RSSI 采樣點(diǎn)的編號(hào),形成刪除位的集合},并通過(guò)公共信道互相轉(zhuǎn)發(fā).最終的刪除索引:
采用奇偶校驗(yàn)檢錯(cuò)[6]與線性分組碼糾錯(cuò)[7]相結(jié)合的方式,對(duì)密鑰比特的不一致位進(jìn)行糾錯(cuò).算法主要分為三步:
1)首先將待糾錯(cuò)長(zhǎng)度為N 的初始密鑰Ka和Kb分組,計(jì)算奇偶校驗(yàn)位,并由Alice 發(fā)送給Bob 進(jìn)行檢錯(cuò),從而確定不一致比特所在的分組;
2)對(duì)于存在錯(cuò)誤密鑰比特的分組Kb(m),Bob 根據(jù)Kb(m)和校驗(yàn)矩陣H(n-k)×n計(jì)算校驗(yàn)子,S(Ka(m))=Ka(m)H(n-k)×n,m=1,2,…,,再發(fā)送給另一方;
3)Alice 將校驗(yàn)子與自身的密鑰組合,并進(jìn)行最小漢明距離譯碼,從而得到
合法通信雙方在公共信道上的一致化協(xié)商過(guò)程中可能會(huì)導(dǎo)致信息泄漏.因此需要通過(guò)保密增強(qiáng)技術(shù)將部分安全的密鑰壓縮為完全安全的密鑰.
保密增強(qiáng)的原理[8]:假設(shè)合法雙方共享一個(gè)長(zhǎng)度為n 的比特串S,U 為竊聽(tīng)方關(guān)于S 的所有信息.則S 關(guān)于U 的條件概率分布和2 階瑞利熵分別為P[S|U=u]和H2[S|U=u],原理圖如圖7.
圖6 密鑰一致性協(xié)商實(shí)現(xiàn)流程圖
圖7 保密增強(qiáng)原理圖
假設(shè)G 為通用哈希函數(shù)群(Universal Hash function group),G 將長(zhǎng)度為n 的比特串壓縮為長(zhǎng)度為r的比特串,獲得S′=G(S),并有如下的不等式成立:
利用MD5 加密算法對(duì)協(xié)商一致后的密鑰進(jìn)行保密增強(qiáng),得到充分隨機(jī)的安全密鑰.竊聽(tīng)方的密鑰比特只要與合法方有任何不一致,就無(wú)法得到與合法方相同的最終密鑰.此時(shí),Alice 和Bob 可用保密增強(qiáng)后的密鑰實(shí)現(xiàn)安全通信.
收發(fā)雙方同時(shí)生成基于位置的動(dòng)態(tài)密鑰是本文的安全策略.為驗(yàn)證生成動(dòng)態(tài)位置密鑰的可行性,進(jìn)行仿真驗(yàn)證,相關(guān)參數(shù)設(shè)置見(jiàn)表1.
表1 動(dòng)態(tài)位置密鑰仿真參數(shù)
竊聽(tīng)者Eve 在不同位置生成密鑰,并與合法用戶Bob 的密鑰進(jìn)行比對(duì).密鑰不一致率的仿真結(jié)果如圖8.
(1)理科專(zhuān)業(yè):重點(diǎn)講授0 和1 思維、程序與遞歸、算法思維和網(wǎng)絡(luò)化思維;正常講解計(jì)算與計(jì)算思維、計(jì)算系統(tǒng)、數(shù)據(jù)化思維和計(jì)算科學(xué)前沿。
圖8 空間各點(diǎn)密鑰不一致率仿真圖
由圖8 可以看出,除竊聽(tīng)者Eve 緊貼Bob 所處的位置時(shí)密鑰不一致率很低,在其他位置時(shí)密鑰不一致率始終較高.仿真結(jié)果表明:空間位置造成的差異十分明顯,生成與合法用戶位置強(qiáng)耦合的動(dòng)態(tài)位置密鑰是可行的.
搭建基于物聯(lián)網(wǎng)動(dòng)態(tài)密鑰防護(hù)系統(tǒng)的實(shí)驗(yàn)平臺(tái),在室內(nèi)環(huán)境中采集數(shù)據(jù),對(duì)本文的算法進(jìn)行驗(yàn)證.實(shí)驗(yàn)參數(shù)設(shè)置見(jiàn)表2.
表2 實(shí)驗(yàn)參數(shù)設(shè)置
4.2.1 室內(nèi)測(cè)試方案及效果演示 室內(nèi)測(cè)試環(huán)境如圖9,為包含桌椅和床柜的宿舍,是典型的多徑室內(nèi)環(huán)境.
圖9 室內(nèi)測(cè)試環(huán)境
實(shí)驗(yàn)步驟如下:
step1:將Bob 和Eve 靜止置于寢室中;
step2:Alice 以0.5 m·s-1的速度在走廊沿圖示路線往返運(yùn)動(dòng),每往返一圈作為一次實(shí)驗(yàn);
step3:Alice 和Bob 統(tǒng)計(jì)RSSI 并利用本文算法生成密鑰;
step4:將Alice 和Bob 的密鑰進(jìn)行對(duì)比,計(jì)算錯(cuò)誤概率;
step5:隨機(jī)改變Bob 和Eve 的位置;
step6:重復(fù)step2、step3、step4.
當(dāng)Bob 和Eve 分別位于直線距離2 m 的兩個(gè)不同宿舍時(shí),Alice 與Bob 的RSSI 采樣圖如圖10,Alice 與Eve 的RSSI 采樣圖如圖11.從圖10 中不難發(fā)現(xiàn),Alice 和Bob 的RSSI 重合度較高,說(shuō)明Alice與Bob 之間的合法信道具有較好的互易性,有利于生成一致的密鑰.從圖11 中可以看出,Alice 與Eve 的RSSI 采樣值的互易性較差,因此Eve 無(wú)法利用自身竊聽(tīng)到的RSSI 采樣值生成與合法方相同的密鑰.
圖10 室內(nèi)測(cè)試Alice 與Bob 的RSSI 采樣圖
圖11 室內(nèi)測(cè)試Alice 與Eve 的RSSI 采樣圖
4.2.2 室內(nèi)測(cè)試密鑰不一致率統(tǒng)計(jì)結(jié)果 室內(nèi)測(cè)試接收方密鑰不一致率數(shù)據(jù)見(jiàn)表3,表中數(shù)據(jù)為50 次實(shí)際測(cè)量的平均值.
表3 室內(nèi)測(cè)試接收方密鑰不一致率數(shù)據(jù)
Bob接收信號(hào)密鑰不一致率始終非常小;Eve 接收信號(hào)密鑰不一致率接近0.5;只要在滿足竊聽(tīng)方Eve 與合法方Bob 的距離大于2 m 的條件下,改變Bob 和Eve 的位置,保密通信效果沒(méi)有顯著變化.
實(shí)驗(yàn)結(jié)果表明:室內(nèi)環(huán)境下,本文保密通信效果良好,合法接收方Bob 能夠完成低密鑰不一致率的保密通信,而非法竊聽(tīng)方Eve 密鑰不一致率接近0.5 的理想誤碼性能(此時(shí),Eve 對(duì)明文的解密基本是猜測(cè)的),從而達(dá)到了保密通信的要求.
動(dòng)態(tài)密鑰防護(hù)系統(tǒng)實(shí)物如圖12.搭建了無(wú)人機(jī)動(dòng)態(tài)密鑰防護(hù)安全通信驗(yàn)證平臺(tái),在室外環(huán)境中采集數(shù)據(jù)對(duì)本文算法進(jìn)行驗(yàn)證.
圖12 動(dòng)態(tài)密鑰防護(hù)系統(tǒng)實(shí)物圖
室外測(cè)試實(shí)驗(yàn)參數(shù)設(shè)置見(jiàn)表4.
表4 室外測(cè)設(shè)實(shí)驗(yàn)參數(shù)設(shè)置
4.3.1 室外測(cè)試方案及效果演示 室外測(cè)試環(huán)境如圖13,在操場(chǎng)中進(jìn)行實(shí)驗(yàn).
圖13 室外測(cè)試環(huán)境
實(shí)驗(yàn)步驟如下.
step1:將Bob 和Eve 分別作為無(wú)人機(jī)的地面控制站,靜止置于操場(chǎng)中;
step2:Alice 作為無(wú)人機(jī)的數(shù)傳模塊,搭載在無(wú)人機(jī)上沿著圖示路線環(huán)繞Eve 運(yùn)動(dòng);
step3:Alice 和Bob 利用RSSI 生成密鑰;
step4:將Alice、Bob 和Eve 的密鑰進(jìn)行對(duì)比,統(tǒng)計(jì)錯(cuò)誤概率;
step5:隨機(jī)改變Bob 和Eve 的位置;
step6:重復(fù)step2、step3、step4.
4.3.2 室外測(cè)試密鑰不一致率統(tǒng)計(jì)結(jié)果 室外測(cè)試接收方密鑰不一致率數(shù)據(jù)見(jiàn)表5,表中的數(shù)據(jù)為30次實(shí)際測(cè)量的平均值.
表5 室外測(cè)試接收方密鑰不一致率數(shù)據(jù)
Bob接收信號(hào)密鑰不一致率始終非常小;Eve 接收信號(hào)密鑰不一致率接近0.5;只要在滿足竊聽(tīng)方Eve 與合法方Bob 的距離大于2 m 的條件下,改變Bob 和Eve 的位置,保密通信效果沒(méi)有顯著變化.
結(jié)果表明:室外環(huán)境下,本文方法保密通信效果良好,合法用戶Bob 能夠完成低密鑰不一致率的保密通信,而非法竊聽(tīng)方Eve 密鑰不一致率接近0.5 的理想誤碼性能(此時(shí),Eve 對(duì)明文的解密基本是猜測(cè)的),從而達(dá)到了保密通信的要求,有效防止無(wú)人機(jī)被非法截獲.
1)無(wú)人機(jī)飛行速度較快,使得RSSI 的變化相比室內(nèi)環(huán)境更快,由于半雙工系統(tǒng)中信道測(cè)量存在時(shí)差,信道參數(shù)的互易性相比室內(nèi)移動(dòng)環(huán)境較差,因此密鑰不一致率略有升高;
2)平臺(tái)使用的LoRa 無(wú)線收發(fā)模塊和STM32 控制模塊不夠穩(wěn)定,硬件噪聲使得信道測(cè)量不夠精準(zhǔn);
3)采用奇偶校驗(yàn)位與線性分組碼結(jié)合的方式進(jìn)行密鑰比特的糾錯(cuò),其糾錯(cuò)能力有限.可通過(guò)采用糾錯(cuò)能力更強(qiáng)的差錯(cuò)控制編碼技術(shù)提高合法通信雙方的密鑰一致性;
4)實(shí)測(cè)數(shù)據(jù)與理論仿真結(jié)果一致,驗(yàn)證了采用動(dòng)態(tài)位置密鑰進(jìn)行保密通信的可行性.
在通信的同時(shí)采集接收信號(hào)強(qiáng)度生成密鑰,不妨礙合法雙方的正常通信且無(wú)需密鑰分發(fā),具有低時(shí)延、高可靠以及計(jì)算簡(jiǎn)單的優(yōu)點(diǎn);采用雙門(mén)限量化方法,可以有效減少量化產(chǎn)生的密鑰不一致位,提高了密鑰的一致性;采用奇偶校驗(yàn)檢錯(cuò)與線性分組碼糾錯(cuò)相結(jié)合的方式,僅需“一次交互”即可實(shí)現(xiàn)密鑰的一致性協(xié)商,提高了密鑰協(xié)商的效率,保證了安全通信的可靠性;生成的位置密鑰可以與現(xiàn)有的密鑰安全機(jī)制兼容,有利于在不同類(lèi)型的物聯(lián)網(wǎng)終端上推廣.
由于密鑰來(lái)源于無(wú)線信道本身,無(wú)線信道的測(cè)量是否精確對(duì)加密效果影響很大,且無(wú)線信道也具有時(shí)變性,需要實(shí)時(shí)更新.下一步,如何設(shè)計(jì)滿足物聯(lián)網(wǎng)節(jié)點(diǎn)低功耗低時(shí)延需求的信道估計(jì)量化算法十分關(guān)鍵;電磁波干擾的復(fù)雜性和無(wú)線信道的隨機(jī)性導(dǎo)致通信雙方的信道估計(jì)存在差異,給生成一致的動(dòng)態(tài)位置密鑰產(chǎn)生了不小的難度,需要進(jìn)一步深入研究.
寧德師范學(xué)院學(xué)報(bào)(自然科學(xué)版)2021年1期