文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.028
中文引用格式: 吳冬,魏艷鳴,吳方芳. 面向移動自組織網絡的隨機密鑰構建策略研究[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 引言
移動自組織網絡(Mobile Ad-hoc Network,MANETs)的優點是各通信節點可以動態組網,不需要基礎通信設施的配合,因此組網靈活方便,在資源匱乏的場合應用廣泛,如應急救災、軍事偵察等[1-3]。但由于網絡中的所有節點可以自由出入網絡,在數據通信過程中,網絡中侵入的惡意節點可能隨時隨地監聽無線網絡中的通信內容,這給移動自組織網絡的數據通信帶來很大安全隱患[4-6]。而且,經典的按需路由協議(AODV和DSR)都沒有提供安全防范措施,不具備防范惡意節點攻擊的能力,數據通信的安全性不高。為了增強數據通信的安全性,學者們近些年也提出了許多面向移動自組織網絡的安全路由協議。如ARAN路由協議在AODV路由協議的基礎上,引入了公共密鑰體系,用于鑒別數據發送節點的身份,增強路由安全[7]。然而,引入公共密鑰體系耗費資源較大。TARF路由協議也是基于AODV路由協議的改進協議,該協議計算每一個節點對其鄰居節點的信任度,依據信任度排序來選擇下一跳節點,目標是提高多跳通信過程中路由的安全性[8]。然而,該策略盡管可以檢測和避開惡意節點,但無法防止惡意節點竊聽路由信息。
針對移動自組織網絡的通信安全性問題,本文在DSR路由協議[9]的基礎上,提出一種隨機密鑰構建策略,不需要引入公共密鑰體系即可為網絡中的任意兩個節點建立共享的隨機密鑰,并計算完整路由表示的比特數上下限,防止網絡中的惡意節點通過監聽方式獲取數據通信的真實路由,增強路由的安全性。
1 本文策略
為了便于說明,本文假定節點A和B是網絡中的任意兩個正常節點,節點E是網絡中的任意一個惡意節點,也可以稱之為竊聽者。本文算法設計的目的是在節點A和B的相互通信過程中,為節點A和B建立一個隨機密鑰,生成完整路由表示的比特數上下限,防止惡意節點E通過竊聽節點A和B的通信內容來獲取數據傳輸的真實路由,從而保護路由的安全性。本文通過3個環節來實現這一目的,分別為路由信息獲取、信息協調和隨機密鑰構建及比特數上下限計算,詳細描述如下。
1.1 路由信息獲取
在路由信息獲取階段,本文為移動自組織網絡中的每個節點建立一個路由信息表(Routing Information Table,RIT),節點在通信過程中需要對該數據表進行維護。路由信息表主要包括三部分內容:路由標識(Routing Flag,RF)、部分路由和完整路由。其中,RF是一個四元組,包含源節點IP、目的節點IP、路由請求ID、路由應答發送節點IP。
下面結合圖1說明RIT的建立過程。如圖1所示,節點S和D分別表示網絡通信中的源節點和目的節點。由于初始狀態下節點S沒有任何通往節點D的路由,因此它需要產生和廣播一個路由請求數據包,這個過程詳見DSR路由協議[9]。假設此數據包的ID為5,這意味著該路由請求包是該節點S第5次嘗試請求達到節點D的路由。假設路由請求數據包通過路徑S→X→Y到達了節點Z,如圖1(a)所示。假設節點Z在自身存儲的路由列表中有到達目的節點D的路由,那么節點Z會發送路由應答給節點S。從節點Z到節點A的路由應答回傳路徑如圖1(b)所示,即Z→Y→X→S,這和雙向網絡是一致的。每個接收路由應答的中間節點將此源路由插入自身的RIT中。RIT包含三個部分,分別是RF、部分路由和完整路由。在上述示例中,源節點IP為S,目標節點IP為D,路由請求ID為5,路由應答發送節點為Z。那么,RF可以記為{X,D,5,Z}。節點S、X、Y和Z都會在各自的RIT中記錄該RF。中間節點(即節點X和Y)可以通過搜索其自身的路由請求表來獲取路由請求ID。RIT的部分路由是指從源節點到路由應答發送節點之間的路由,即S→X→Y→Z。完整路由是指源節點到目的節點的整個路由,即S→X→Y→Z→D。這樣,上述示例中節點S、X、Y和Z的RIT相同,如表1所示。
從上述示例可以看出,節點D沒有直接監聽到來自節點S的路由請求,因此它也無法確定RF中的路由請求ID。那么,對于共享這條路由的兩個節點,再建立兩者之間共享的隨機密鑰時,節點D可能作為一個惡意節點(竊聽者)存在,因為該節點知道這條完整路由。需要指出的是,如果兩個節點在其自身的RIT中擁有相同的RF,那么這兩個節點的RIT中與RF相關聯的完整路由也是相同的。但完整路由僅對網絡中有限數量的節點有效,那些不在源路由上、但卻偶然竊聽到路由請求和路由應答的節點,不能讓其竊聽到完整路由,下面通過信息協調和隨機密鑰構建手段來增強兩個節點通信的安全性。
1.2 信息協調
信息協調涉及信道編碼和信源編碼技術,實現過程通常比較復雜。信息協調可以為公共信道上傳輸的信息量設置一個約束性邊界,該邊界降低數據傳輸的不確定性,減少惡意節點竊聽的信息量。在本文中,每一個完整路由都是用RF唯一標識的,從而使信息協調變得非常簡單,僅需很少通信開銷即可進行信息協調。詳細描述如下。
對于移動自組織網絡中的任意兩個正常節點A和B,兩個節點在其RIT中共享了許多路由。譬如,A可能會首先注意到B是其RIT中部分路由的一部分,可以讓B來執行信息協調,其目的是最終生成一個共享的隨機性密鑰。B在嘗試進行信息協調時,A會發送給它一個與A的RIT中的部分路由相對應的RF列表,其中包括B的地址。然后,B可以驗證其RIT中是否接收到該RF,對于那些無法定位的RF,B再將其轉發回A。這樣,節點A和B即可完成信息協調工作,兩者共享一組完整路由,可以用其構建兩者共享的隨機密鑰。
這里存在一個安全問題,解釋如下。RF四元組是與每一個路由請求和路由應答對相對應的,該四元組涉及3個節點,即源節點、目的節點和路由應答發送節點。另外,信息協調兩端的節點A和B有可能既不是源節點也不是目的節點,還不是路由應答發送節點。那么,在信息協調過程中,通過公共通道轉發RF可能會暴露路由中的5個節點,包括源節點、目的節點、路由應答發送節點、節點A和節點B。在實際應用中,可以通過限制信息數量來降低信息協調過程造成的信息泄露[10]。本文提出一種新的防泄露策略,具體是通過共享的隨機密鑰比特數的上下限來限制信息泄露。其中,比特數下限對應的是RF明文傳輸的情形,此時情形下泄露的信息最多,完整路由表示所需要用的比特數最少。比特數上限對應的是RF在傳輸過程中通過一些加密機制進行完全保護的情形,此時情形下泄露的信息最少,完整路由表示所需要用的比特數最多。下面詳細介紹這兩種情形下信息協調過程可能產生的信息泄露問題。
(1)RF明文傳輸情形
當RF采用明文方式進行傳輸時,竊聽者可以從監聽到的RF中獲取完整路由的一些信息。至于信息會泄露多少,這與節點A和B、路由以及RF的屬性相關。為了便于說明,將RF四元組細分為七種類型,然后再根據它們的信息泄露行為歸納為3個不同的組,如表2所示。
在表2中,A*和B*可以分別表示節點A和B,也可以分別表示節點B和A。而X、Y、Z用于表示與A和B不同的其他3個節點。在組1中,節點A和B分別是源節點、目的節點和路由應答發送節點三者中的兩個,那么,通過竊聽RF最多可能會泄露完整路由中3個節點的信息。在組2中,節點A或B是源節點、目的節點和路由應答發送節點三者中的一個。那么,通過竊聽RF最多可能會泄露完整路由中4個節點的信息。在組3中,節點A和B既不是源節點,也不是目的節點,還不是路由應答發送節點,那么此時通過竊聽RF最多可能會泄露完整路由中5個節點的信息。
(2)RF完全保護情形
在這種情形下,信息協調過程中可能泄露給竊聽者的可能信息是A和B出現在每一個完整路由中的身份信息。
1.3 隨機密鑰構建及比特數上下限計算
本文用節點地址集合來表示一個完整路由。節點A和B在信息協調之后共享了一個完整路由列表,假設共享的完整路由數量為h,那么節點A和B可以構造一個數量為h的修剪路由集合M={mi|i=1,…,h}。其中,mi可以稱為修剪路由,通過從完整路由ri中去除A和B的地址得到。這樣,完整路由和修剪路由是一一對應的。
為了從每一個子集Mk中提取共享密鑰,依據網絡中所有節點商定的映射關系,節點A可以采用相同長度的二進制字符串來表示所有完整路由。假設移動自組織網絡中節點總數為N,一個完整路由的節點數量上限為M,那么,可能包含節點A和B的完整路由的數量為:
用完整路由數量對應的比特數可以表示任意一個完整路由,譬如完整路由數量為128,則比特數的位數也為128,每一位代表一條完整路由,該位的數值為1時表示該比特位所對應的完整路由存在,數值為0時表示該比特位所對應的完整路由不存在。這樣,表示完整路由所用的比特數可以看作一個二值比特序列,可以通過異或運算和隨機運算[11]生成一個較短的比特串,該比特串即為本文所指的節點A和B之間共享的隨機密鑰,記為sk。文獻[12]指出,從比特序列中提取的比特串數量應當有上限,其值非常接近于比特序列的平滑最小熵,平滑最小熵[12]定義為:
依據最小熵,即可計算隨機密鑰的比特數,再乘以修剪路由集合的數量,即可得到總的比特數。由于概率值的計算與RF的傳輸方式(即明文傳輸還是完全保護)相關,這樣,在明文傳輸和完全保護兩種極端模式下,可以通過最小熵推斷出兩節點共享的隨機密鑰比特數的上下限,用于限制信息泄露。
下面介紹明文傳輸和完全保護兩種方式下概率值的詳細計算方法。
1.3.1 RF明文傳輸方式
當RF采用明文傳輸方式在節點A和B之間傳輸時,竊聽節點E能夠推斷出一些關于A和B約定的完整路由信息。另外,竊聽節點E沒有偷聽到的完整路由也可能泄露一些信息。路由越長,越易被竊聽節點E竊聽。因此,主要關心概率分布p(r|ρE(r)=0,RF(r))。由表2可知,通過RF可以得知傳輸過程可能泄露給竊聽節點E的信息,于是有:
在式(6)中,另一項p(G=i|Lr=l)可以表示為:
等式右邊的3個概率都是相等的。
具體來看p(T=4|Lr=l),給定一個長度為lr的路由,假設路由上的所有節點按下列序號排序:1,2,…,lr,其中,序號1代表的節點為源節點,序號lr代表的節點為目的節點。節點A、B以及路由應答發送節點(簡記為C)隨機分布在這些節點中,且節點A和B不是同一個節點。于是:
竊聽節點E是否竊聽到一個確定的路由與路由中節點A和B的角色無關,與路由應答發送人的身份也無關,于是有:
其中,Stotal表示網絡覆蓋面積。Sshare表示路由中lr個節點所圍成的最大通信區域面積,本文用lr個節點中兩兩節點之間距離的累加和乘以節點通信半徑的兩倍來計算。
1.3.2 RF完全保護方式
當RF完全被保護時,從竊聽節點E的角度來看,一個確定路由的概率完全取決于它的長度。因為所有給定長度的未知路由對E而言都是相同的,于是有:
1.3.3 修剪路由集合劃分
現在剩下的問題是完整路由集合需要劃分為多少個修剪路由子集Mk。要解決這個問題,對于任意一組節點對,本文將所有可以選擇的修剪路由組成一個選擇矩陣M。在這個選擇矩陣中,一行對應M中的一個修剪路由,一列對應一個節點地址。在移動自組織網絡中,除了節點A和B,還有N-2個節點,也即矩陣M有N-2列。選擇矩陣M可以表示為:
其中,aij表示節點j知道節點i的完整路由的概率。譬如,當節點j是修剪路由i所對應的完整路由的一部分時,有aij=1。否則,aij=p(ρj(i)=1|Li=li)。
劃分算法用于構建不同數量的子集Mk,目標是對于一個有hk行組成的選擇矩陣M,劃分后的子集Mk中每一列各元素的乘積小于安全系數ε1(為便于后續描述,該條件簡稱為ε1安全條件)。本文劃分算法的準則是,在滿足ε1安全條件的前提下,劃分的子集Mk的數量越多越好。具體描述如下。
(1)對于上限情形(也即RF被完全保護),劃分步驟具體為:
①M1的構建。首先選取選擇矩陣M的第一行,然后逐步累加選擇矩陣M的下一行數據。假設到達第n行時不再滿足ε1安全條件,那么前n-1行的行累加矩陣即為構建完成的M1。
②Mk的構建。仿照步驟①,依次構建Mk,k=2,3,…,具體為,首先選取選擇矩陣M的第k行,然后逐步累加選擇矩陣M的下一行數據,直至不滿足ε1安全條件的前一行,所得到的行累加矩陣即為Mk。
③終止條件。在步驟②中,如果從選擇矩陣M中選取的第K+1行已無法滿足ε1安全條件,或者選擇矩陣M總共只有K行,那么終止劃分,最終得到的子集數量為K。
(2)對于下限情形(也即RF以明文方式發送),在前述的劃分步驟基礎上,還要多執行一步,具體為:為選擇矩陣的每一行附加一個組號,用于指示相應RF屬于表2中的哪一組。由于每個組的最小熵是不同的,且可提取的隨機位的數量與最小熵是相關的,因此在進行劃分之前,節點A和B需要將其路由按照組號從小到大的順序進行排序。也就是說,在劃分時先挑選同一組中最小熵值大的路由。
2 仿真
本文采用Network Simulator[13]軟件進行算法仿真,仿真涉及的主要參數:網絡覆蓋面積為100×100 m2,移動節點數量為50個,惡意節點比例為5%~25%,節點移動速度為30 m/s,節點通信半徑為200 m,固定碼率為2 Mb/s,數據包尺寸為512 B,仿真時間為1 000 s。
2.1 比特數上下限測試結果
在仿真中,測試了RF明文傳輸和完全保護兩種方式下的最大概率值、最小熵、分組總數以及比特數的上下限,詳見表3和表4。與文獻[10]一致,通過該上下限來控制信息傳輸量,降低信息協調過程造成的信息泄露。
2.2 性能對比分析
在經典的DSR路由協議上應用本文策略,并與兩種常用的安全路由協議(ARAN[7]和TARF[8])進行對比,評價本文策略的性能。這里,主要對比惡意節點比例不同時的報文送達率指標,結果詳見圖2。
由圖2可見,當惡意節點數量較少時,3種路由協議的報文送達率指標都在90%以上,而當惡意節點數量增多后,3種路由協議的報文送達率指標都會下降,但相對而言,本文路由協議的報文送達率指標下降較為緩慢,而且在惡意節點比例相同的情況下,本文方法的報文送達率指標高于其他方法。這說明,本文路由協議抵御惡意節點攻擊的能力更強,路由的安全性更好。
3 結束語
本文提出了一種隨機密鑰構建策略,可以在網絡通信過程中根據信息傳輸情況自動構建隨機密鑰,同時也給出了依據密鑰計算完整路由表示所需的比特數上下限的方法,用于預防信息協調時造成的信息泄露。仿真結果表明,將本文策略應用于經典的DSR路由協議,可以獲得更高的報文送達率。
參考文獻
[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網絡容量非合作規劃博弈模型的穩定性[J].電子與信息學報,2012,34(1):75-81.
[3] 武俊,王剛.移動自組織網中MP-QAODV協議的研究與性能評估[J].重慶郵電大學學報(自然科學版),2013,25(4):464-469.
[4] 吳大鵬,周之楠,張炎,等.消息內容保護的間斷連接移動自組織網絡轉發機制[J].電子與信息學報,2015,37(6):1271-1278.
[5] ABDEL-HALIM I T,FAHMY 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鏈的移動自組織網匿名路由激勵協議[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.浙江長征職業技術學院 計算機與信息技術系,浙江 杭州310023;
2.河南經貿職業學院 信息管理系,河南 鄭州450018;3.清華大學 電機工程與應用電力技術系,北京100084)