文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.028
中文引用格式: 吳冬,魏艷鳴,吳方芳. 面向移動自組織網(wǎng)絡的隨機密鑰構建策略研究[J].電子技術應用,2017,43(4):107-111,116.
英文引用格式: Wu Dong,Wei Yanming,Wu Fangfang. A random key construction strategy for mobile Ad hoc network[J].Application of Electronic Technique,2017,43(4):107-111,116.
0 引言
移動自組織網(wǎng)絡(Mobile Ad-hoc Network,MANETs)的優(yōu)點是各通信節(jié)點可以動態(tài)組網(wǎng),不需要基礎通信設施的配合,因此組網(wǎng)靈活方便,在資源匱乏的場合應用廣泛,如應急救災、軍事偵察等[1-3]。但由于網(wǎng)絡中的所有節(jié)點可以自由出入網(wǎng)絡,在數(shù)據(jù)通信過程中,網(wǎng)絡中侵入的惡意節(jié)點可能隨時隨地監(jiān)聽無線網(wǎng)絡中的通信內容,這給移動自組織網(wǎng)絡的數(shù)據(jù)通信帶來很大安全隱患[4-6]。而且,經(jīng)典的按需路由協(xié)議(AODV和DSR)都沒有提供安全防范措施,不具備防范惡意節(jié)點攻擊的能力,數(shù)據(jù)通信的安全性不高。為了增強數(shù)據(jù)通信的安全性,學者們近些年也提出了許多面向移動自組織網(wǎng)絡的安全路由協(xié)議。如ARAN路由協(xié)議在AODV路由協(xié)議的基礎上,引入了公共密鑰體系,用于鑒別數(shù)據(jù)發(fā)送節(jié)點的身份,增強路由安全[7]。然而,引入公共密鑰體系耗費資源較大。TARF路由協(xié)議也是基于AODV路由協(xié)議的改進協(xié)議,該協(xié)議計算每一個節(jié)點對其鄰居節(jié)點的信任度,依據(jù)信任度排序來選擇下一跳節(jié)點,目標是提高多跳通信過程中路由的安全性[8]。然而,該策略盡管可以檢測和避開惡意節(jié)點,但無法防止惡意節(jié)點竊聽路由信息。
針對移動自組織網(wǎng)絡的通信安全性問題,本文在DSR路由協(xié)議[9]的基礎上,提出一種隨機密鑰構建策略,不需要引入公共密鑰體系即可為網(wǎng)絡中的任意兩個節(jié)點建立共享的隨機密鑰,并計算完整路由表示的比特數(shù)上下限,防止網(wǎng)絡中的惡意節(jié)點通過監(jiān)聽方式獲取數(shù)據(jù)通信的真實路由,增強路由的安全性。
1 本文策略
為了便于說明,本文假定節(jié)點A和B是網(wǎng)絡中的任意兩個正常節(jié)點,節(jié)點E是網(wǎng)絡中的任意一個惡意節(jié)點,也可以稱之為竊聽者。本文算法設計的目的是在節(jié)點A和B的相互通信過程中,為節(jié)點A和B建立一個隨機密鑰,生成完整路由表示的比特數(shù)上下限,防止惡意節(jié)點E通過竊聽節(jié)點A和B的通信內容來獲取數(shù)據(jù)傳輸?shù)恼鎸嵚酚?,從而保護路由的安全性。本文通過3個環(huán)節(jié)來實現(xiàn)這一目的,分別為路由信息獲取、信息協(xié)調和隨機密鑰構建及比特數(shù)上下限計算,詳細描述如下。
1.1 路由信息獲取
在路由信息獲取階段,本文為移動自組織網(wǎng)絡中的每個節(jié)點建立一個路由信息表(Routing Information Table,RIT),節(jié)點在通信過程中需要對該數(shù)據(jù)表進行維護。路由信息表主要包括三部分內容:路由標識(Routing Flag,RF)、部分路由和完整路由。其中,RF是一個四元組,包含源節(jié)點IP、目的節(jié)點IP、路由請求ID、路由應答發(fā)送節(jié)點IP。
下面結合圖1說明RIT的建立過程。如圖1所示,節(jié)點S和D分別表示網(wǎng)絡通信中的源節(jié)點和目的節(jié)點。由于初始狀態(tài)下節(jié)點S沒有任何通往節(jié)點D的路由,因此它需要產(chǎn)生和廣播一個路由請求數(shù)據(jù)包,這個過程詳見DSR路由協(xié)議[9]。假設此數(shù)據(jù)包的ID為5,這意味著該路由請求包是該節(jié)點S第5次嘗試請求達到節(jié)點D的路由。假設路由請求數(shù)據(jù)包通過路徑S→X→Y到達了節(jié)點Z,如圖1(a)所示。假設節(jié)點Z在自身存儲的路由列表中有到達目的節(jié)點D的路由,那么節(jié)點Z會發(fā)送路由應答給節(jié)點S。從節(jié)點Z到節(jié)點A的路由應答回傳路徑如圖1(b)所示,即Z→Y→X→S,這和雙向網(wǎng)絡是一致的。每個接收路由應答的中間節(jié)點將此源路由插入自身的RIT中。RIT包含三個部分,分別是RF、部分路由和完整路由。在上述示例中,源節(jié)點IP為S,目標節(jié)點IP為D,路由請求ID為5,路由應答發(fā)送節(jié)點為Z。那么,RF可以記為{X,D,5,Z}。節(jié)點S、X、Y和Z都會在各自的RIT中記錄該RF。中間節(jié)點(即節(jié)點X和Y)可以通過搜索其自身的路由請求表來獲取路由請求ID。RIT的部分路由是指從源節(jié)點到路由應答發(fā)送節(jié)點之間的路由,即S→X→Y→Z。完整路由是指源節(jié)點到目的節(jié)點的整個路由,即S→X→Y→Z→D。這樣,上述示例中節(jié)點S、X、Y和Z的RIT相同,如表1所示。
從上述示例可以看出,節(jié)點D沒有直接監(jiān)聽到來自節(jié)點S的路由請求,因此它也無法確定RF中的路由請求ID。那么,對于共享這條路由的兩個節(jié)點,再建立兩者之間共享的隨機密鑰時,節(jié)點D可能作為一個惡意節(jié)點(竊聽者)存在,因為該節(jié)點知道這條完整路由。需要指出的是,如果兩個節(jié)點在其自身的RIT中擁有相同的RF,那么這兩個節(jié)點的RIT中與RF相關聯(lián)的完整路由也是相同的。但完整路由僅對網(wǎng)絡中有限數(shù)量的節(jié)點有效,那些不在源路由上、但卻偶然竊聽到路由請求和路由應答的節(jié)點,不能讓其竊聽到完整路由,下面通過信息協(xié)調和隨機密鑰構建手段來增強兩個節(jié)點通信的安全性。
1.2 信息協(xié)調
信息協(xié)調涉及信道編碼和信源編碼技術,實現(xiàn)過程通常比較復雜。信息協(xié)調可以為公共信道上傳輸?shù)男畔⒘吭O置一個約束性邊界,該邊界降低數(shù)據(jù)傳輸?shù)牟淮_定性,減少惡意節(jié)點竊聽的信息量。在本文中,每一個完整路由都是用RF唯一標識的,從而使信息協(xié)調變得非常簡單,僅需很少通信開銷即可進行信息協(xié)調。詳細描述如下。
對于移動自組織網(wǎng)絡中的任意兩個正常節(jié)點A和B,兩個節(jié)點在其RIT中共享了許多路由。譬如,A可能會首先注意到B是其RIT中部分路由的一部分,可以讓B來執(zhí)行信息協(xié)調,其目的是最終生成一個共享的隨機性密鑰。B在嘗試進行信息協(xié)調時,A會發(fā)送給它一個與A的RIT中的部分路由相對應的RF列表,其中包括B的地址。然后,B可以驗證其RIT中是否接收到該RF,對于那些無法定位的RF,B再將其轉發(fā)回A。這樣,節(jié)點A和B即可完成信息協(xié)調工作,兩者共享一組完整路由,可以用其構建兩者共享的隨機密鑰。
這里存在一個安全問題,解釋如下。RF四元組是與每一個路由請求和路由應答對相對應的,該四元組涉及3個節(jié)點,即源節(jié)點、目的節(jié)點和路由應答發(fā)送節(jié)點。另外,信息協(xié)調兩端的節(jié)點A和B有可能既不是源節(jié)點也不是目的節(jié)點,還不是路由應答發(fā)送節(jié)點。那么,在信息協(xié)調過程中,通過公共通道轉發(fā)RF可能會暴露路由中的5個節(jié)點,包括源節(jié)點、目的節(jié)點、路由應答發(fā)送節(jié)點、節(jié)點A和節(jié)點B。在實際應用中,可以通過限制信息數(shù)量來降低信息協(xié)調過程造成的信息泄露[10]。本文提出一種新的防泄露策略,具體是通過共享的隨機密鑰比特數(shù)的上下限來限制信息泄露。其中,比特數(shù)下限對應的是RF明文傳輸?shù)那樾危藭r情形下泄露的信息最多,完整路由表示所需要用的比特數(shù)最少。比特數(shù)上限對應的是RF在傳輸過程中通過一些加密機制進行完全保護的情形,此時情形下泄露的信息最少,完整路由表示所需要用的比特數(shù)最多。下面詳細介紹這兩種情形下信息協(xié)調過程可能產(chǎn)生的信息泄露問題。
(1)RF明文傳輸情形
當RF采用明文方式進行傳輸時,竊聽者可以從監(jiān)聽到的RF中獲取完整路由的一些信息。至于信息會泄露多少,這與節(jié)點A和B、路由以及RF的屬性相關。為了便于說明,將RF四元組細分為七種類型,然后再根據(jù)它們的信息泄露行為歸納為3個不同的組,如表2所示。
在表2中,A*和B*可以分別表示節(jié)點A和B,也可以分別表示節(jié)點B和A。而X、Y、Z用于表示與A和B不同的其他3個節(jié)點。在組1中,節(jié)點A和B分別是源節(jié)點、目的節(jié)點和路由應答發(fā)送節(jié)點三者中的兩個,那么,通過竊聽RF最多可能會泄露完整路由中3個節(jié)點的信息。在組2中,節(jié)點A或B是源節(jié)點、目的節(jié)點和路由應答發(fā)送節(jié)點三者中的一個。那么,通過竊聽RF最多可能會泄露完整路由中4個節(jié)點的信息。在組3中,節(jié)點A和B既不是源節(jié)點,也不是目的節(jié)點,還不是路由應答發(fā)送節(jié)點,那么此時通過竊聽RF最多可能會泄露完整路由中5個節(jié)點的信息。
(2)RF完全保護情形
在這種情形下,信息協(xié)調過程中可能泄露給竊聽者的可能信息是A和B出現(xiàn)在每一個完整路由中的身份信息。
1.3 隨機密鑰構建及比特數(shù)上下限計算
本文用節(jié)點地址集合來表示一個完整路由。節(jié)點A和B在信息協(xié)調之后共享了一個完整路由列表,假設共享的完整路由數(shù)量為h,那么節(jié)點A和B可以構造一個數(shù)量為h的修剪路由集合M={mi|i=1,…,h}。其中,mi可以稱為修剪路由,通過從完整路由ri中去除A和B的地址得到。這樣,完整路由和修剪路由是一一對應的。
為了從每一個子集Mk中提取共享密鑰,依據(jù)網(wǎng)絡中所有節(jié)點商定的映射關系,節(jié)點A可以采用相同長度的二進制字符串來表示所有完整路由。假設移動自組織網(wǎng)絡中節(jié)點總數(shù)為N,一個完整路由的節(jié)點數(shù)量上限為M,那么,可能包含節(jié)點A和B的完整路由的數(shù)量為:
用完整路由數(shù)量對應的比特數(shù)可以表示任意一個完整路由,譬如完整路由數(shù)量為128,則比特數(shù)的位數(shù)也為128,每一位代表一條完整路由,該位的數(shù)值為1時表示該比特位所對應的完整路由存在,數(shù)值為0時表示該比特位所對應的完整路由不存在。這樣,表示完整路由所用的比特數(shù)可以看作一個二值比特序列,可以通過異或運算和隨機運算[11]生成一個較短的比特串,該比特串即為本文所指的節(jié)點A和B之間共享的隨機密鑰,記為sk。文獻[12]指出,從比特序列中提取的比特串數(shù)量應當有上限,其值非常接近于比特序列的平滑最小熵,平滑最小熵[12]定義為:
依據(jù)最小熵,即可計算隨機密鑰的比特數(shù),再乘以修剪路由集合的數(shù)量,即可得到總的比特數(shù)。由于概率值的計算與RF的傳輸方式(即明文傳輸還是完全保護)相關,這樣,在明文傳輸和完全保護兩種極端模式下,可以通過最小熵推斷出兩節(jié)點共享的隨機密鑰比特數(shù)的上下限,用于限制信息泄露。
下面介紹明文傳輸和完全保護兩種方式下概率值的詳細計算方法。
1.3.1 RF明文傳輸方式
當RF采用明文傳輸方式在節(jié)點A和B之間傳輸時,竊聽節(jié)點E能夠推斷出一些關于A和B約定的完整路由信息。另外,竊聽節(jié)點E沒有偷聽到的完整路由也可能泄露一些信息。路由越長,越易被竊聽節(jié)點E竊聽。因此,主要關心概率分布p(r|ρE(r)=0,RF(r))。由表2可知,通過RF可以得知傳輸過程可能泄露給竊聽節(jié)點E的信息,于是有:
在式(6)中,另一項p(G=i|Lr=l)可以表示為:
等式右邊的3個概率都是相等的。
具體來看p(T=4|Lr=l),給定一個長度為lr的路由,假設路由上的所有節(jié)點按下列序號排序:1,2,…,lr,其中,序號1代表的節(jié)點為源節(jié)點,序號lr代表的節(jié)點為目的節(jié)點。節(jié)點A、B以及路由應答發(fā)送節(jié)點(簡記為C)隨機分布在這些節(jié)點中,且節(jié)點A和B不是同一個節(jié)點。于是:
竊聽節(jié)點E是否竊聽到一個確定的路由與路由中節(jié)點A和B的角色無關,與路由應答發(fā)送人的身份也無關,于是有:
其中,Stotal表示網(wǎng)絡覆蓋面積。Sshare表示路由中l(wèi)r個節(jié)點所圍成的最大通信區(qū)域面積,本文用lr個節(jié)點中兩兩節(jié)點之間距離的累加和乘以節(jié)點通信半徑的兩倍來計算。
1.3.2 RF完全保護方式
當RF完全被保護時,從竊聽節(jié)點E的角度來看,一個確定路由的概率完全取決于它的長度。因為所有給定長度的未知路由對E而言都是相同的,于是有:
1.3.3 修剪路由集合劃分
現(xiàn)在剩下的問題是完整路由集合需要劃分為多少個修剪路由子集Mk。要解決這個問題,對于任意一組節(jié)點對,本文將所有可以選擇的修剪路由組成一個選擇矩陣M。在這個選擇矩陣中,一行對應M中的一個修剪路由,一列對應一個節(jié)點地址。在移動自組織網(wǎng)絡中,除了節(jié)點A和B,還有N-2個節(jié)點,也即矩陣M有N-2列。選擇矩陣M可以表示為:
其中,aij表示節(jié)點j知道節(jié)點i的完整路由的概率。譬如,當節(jié)點j是修剪路由i所對應的完整路由的一部分時,有aij=1。否則,aij=p(ρj(i)=1|Li=li)。
劃分算法用于構建不同數(shù)量的子集Mk,目標是對于一個有hk行組成的選擇矩陣M,劃分后的子集Mk中每一列各元素的乘積小于安全系數(shù)ε1(為便于后續(xù)描述,該條件簡稱為ε1安全條件)。本文劃分算法的準則是,在滿足ε1安全條件的前提下,劃分的子集Mk的數(shù)量越多越好。具體描述如下。
(1)對于上限情形(也即RF被完全保護),劃分步驟具體為:
①M1的構建。首先選取選擇矩陣M的第一行,然后逐步累加選擇矩陣M的下一行數(shù)據(jù)。假設到達第n行時不再滿足ε1安全條件,那么前n-1行的行累加矩陣即為構建完成的M1。
②Mk的構建。仿照步驟①,依次構建Mk,k=2,3,…,具體為,首先選取選擇矩陣M的第k行,然后逐步累加選擇矩陣M的下一行數(shù)據(jù),直至不滿足ε1安全條件的前一行,所得到的行累加矩陣即為Mk。
③終止條件。在步驟②中,如果從選擇矩陣M中選取的第K+1行已無法滿足ε1安全條件,或者選擇矩陣M總共只有K行,那么終止劃分,最終得到的子集數(shù)量為K。
(2)對于下限情形(也即RF以明文方式發(fā)送),在前述的劃分步驟基礎上,還要多執(zhí)行一步,具體為:為選擇矩陣的每一行附加一個組號,用于指示相應RF屬于表2中的哪一組。由于每個組的最小熵是不同的,且可提取的隨機位的數(shù)量與最小熵是相關的,因此在進行劃分之前,節(jié)點A和B需要將其路由按照組號從小到大的順序進行排序。也就是說,在劃分時先挑選同一組中最小熵值大的路由。
2 仿真
本文采用Network Simulator[13]軟件進行算法仿真,仿真涉及的主要參數(shù):網(wǎng)絡覆蓋面積為100×100 m2,移動節(jié)點數(shù)量為50個,惡意節(jié)點比例為5%~25%,節(jié)點移動速度為30 m/s,節(jié)點通信半徑為200 m,固定碼率為2 Mb/s,數(shù)據(jù)包尺寸為512 B,仿真時間為1 000 s。
2.1 比特數(shù)上下限測試結果
在仿真中,測試了RF明文傳輸和完全保護兩種方式下的最大概率值、最小熵、分組總數(shù)以及比特數(shù)的上下限,詳見表3和表4。與文獻[10]一致,通過該上下限來控制信息傳輸量,降低信息協(xié)調過程造成的信息泄露。
2.2 性能對比分析
在經(jīng)典的DSR路由協(xié)議上應用本文策略,并與兩種常用的安全路由協(xié)議(ARAN[7]和TARF[8])進行對比,評價本文策略的性能。這里,主要對比惡意節(jié)點比例不同時的報文送達率指標,結果詳見圖2。
由圖2可見,當惡意節(jié)點數(shù)量較少時,3種路由協(xié)議的報文送達率指標都在90%以上,而當惡意節(jié)點數(shù)量增多后,3種路由協(xié)議的報文送達率指標都會下降,但相對而言,本文路由協(xié)議的報文送達率指標下降較為緩慢,而且在惡意節(jié)點比例相同的情況下,本文方法的報文送達率指標高于其他方法。這說明,本文路由協(xié)議抵御惡意節(jié)點攻擊的能力更強,路由的安全性更好。
3 結束語
本文提出了一種隨機密鑰構建策略,可以在網(wǎng)絡通信過程中根據(jù)信息傳輸情況自動構建隨機密鑰,同時也給出了依據(jù)密鑰計算完整路由表示所需的比特數(shù)上下限的方法,用于預防信息協(xié)調時造成的信息泄露。仿真結果表明,將本文策略應用于經(jīng)典的DSR路由協(xié)議,可以獲得更高的報文送達率。
參考文獻
[1] JAIN S,AGRAWAL K.A survey on multicast routing protocols for mobile Ad Hoc networks[J].International Journal of Computer Applications,2014,96(1):27-32.
[2] 楊娟,李穎,張志軍,等.移動Ad hoc網(wǎng)絡容量非合作規(guī)劃博弈模型的穩(wěn)定性[J].電子與信息學報,2012,34(1):75-81.
[3] 武俊,王剛.移動自組織網(wǎng)中MP-QAODV協(xié)議的研究與性能評估[J].重慶郵電大學學報(自然科學版),2013,25(4):464-469.
[4] 吳大鵬,周之楠,張炎,等.消息內容保護的間斷連接移動自組織網(wǎng)絡轉發(fā)機制[J].電子與信息學報,2015,37(6):1271-1278.
[5] ABDEL-HALIM I T,F(xiàn)AHMY H M A,BAHAA-ELDIN A M.Agent-based trusted on-demand routing protocol for mobile ad-hoc networks[J].Wireless Networks,2015,21(2):467-483.
[6] 鐘遠,郝建國,戴一奇.基于Hash鏈的移動自組織網(wǎng)匿名路由激勵協(xié)議[J].清華大學學報(自然科學版),2012(3):390-394.
[7] LI H,SINGHAL M.A secure routing protocol for wireless Ad Hoc networks[C].System Sciences,2006.HICSS′06.Proceedings of the 39th Annual Hawaii International Conference on.IEEE,2006:225-235.
[8] ZHAN G,SHI W,DENG J.Design and implementation of TARF:A trust-aware routing framework for WSNs[J].IEEE Transactions on Dependable & Secure Computing,2012,9(2):184-197.
[9] POONIA R,SANGHI A K,SINGH D.DSR routing protocol in wireless Ad-hoc networks:Drop Analysis[J].International Journal of Computer Applications,2011,14(7):18-21.
[10] PACHER C,GRABENWEGER P,MARTINEZ-MATEO,et al.An information reconciliation protocol for secret-key agreement with small leakage[C].IEEE International Symposium on Information Theory.IEEE,2015:6027-6032.
[11] SHALTIEL R.An introduction to randomness extractors[M].Automata,Languages and Programming,2011.
[12] MOMEYA R H,SALAH Z B.The minimal entropy martingale measure(MEMM) for a Markov-modulated exponential Lévy model[J].Asia-Pacific Financial Markets,2012,19(1):63-98.
[13] The network simulator-ns-2[EB/OL].[2016-10-19].http://www.isi.edu/nsnam/ns/.
作者信息:
吳 冬1,魏艷鳴2,吳方芳3
(1.浙江長征職業(yè)技術學院 計算機與信息技術系,浙江 杭州310023;
2.河南經(jīng)貿職業(yè)學院 信息管理系,河南 鄭州450018;3.清華大學 電機工程與應用電力技術系,北京100084)