文 長(zhǎng)沙市麓山國(guó)際實(shí)驗(yàn)學(xué)校G1606班 劉潤(rùn)澤
一次偶然的機(jī)會(huì),我在軍事雜志上看到有關(guān)“猛禽”戰(zhàn)斗機(jī)的介紹,得知它如此強(qiáng)悍是由于在機(jī)身配備了無(wú)線(xiàn)傳感器網(wǎng)絡(luò)(簡(jiǎn)稱(chēng)WSN),自此我對(duì)WSN產(chǎn)生了濃厚的興趣。
在老師的指導(dǎo)下,我逐漸了解了WSN的內(nèi)涵,尤其是WSN中假包注入攻擊引起了我的關(guān)注。假包注入攻擊是指,WSN通常被部署在無(wú)人地帶,攻擊者可截取傳感器并偽造假冒事件,意圖欺騙終端用戶(hù)。
通過(guò)查閱文獻(xiàn)得知,研究者針對(duì)該問(wèn)題做了一些識(shí)別假包的研究,在識(shí)別概率上取得了不錯(cuò)的效果。但在大多數(shù)算法中,假包須在發(fā)送路徑中傳輸很遠(yuǎn)的距離后才能被識(shí)別,從而造成能量浪費(fèi)。有專(zhuān)家提出,利用對(duì)稱(chēng)密鑰技術(shù)識(shí)別假包的辦法(下文簡(jiǎn)稱(chēng)SEF)在包中加入驗(yàn)證碼,由中間節(jié)點(diǎn)驗(yàn)證。有的專(zhuān)家則提出利用上游節(jié)點(diǎn)加密、下游節(jié)點(diǎn)驗(yàn)證的協(xié)作方法,還有的專(zhuān)家提出利用多條路徑同時(shí)轉(zhuǎn)發(fā)驗(yàn)證的思想以適應(yīng)網(wǎng)絡(luò)結(jié)構(gòu)變化。
我提出一種基于雙重加密的假包識(shí)別方案DFR,在節(jié)點(diǎn)間建立關(guān)聯(lián),以形成密集認(rèn)證區(qū)域,并將密鑰與所在簇捆綁,然后由轉(zhuǎn)發(fā)節(jié)點(diǎn)對(duì)兩類(lèi)MAC以及位置關(guān)系進(jìn)行校驗(yàn),從而提高識(shí)別概率,并有效檢測(cè)由不同區(qū)域被俘節(jié)點(diǎn)共同偽造的假包。
節(jié)點(diǎn)撒下之前,預(yù)先通過(guò)機(jī)器人將一個(gè)密鑰分組分發(fā)給節(jié)點(diǎn)。密鑰服務(wù)器共包含n個(gè)分組,稱(chēng)為R類(lèi)密鑰。節(jié)點(diǎn)撒下后自動(dòng)組織成團(tuán),責(zé)任節(jié)點(diǎn)聚集團(tuán)內(nèi)節(jié)點(diǎn)信息,生成初始包 hi:(z,head ,c1 ,c2 ,...,cz)。其中 z為始值,等于團(tuán)內(nèi)節(jié)點(diǎn)數(shù)量的計(jì)數(shù)器。
接下來(lái),責(zé)任節(jié)點(diǎn)將hi消息向目的地發(fā)送。每個(gè)節(jié)點(diǎn)收到hi消息后,將其中最末的數(shù)據(jù)刪除并記錄,該節(jié)點(diǎn)與被刪節(jié)點(diǎn)形成對(duì)偶節(jié)點(diǎn)。同時(shí),將節(jié)點(diǎn)ID插入hi消息中,z減小1,變?yōu)榱憬K止。對(duì)偶節(jié)點(diǎn)通過(guò)交換密鑰共享密鑰對(duì),該類(lèi)密鑰叫A類(lèi)密鑰。最后,責(zé)任節(jié)點(diǎn)收集團(tuán)內(nèi)節(jié)點(diǎn)兩類(lèi)密鑰,并發(fā)送給目標(biāo)節(jié)點(diǎn)。
如果區(qū)域內(nèi)有事情發(fā)生,責(zé)任節(jié)點(diǎn)聯(lián)合其他團(tuán)內(nèi)節(jié)點(diǎn)一起產(chǎn)生數(shù)據(jù),數(shù)據(jù)中要加上每個(gè)團(tuán)內(nèi)節(jié)點(diǎn)的兩類(lèi)驗(yàn)證碼,共T個(gè)節(jié)點(diǎn)。形成的數(shù)據(jù)格式如下:
report:{C;event;R1,MR1;...;RT,MRT;A1,MAC1;...;AT,MACT}.
一方面,中間的傳感器如果碰巧預(yù)先存儲(chǔ)了與數(shù)據(jù)中相同的一個(gè)R類(lèi)密鑰,那么能以一定的幾率對(duì)假包進(jìn)行識(shí)別;另一方面,“混合驗(yàn)證區(qū)”傳感器存儲(chǔ)了與組內(nèi)節(jié)點(diǎn)商定的密鑰,也能對(duì)假包進(jìn)行第二層識(shí)別。中途節(jié)點(diǎn)接收到數(shù)據(jù)后,識(shí)別步驟如圖1所示。
(1)先查驗(yàn)數(shù)據(jù)中有沒(méi)有T個(gè){Rk,MRk}和{Ak,MACk},如果沒(méi)有包含上述元素,說(shuō)明是敵對(duì)者構(gòu)造的假包,節(jié)點(diǎn)將它扔掉。
(2)再查驗(yàn)數(shù)據(jù)中R類(lèi)密鑰是否屬于不同的組,如果沒(méi)有包含這類(lèi)密鑰,節(jié)點(diǎn)將它扔掉。
(3)利用存儲(chǔ)的R類(lèi)密鑰重新產(chǎn)生驗(yàn)證碼并驗(yàn)證數(shù)據(jù)中的驗(yàn)證碼,驗(yàn)證通過(guò)便轉(zhuǎn)發(fā),否則將它扔掉。
(4)利用存儲(chǔ)的A類(lèi)密鑰重新產(chǎn)生驗(yàn)證碼并驗(yàn)證數(shù)據(jù)中的驗(yàn)證碼,驗(yàn)證通過(guò)便轉(zhuǎn)發(fā),否則將它扔掉。
(5)若上述驗(yàn)證都通過(guò),轉(zhuǎn)發(fā)數(shù)據(jù)到下一個(gè)傳感器。
圖1 假包識(shí)別過(guò)程
為進(jìn)一步檢驗(yàn)DFR方案的性能,本文利用C++語(yǔ)言建立了模擬仿真平臺(tái)。
我將實(shí)驗(yàn)區(qū)域設(shè)置為20×20m2,通信距離和感應(yīng)距離分別為2m、5m,密鑰組為10個(gè),傳感器發(fā)包的間隔為2s,共發(fā)包16個(gè)。
圖2 SEF與DFR識(shí)別概率
通過(guò)仿真實(shí)驗(yàn)數(shù)據(jù),從圖2得出,隨著傳輸跳數(shù)的增大,SEF和DFR的識(shí)別概率都增大。這是因?yàn)镾EF和DFR中每個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)都能以一定概率對(duì)假包進(jìn)行檢驗(yàn),因此,隨著傳輸跳數(shù)增大,識(shí)別概率也相應(yīng)增大。
在此,以Nc=2為例進(jìn)行分析,可以看到,當(dāng)傳輸跳數(shù)h=1時(shí),SEF和DFR的識(shí)別概率分別為0.0517和0.3672。當(dāng)傳輸跳數(shù)h=3時(shí),SEF和DFR的識(shí)別概率分別為0.1493和1。h大于3時(shí)DFR的識(shí)別概率已經(jīng)為1,而SEF在h=19時(shí)識(shí)別概率才0.6426,顯然DFR的識(shí)別能力強(qiáng)于SEF。
從圖中還可以看到,隨著被俘節(jié)點(diǎn)的增多,DFR與SEF識(shí)別假包的概率均有所降低,但SEF方案降低程度更明顯,而且對(duì)于DFR方案,只要被俘節(jié)點(diǎn)不超過(guò)組內(nèi)節(jié)點(diǎn)數(shù),它的識(shí)別概率均為1。顯然,DFR方案在妥協(xié)節(jié)點(diǎn)較多時(shí)比SEF方案優(yōu)勢(shì)更明顯。
傳感器網(wǎng)絡(luò)是一些先進(jìn)設(shè)備的核心智能技術(shù),是物聯(lián)網(wǎng)的重要組成部分。本文針對(duì)敵對(duì)者通過(guò)截取傳感器偽造假包的行為進(jìn)行研究,在已有算法的基礎(chǔ)上,通過(guò)構(gòu)造混合驗(yàn)證區(qū),可以快速提高識(shí)別假包的能力。
本文提出的算法也是基于對(duì)稱(chēng)密鑰的技術(shù),這種技術(shù)雖然容易在傳感器上實(shí)現(xiàn),但安全性不夠,因此,今后我將繼續(xù)研究安全性更強(qiáng)的假包識(shí)別技術(shù)。