摘 要:針對無線網絡中路由協議的安全問題進行研究,分析了LEACH協議可能受到的攻擊,并提出了一種安全的LEACH協議(SLEACH),引入了節點間的安全認證方案,對該方案通過BAN邏輯語言進行了證明。通過信譽機制遏制內部異常節點的自私行為。仿真結果顯示,SLEACH在性能上的影響是可以接受的。
關鍵詞:傳感器網絡; 路由協議; 路由安全
中圖分類號:TP393.08 文獻標志碼:A
文章編號:10013695(2008)09281303
Secure LEACH routing protocol in wireless sensor network
LIU Zhiyuan1,2
(1.Dept. of Computer, Huangshi Institute of Technology, Huangshi Hubei 435003, China; 2.College of Computer Science Technology, Huazhong University of Science Technology, Wuhan 430074, China)
Abstract:This paper analyzed the wireless network secure problem and proposed a secure LEACH routing protocol. It induced the secure authentication and used the BAN proving it. The reputation mechanism ensured that the selfish node would abide the protocol. The result of simulation shows that SLEACH has the acceptable affect.
Key words:sensor network; routing protocol; secure routing
近年來, 微電子技術和無線通信技術的進步推動了低功耗、低價格、多功能傳感器的快速發展。傳感器技術正向著集成化、微型化、智能化、網絡化的方向發展。具有自組織和分布智能化的傳感器技術應用于工業控制、軍事偵察、環境科學、醫療健康、空間探索、智能建筑等各種復雜環境進行檢測、診斷、目標定位和跟蹤。無線傳感器網絡(wireless sensor networks,WSN)正是基于這種形式下發展起來的新技術,已成為當今世界工業界和學術界的研究熱點[1,2]。
由于工作環境和工作方式的限制,與傳統無線網絡相比,無線傳感器網絡有著不同的特點,在研究應用于無線傳感器網絡的各種技術時,考慮的關鍵問題是低能耗和低成本。路由和數據轉發是無線傳感器網絡通信的重要部分。然而,已有的適用于傳感器網絡的路由協議大多是對有限的節點資源和特定應用的網絡特性進行的最優化設計,并沒有考慮安全路由的問題。這使得網絡在實際通信中會受到針對路由協議漏洞的各種攻擊[3]。隨著無線傳感器網絡的廣泛應用,其安全性已受到了研究人員的普遍重視。在設計了滿足低能耗、低成本、低開銷需求的路由協議后,對路由協議安全性的研究將成為新的熱點。
按路由協議的網絡構成方式,可以將無線傳感網絡分為平面型路由協議和層次型路由協議。平面型路由協議中,無線傳感網絡中的每個節點都是對等的,沒有功能上的區分。而層次型的路由協議中,將傳感器節點分成多個簇,每個簇都有簇頭節點,控制簇內的節點間通信,并可對簇區域內數據進行聚集融合處理,各簇頭節點將融合過的數據傳向網關節點。這樣可以減少通信量,維持節點能耗,延長生命期。
低能量自適應分簇(LEACH)是一種典型的層次式路由協議。它采用隨機選擇簇頭節點的方式,避免簇頭節點因為能耗過大成為網絡性能瓶頸。LEACH定義了“輪”(round)的概念,將一輪分為初始化和穩定工作兩個階段。路由協議在產生簇頭后,向周圍節點廣播信息,其他節點根據接收廣播信息信號強度決定所在簇,并通知簇頭節點。攻擊者可以利用此特點偽造簇頭節點廣播信息,使部分傳感器節點為自己服務,形成陷洞,并在此基礎上進行選擇性轉發信息。另外,路由協議簇頭節點產生機制使每個節點獨立判斷是否成為簇頭。那么攻擊者可以每次都在網絡內散布信息,選為簇頭,控制覆蓋區域內的所有傳感器節點。
1 前提假設與攻擊類型分析
1.1 前提假設
假設網絡是對稱的,也就是說,如果節點A可以傳輸報文到B,那么節點B也可以傳輸報文到A。
假設各個節點在初始化階段,由服務器CA(certificate authority )頒發ID、證書和CA的公鑰。也就是說,只有內部節點才可以獲得合法的證書和CA公鑰。
在系統初始化時,節點兩兩之間協商共享密鑰,即在n個節點的系統中,共有n(n-1)/2對密鑰。
1.2 攻擊類型分析
1)陷洞攻擊(sinkholes) 惡意節點吸引某一特定區域的通信流量,形成以該節點為中心的陷洞[4],作為陷洞的攻擊者就能相對容易地對數據進行竄改。LEACH的實現思想使得陷洞攻擊十分容易。因為LEACH是層次型路由協議,所有的簇成員節點都要將信息傳遞給簇頭節點。這樣,攻擊者就可以使用大功率設備聲明自己為簇頭節點,令較遠處的節點也認為該簇頭離本節點較近,從而成為該惡意簇頭節點的成員節點。附近的節點都將信息分組轉發至惡意節點。
2)選擇性轉發信息(selective forwarding) 在LEACH中,如果惡意節點對于部分報文進行轉發,而另一部分報文不進行轉發。那么其他節點較難發現其異常行為,并且會作出其他節點死亡的錯誤判斷。
3)Sybil攻擊 同一惡意節點在網絡中呈現多個ID號,那些實際上并不存在的節點稱為Sybil節點[5]。LEACH路由協議中,如果一個節點出現多個ID號,可能在簇頭的選舉和數據融合上產生混亂,導致路由協議無法正常運作。
4)蟲洞攻擊[6,7] 兩個或者多個攻擊者通過協作將信息從網絡的一個區域轉移到另一個區域,并在另一個區域進行重送。LEACH協議中,簇頭是直接與基站節點進行通信,所以蟲洞攻擊主要是惡意節點模仿簇成員節點進行的。例如惡意節點a所在簇A,惡意節點b所在簇B,惡意節點a將自身的信息不發送給簇A的簇頭節點,而發送給簇B的惡意節點b,節點b再將信息發送給簇B的簇頭節點。那么,最終將導致簇B的簇頭節點得到錯誤的信息,影響數據融合的正確性,也影響到基站的最終判斷。
2 符號定義(表1)
3 安全LEACH協議
由第1章的攻擊分析可以看出,要抵御這些攻擊首先需要對進入網絡的節點進行安全認證,這樣可以防止惡意節點隨意發布虛假信息,從而發起各種各樣的攻擊。但是單單這樣是不夠的。可能有些惡意節點通過物理上的捕獲,獲得了合法認證,如此一來,該節點依舊可以進行其惡意行為。此時就需要利用信譽機制來遏制這些節點的惡意行為。
3.1 節點安全認證
LEACH協議中,所有節點是按輪進行簇選舉的。每輪中的簇頭節點可能都不相同,但是由于無線傳感網絡中,節點基本上不移動,除了能量耗盡的死亡節點以外,節點一旦加入網絡,并不會隨意退出。SLEACH中,對于新加入網絡中的節點將進行安全認證,不論是該節點聲明為簇頭,還是該節點聲明為簇成員時。每個節點會保留一個可信節點列表,并會在每輪選舉簇頭時進行交換。
為了方便描述,稱相互認證的節點為節點A和B。節點在初始化時會獲得認證中心的公鑰KCA和由認證中心頒發的證書CertA={IDA,KA}K下面對協議的安全認證進行描述并用BAN邏輯證明其安全性[8,9]。
協議描述如下:
安全性證明:
由假設(c)和信息流a),應用信息意義推理規則,得知
A|≡CA|~KBB(1)
由證書的性質得出:
A|≡CA|≡KBB(2)
由假設(e),應用仲裁推理規則,得知
A|≡KBB(3)
A|≡B|~#(Na)(4)
由信息流b),結合式(3),得知
對式(6)和假設(b),應用信息的意義推理規則,得出
B|≡CA|~A(7)
根據證書的性質得出B|≡CA|≡A,B|≡A,即主體相信A的證書的合理性。同時,B|≡A|≡#(Na+1)。所以,B|≡A|≡{AKABB},得證。
3.2 信譽機制
通過節點之間的安全認證,可以有效地防御沒有獲得認證中心授權的惡意節點的異常行為。但是有些節點可能是網絡中獲得了認證中心授權的自私節點,這些節點可能是做一些自私行為,如選擇性轉發,也可能做出一些惡意行為,如竄改報文數據。對于這些節點,由于有授權,不可能完全將其排除到網絡之外,只能對異常行為進行遏制[10]。
定義1 信任評估等級。當節點i有對節點j的可信度評價時,則i與j之間存在信任關系。在本文中用Ti,j代表節點i對j的信任評估等級。經驗是信任評估的主要依據,包括所有直接或間接的經驗。根據經驗的來源,信任關系可分為兩類,即直接信任和間接信任。信任評估等級是綜合了直接信任值和間接信任值的結果。
定義2 直接信任值。它是實體根據直接觀察,在特定環境中和特定時間內,對評估客體行為的評價。節點i對節點j的直接信任值用Dij表示。
在網絡中,直接信任值主要來源于節點i對j的信息收集,如節點j鏈路幀的接收、數據包和路由包的接收以及數據包和路由包的轉發。
定義3 間接信任值。這是因為在無線傳感網復雜的環境中,當對一個客體評估信任時,有可能主體對其一無所知,需要借助中間者來進行信任關系建立;間接信任值表示其他節點對節點j的信任評估,如節點k對節點j的間接信任值為Iij。
節點i對j的信任評估等級應滿足Tij=f(Dij,Ikj)。
對于直接信任值Dij,如果觀察到的行為正常,Tij+a1;如果觀察到的行為屬于異常行為,那么Tij-a2(為了保證系統能快速檢測出內部異常節點,要求a1
在初始化時,有三個規定值rmax、r0、rthresh分別表示信譽評估等級最大值、初始值和最低門限值。當Tij≥rthresh時,節點i認為j為友節點;否則 ,認為節點j不可信。表2給出仿真時的參數設置。
當然,在無線信道中,很難區分惡意節點和傳輸失敗或其他錯誤。如果令η=rmax-rthresh,隨著η的增大,那么誤判率將會降低,但是同時對于檢查惡意節點的靈敏度也會隨之下降。在誤判率與靈敏度之間只能尋求一個平衡。此外,信譽系統僅僅是提供一定的概率來發現內部異常節點。雖然信譽系統中積極的反饋可以在一定的門限范圍內迫使節點行為正常化。但是卻不可能完全避免攻擊。例如,開始時,節點正常參與路由形成與數據轉發,從而增加該節點信任評估等級,使得其遠遠高于信任評估等級門限;然后再發送虛假的或者是竄改過的信譽信息到整個網絡。這種情況只有適當地增大a2來限制內部背叛節點。
4 仿真實驗
41 仿真環境
實驗平臺為Pentium4 2.0 GHz, 512 MB RAM ,使用的操作系統是Windows 2000下Cygwin平臺,網絡仿真平臺是NS 2.27(network simulator version 2.27)。仿真中,節點總數設置為100個, 第一個仿真場景,100個節點隨機分布在面積大小為50 m×50 m的區域,其中基站位置(50 m, 50 m);第二個仿真場景,100個節點隨機分布在面積大小為100 m×100 m的區域,其中基站位置(50 m, 100 m)。每個節點初始能量為2 J;一旦節點死亡,將退出網絡。MAC層使用的802.11協議,模擬時間為200 s,20 s一輪。節點傳輸半徑為15 m。
4.2 仿真結果
圖1顯示了50 m×50 m的區域中,傳感器網絡總的能量消耗隨時間的變化。由圖中可以看出,網絡中的總能量開始時,消耗增長率明顯較大,隨著時間的推移,網絡中總能量的消耗增長率越來越小,最后趨近于零。這是因為開始時,網絡中所有的節點都是存活的,每個節點都在消耗能量。隨著輪數的增加,死亡節點的數量也越來越多,所以能量消耗的增長率越來越低。與LEACH相比較,SLEACH對網絡總能量的消耗雖然略有增加(平均大約11%),但是在可接受范圍內。
從圖2中可以看出,節點在開始時,由于能量比較充裕,基本上沒有死亡。在80~160 s,由于有些節點作為簇頭消耗較大,開始死亡。節點數量的減少也呈加速度趨勢。由LEACH與SLEACH的對比也可以發現,雖然對于網絡總能量消耗上SLEACH較大,但是在網絡的生存周期上,兩種協議是比較接近的。這是因為,LEACH協議20 s一輪選舉新簇頭,所以即使有安全認證過程,也要隔20 s才進行,相對來說,對于每個節點的額外負載并不是很大。
圖3和4顯示了當網絡監測區域面積到達100 m×100 m時,網絡中總能量消耗和存活節點數量隨時間的變化。相對于50 m×50 m的區域而言,其無論是能量變化還是存活節點數量的變化,整體趨勢是很接近的,但是由于在100 m×100 m的區域中,節點分布相對比較散,節點間距離較遠,節點在通信時會消耗更多的能量,由安全認證帶來的額外負載影響更小。圖3中,LEACH和SLEACH的總能量消耗是十分接近的。圖4中,無論是LEACH還是SLEACH,都比圖2中相應協議的生存周期要短。
LEACH協議節點的能量主要分為兩個部分:初始階段簇頭選舉的能量消耗;選舉完成后的傳感器數據采集以及上傳。其中第二部分,對本文的安全機制基本上不會帶來什么影響。所以圖5主要分析的是初始階段帶來的影響。由圖5可知,在50 m×50 m的區域中大約多出了0.33 J,而100 m×100 m區域中大約多出了0.23 J。同時這也反映了安全機制給性能造成的影響遠遠不如距離對協議造成的影響。
5 結束語
本文針對無線網絡中路由協議的安全問題進行研究,分析了LEACH協議可能受到的攻擊,提出了一種安全的LEACH協議,對節點之間的安全性認證進行了形式化證明,并利用信譽機制來監督節點的自私行為。仿真結果對50 m×50 m和100 m×100 m兩個區域進行了能量以及存活節點數量的分析,最后對輪初始階段的能量消耗進行了比較。由實驗可知,SLEACH引入的安全機制給性能所帶來的影響是可以接受的。
參考文獻:
[1]AKYILDIZ L, SU W, SANKARASUBRAMANIAM Y,et al. A survey on sensor networks[J].IEEE Communications Magazine,2002,40(8):102114.
[2]RENTALA P,MUSUNURI R,GANDHAM S,et al.Survey on sensor networks,UTDCS233202[R]. Dallas:University of Texas at Dallas, 2002.
[3]PERR I G A, STANKOV I C J, WAGNE D. Security in wireless sensor networks[J].Communications of the ACM,2004,47(6):5357.
[4]KARLOF C, WAGNER D. Secure routing in wireless sensor networks:attacks and countermeasures[C]//Proc of the 1st IEEE International Workshop on Sensor Network Protocols and Applications. 2003:113127.
[5]NEWSOME J, SH I E, SONG D,et al. The sybil attack in sensor networks:analysis defenses[EB/OL].(2002).http: //www. cs. rice.edu /Conferences/ IPTPS02.
[6]POTTIE G J, KAISER W J. Wireless integrated network sensors[J].Communications of the ACM,2000,43(5):5158.
[7]HEINZELMAN W R. Applicationspecific protocol architectures for wireless networks[D].Massachusetts: Massachusetts Institute of Technology, 2000.
[8]DUARTEMELO E J, LIU M. Analysis of energy consumption and lifetime of heterogeneous wireless sensor networks[C]//Proc of Global Telecommunications Conference (GLOBECOM2002). 2002:2125.
[9]MHATRE V, ROSENBERG C. Homogeneous vs. heterogeneous clustered sensor networks: a comparative study[C]//Proc ofIEEE International Conference on Communications. 2004.
[10]MHATRE V, ROSENBERG C, KOFMAN D,et al. A minimum cost heterogeneous sensor network with a lifetime constraint[J].IEEE Trans on Mobile Computing,2004,3
(3):415