摘要:無線傳感器網(wǎng)絡(luò)容易受到節(jié)點(diǎn)欺騙和虛假信息的影響造成所采集信息的安全問題,正常節(jié)點(diǎn)可能被占領(lǐng)而變?yōu)閻阂夤?jié)點(diǎn),從而給網(wǎng)絡(luò)帶來不利影響。研究并提出了面向傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全成簇機(jī)制,采用基本的隨機(jī)密鑰預(yù)分配模型和有效的密鑰管理技術(shù)實(shí)現(xiàn)網(wǎng)絡(luò)在成簇階段進(jìn)行惡意節(jié)點(diǎn)的識別和剔除;同時(shí),增加節(jié)點(diǎn)和簇頭的安全認(rèn)證以及重新分簇方法增強(qiáng)節(jié)點(diǎn)的安全性。仿真結(jié)果表明該成簇機(jī)制能夠準(zhǔn)確捕捉、剔除惡意節(jié)點(diǎn),并能顯著降低網(wǎng)絡(luò)中的廣播能耗,對延長網(wǎng)絡(luò)壽命將起到積極作用。
關(guān)鍵詞:無線傳感器網(wǎng)絡(luò) 節(jié)點(diǎn)安全 成簇機(jī)制 身份認(rèn)證
1 引言
無線傳感器網(wǎng)絡(luò)WSN (Wireless Sensor Networks, WSN)是一種全新的信息獲取、處理和傳輸技術(shù),通常包含大量的分布式傳感器節(jié)點(diǎn)。由于無線傳感器網(wǎng)絡(luò)具有組網(wǎng)快捷、靈活,不受有線網(wǎng)絡(luò)約束的優(yōu)點(diǎn),可用于緊急搜索、災(zāi)難救助、軍事、醫(yī)療等環(huán)境中,其應(yīng)用前景非常廣泛 [1]。無線傳感器網(wǎng)絡(luò)的分布特點(diǎn)和資源有限因素導(dǎo)致其在物理上存在安全隱患,正常節(jié)點(diǎn)容易被占領(lǐng)而變?yōu)閻阂夤?jié)點(diǎn)。惡意節(jié)點(diǎn)表現(xiàn)為故意發(fā)布錯(cuò)誤信息,虛假信息或延遲信息,造成其他節(jié)點(diǎn)能量快速耗盡;同時(shí),惡意節(jié)點(diǎn)甚至進(jìn)行節(jié)點(diǎn)路由誤導(dǎo),迫使節(jié)點(diǎn)間轉(zhuǎn)發(fā)信息中斷等等。因此,無線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全問題是其研究內(nèi)容的一個(gè)重要部分。近幾年,針對傳感器網(wǎng)絡(luò)節(jié)點(diǎn)安全問題出現(xiàn)了多種分簇機(jī)制[2-6],將網(wǎng)絡(luò)劃分成若干個(gè)簇,每個(gè)簇由一個(gè)簇首和若干成員節(jié)點(diǎn)組成,實(shí)現(xiàn)網(wǎng)絡(luò)中節(jié)點(diǎn)層次化管理,對于節(jié)點(diǎn)安全問題起到了積極作用。
本文以解決傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全為研究目的,借鑒基本的隨機(jī)密鑰預(yù)分配模型和有效的密鑰管理技術(shù)實(shí)現(xiàn)網(wǎng)絡(luò)在成簇階段進(jìn)行惡意節(jié)點(diǎn)的識別和剔除;同時(shí),增加節(jié)點(diǎn)和簇頭的安全認(rèn)證以及重新分簇方法增強(qiáng)節(jié)點(diǎn)的安全性。該分簇機(jī)制能夠有效降低惡意節(jié)點(diǎn)對網(wǎng)絡(luò)的破壞性,進(jìn)而提高節(jié)點(diǎn)和網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)陌踩浴?span>
2 研究現(xiàn)狀
在無線傳感器網(wǎng)絡(luò)中,簇的形成主要有靜態(tài)和動(dòng)態(tài)兩種,其中動(dòng)態(tài)以基于LEACH的算法為代表,而靜態(tài)的則以SCRP方法為代表。LEACH 協(xié)議算法[2]是一種經(jīng)典的無線傳感器網(wǎng)絡(luò)成簇算法,為了平衡節(jié)點(diǎn)能耗,所有節(jié)點(diǎn)輪流充當(dāng)簇首。網(wǎng)絡(luò)周期性地進(jìn)行簇首選舉,每一個(gè)周期稱為一輪(round)。每輪又分為“建立階段”和“穩(wěn)定工作階段”。在每輪的建立階段,各節(jié)點(diǎn)按一定的概率成為簇首節(jié)點(diǎn)。它的成簇思想貫穿于其后發(fā)展出的很多分簇路由協(xié)議中。然而LEACH 算法也存在不足之處:由于LEACH假定所有節(jié)點(diǎn)都能與基站直接通信,采用的是單跳路徑選擇模式,故對虛假路由、槽洞、蟲洞等攻擊沒有防御能力;而且,一旦有外部惡意節(jié)點(diǎn)偽裝成合法節(jié)點(diǎn),或合法節(jié)點(diǎn)被攻擊者俘獲,便能對網(wǎng)絡(luò)實(shí)現(xiàn)以上的各種攻擊。所以在成簇過程中,需要解決識別并排除惡意或被俘獲節(jié)點(diǎn)的問題。此外一旦簇形成之后,簇的結(jié)構(gòu)就不再改變,簇內(nèi)節(jié)點(diǎn)根據(jù)簇首列表依次成為簇首,不能動(dòng)態(tài)處理節(jié)點(diǎn)的加入、失敗和移動(dòng)。SCRP[3] (Semantic Clustering Routing Protocol)也是一種基于簇的路由協(xié)議,但與LEACH不同之處在于簇一旦形成,在通信過程中便不會(huì)改變。其工作過程為首先被選為簇首的節(jié)點(diǎn)啟動(dòng)簇形成;然后簇首僅向其鄰節(jié)點(diǎn)發(fā)送興趣消息,在得到鄰節(jié)點(diǎn)確認(rèn)后,簇首記錄其鄰節(jié)點(diǎn)ID,它在本階段的任務(wù)完成,并作整個(gè)簇的“樹根”,鄰節(jié)點(diǎn)作為簇首的直接子節(jié)點(diǎn);接著簇首鄰節(jié)點(diǎn)繼續(xù)向他們的鄰節(jié)點(diǎn)(不包括根節(jié)點(diǎn))發(fā)送興趣消息,如同前一過程,簇首鄰節(jié)點(diǎn)記錄他們的鄰節(jié)點(diǎn)ID (作為鄰節(jié)點(diǎn)的直接子節(jié)點(diǎn)),以此繼續(xù),直到最后向外的發(fā)出興趣消息節(jié)點(diǎn)在經(jīng)過一定時(shí)間沒有得到響應(yīng),該節(jié)點(diǎn)作為葉子節(jié)點(diǎn),這時(shí)以簇首為根節(jié)點(diǎn)的“樹” 已經(jīng)形成,簇形成過程結(jié)束;最后,簇內(nèi)各節(jié)點(diǎn)把檢測的到節(jié)點(diǎn)向其雙親節(jié)點(diǎn)傳送,雙親節(jié)點(diǎn)不會(huì)立即將數(shù)據(jù)向其上層節(jié)點(diǎn)發(fā)出,而是將其接收到的數(shù)據(jù)經(jīng)過一定的數(shù)據(jù)融合之后再發(fā)出。
LEACH的優(yōu)點(diǎn)在于簇首的輪換機(jī)制,使得簇首負(fù)載得到分擔(dān),但缺點(diǎn)也很明顯:簇內(nèi)單跳通信,簇重組過程頻繁[2]。SCRP在基于某個(gè)查詢?nèi)蝿?wù)時(shí),簇首以及整個(gè)簇結(jié)構(gòu)不會(huì)改變,網(wǎng)絡(luò)利用率較高,但如果這個(gè)查詢?nèi)蝿?wù)持續(xù)過長的時(shí)間,簇首的能量消耗還是相當(dāng)大,因?yàn)樗?fù)責(zé)簇間的通信;如果某些節(jié)點(diǎn)周圍鄰節(jié)點(diǎn)過于密集,很可能導(dǎo)致該節(jié)點(diǎn)過早失效,從而影響監(jiān)測任務(wù)的準(zhǔn)確性。無論是動(dòng)態(tài)算法還是靜態(tài)算法,對于惡意節(jié)點(diǎn)的控制均存在很大的問題。要解決傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全問題,需要充分發(fā)揮動(dòng)態(tài)和靜態(tài)成簇算法的優(yōu)點(diǎn),并采用一定的技術(shù)手段克服其缺點(diǎn)。
3 面向傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全成簇機(jī)制
3.1 節(jié)點(diǎn)安全機(jī)制的建立
靜態(tài)分布的傳感器網(wǎng)絡(luò)中,節(jié)點(diǎn)通常在初始化時(shí)設(shè)置了全網(wǎng)唯一的ID號,而且該號ID為恒定不變,這為敵對節(jié)點(diǎn)帶來入侵的方便,一種是非法更改正常節(jié)點(diǎn)ID號,另一種是復(fù)制正常節(jié)點(diǎn)ID號,這些對于節(jié)點(diǎn)和網(wǎng)絡(luò)信息安全都極為不利。為此,我們在設(shè)計(jì)中借鑒了基本的隨機(jī)密鑰預(yù)分布模型,即首先在脫機(jī)的環(huán)境中生成一個(gè)較大的密鑰池,網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都隨機(jī)從該密鑰池中取出一部分密鑰構(gòu)成密鑰環(huán)存儲在自己的存儲空間中。網(wǎng)絡(luò)部署之后,只要兩個(gè)節(jié)點(diǎn)之間擁有一對相同的密鑰就可以用此密鑰建立安全通道[7]。該機(jī)制共分為初始化階段和密鑰協(xié)商階段。在初始化階段采用一個(gè)離線的密鑰管理中心負(fù)責(zé)傳感器節(jié)點(diǎn)的初始化操作。而在密鑰協(xié)商階段則可以通過有效手段將惡意節(jié)點(diǎn)進(jìn)行濾除。這種機(jī)制能夠采取有效的密鑰管理技術(shù),令只有擁有合法對偶密鑰的鄰居節(jié)點(diǎn)之間才可以進(jìn)行通信。具體的控制流程為在密鑰預(yù)分布形成階段,初始化密鑰池、建立安全鏈路。首先,隨機(jī)創(chuàng)建一個(gè)密鑰池,且為每一個(gè)密鑰分配一個(gè)ID號。在將節(jié)點(diǎn)部署到監(jiān)測區(qū)域之前,需要對節(jié)點(diǎn)進(jìn)行密鑰初始化分配,為每個(gè)節(jié)點(diǎn)從密鑰池中隨機(jī)選取m個(gè)密鑰預(yù)先存儲到節(jié)點(diǎn)中。在無線傳感器網(wǎng)絡(luò)部署好之后,傳感節(jié)點(diǎn)就進(jìn)入密鑰發(fā)現(xiàn)階段。各節(jié)點(diǎn)為了發(fā)現(xiàn)與自己持有共享密鑰的鄰居節(jié)點(diǎn),用密鑰環(huán)來廣播自身的密鑰ID號。如果兩個(gè)鄰居節(jié)點(diǎn)之間發(fā)現(xiàn)共享的密鑰,則選取共享密鑰中密鑰ID號最小的那個(gè)密鑰作為它們之間的對偶密鑰。然后,這兩個(gè)鄰居節(jié)點(diǎn)之間可以建立一條安全的鏈路。對于惡意節(jié)點(diǎn)來說,由于不享有對偶密鑰,當(dāng)其嘗試加入網(wǎng)絡(luò)時(shí)而進(jìn)行節(jié)點(diǎn)間的認(rèn)證時(shí),能夠被識別并被拒絕加入網(wǎng)絡(luò)。
當(dāng)節(jié)點(diǎn)發(fā)現(xiàn)不具有合法密鑰的節(jié)點(diǎn)試圖連接網(wǎng)絡(luò)時(shí),意味著有惡意節(jié)點(diǎn)入侵,由發(fā)現(xiàn)該情況的節(jié)點(diǎn)向基站發(fā)送一個(gè)惡意節(jié)點(diǎn)的舉報(bào)消息,基站在收到對某個(gè)節(jié)點(diǎn)是惡意節(jié)點(diǎn)的舉報(bào)數(shù)超過設(shè)定閾值后,廣播一個(gè)消息聲明惡意節(jié)點(diǎn),并將惡意節(jié)點(diǎn)加入黑名單。凡是被列入網(wǎng)絡(luò)黑名單的節(jié)點(diǎn),都被認(rèn)為是非法節(jié)點(diǎn)。一旦網(wǎng)絡(luò)發(fā)現(xiàn)非法節(jié)點(diǎn),會(huì)發(fā)出警告,將惡意節(jié)點(diǎn)的坐標(biāo)進(jìn)行廣播。由于在節(jié)點(diǎn)間通信的消息格式中包含了源節(jié)點(diǎn)及目的節(jié)點(diǎn)的坐標(biāo),因此其它合法節(jié)點(diǎn)收到報(bào)警消息后,可以通過檢驗(yàn)坐標(biāo)的方式識別惡意節(jié)點(diǎn)并切斷與非法節(jié)點(diǎn)的通信。
在鄰居節(jié)點(diǎn)的識別過程中,增加鏈路有效性認(rèn)證反饋環(huán)節(jié),凡是不能通過鏈路有效性驗(yàn)證的節(jié)點(diǎn)均被排除在鄰居節(jié)點(diǎn)的范圍之外。基站收到消息后,將按消息的來路反饋一個(gè)對消息的ASK。節(jié)點(diǎn)在發(fā)送或轉(zhuǎn)發(fā)一個(gè)消息A后,暫存A并等待基站對A的ASK。如果節(jié)點(diǎn)在一定的時(shí)間收到了ASK,則將繼續(xù)轉(zhuǎn)發(fā)ASK;否則,就將A的發(fā)送路由中的下一跳節(jié)點(diǎn)標(biāo)記為惡意節(jié)點(diǎn)。節(jié)點(diǎn)間相互通信時(shí)必須進(jìn)行鏈路有效性認(rèn)證反饋,防止非法入侵,而且對所傳輸?shù)臄?shù)據(jù)進(jìn)行加密。傳感器節(jié)點(diǎn)廣播驗(yàn)證消息,只有其合法鄰居節(jié)點(diǎn)才能解密此消息并反饋一個(gè)應(yīng)答消息。該傳感器節(jié)點(diǎn)收到其合法鄰居節(jié)點(diǎn)反饋的應(yīng)答消息后,才能確定它們之間的鏈路是合法的且是可用的。
3.2 分簇機(jī)制的建立
在分簇方法中,簇頭擔(dān)當(dāng)了重要角色,是各簇的中轉(zhuǎn)點(diǎn),集中了整個(gè)簇的大量信息,簇頭節(jié)點(diǎn)一旦被攻陷就會(huì)造成巨大損失。因此,應(yīng)加強(qiáng)對簇頭攻擊的防范,一旦檢測到簇頭正在遭受攻擊,則基站就強(qiáng)制開始新一輪的重新分簇,重新選舉各簇簇頭,避免簇頭被攻陷所帶來的巨大損失,阻止惡意節(jié)點(diǎn)對網(wǎng)絡(luò)造成進(jìn)一步的破壞。因此,簇頭的選取策略對于網(wǎng)絡(luò)安全至關(guān)重要,從上面分析可知,LEACH頻繁動(dòng)態(tài)實(shí)現(xiàn)節(jié)點(diǎn)組簇,盡管在簇頭中加入節(jié)點(diǎn)安全處理機(jī)制能夠使網(wǎng)絡(luò)的安全性能得到提高,但網(wǎng)絡(luò)能耗損失太高,而靜態(tài)的分簇機(jī)制對于入侵節(jié)點(diǎn)防范能力很差。為此,我們提出采用動(dòng)態(tài)和靜態(tài)結(jié)合的分簇機(jī)制。當(dāng)網(wǎng)絡(luò)構(gòu)造的初始階段,根據(jù)網(wǎng)絡(luò)規(guī)模選取合適的簇頭數(shù)量,采用與LEACH算法相似的機(jī)制,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)被分配到一個(gè)確定的簇中。簇頭負(fù)責(zé)本簇成員通信數(shù)據(jù)和本簇成員身份(ID)認(rèn)證。為了平衡簇內(nèi)節(jié)點(diǎn)能耗,該簇的簇頭和成員采用輪流工作機(jī)制,即當(dāng)前簇頭工作一段時(shí)間后,由本簇候選簇頭擔(dān)任,而當(dāng)前簇頭將本簇的密鑰和身份認(rèn)證關(guān)系表轉(zhuǎn)發(fā)給候選簇頭后自動(dòng)成為該簇普通節(jié)點(diǎn)。各簇頭分別同基站直接通信,當(dāng)基站發(fā)現(xiàn)某個(gè)簇頭受到攻擊后,由基站向全網(wǎng)廣播,所有節(jié)點(diǎn)采用網(wǎng)絡(luò)初始階段的構(gòu)造機(jī)制重新分簇組網(wǎng)。重新分簇的具體實(shí)現(xiàn)過程如下[8]。
首先基站發(fā)出重新分簇命令,然后基站根據(jù)網(wǎng)絡(luò)規(guī)模確定一定比例的“臨時(shí)簇頭”。“臨時(shí)簇頭”向自己周圍的節(jié)點(diǎn)廣播自己的ID和成簇請求消息,該消息在節(jié)點(diǎn)分布前就設(shè)置了主密鑰加密;要求網(wǎng)絡(luò)中接收到該消息的節(jié)點(diǎn)發(fā)送反饋消息,消息包括是否是簇首節(jié)點(diǎn)、或臨時(shí)簇首節(jié)點(diǎn)、或普通簇內(nèi)節(jié)點(diǎn)、或空閑節(jié)點(diǎn)、節(jié)點(diǎn)的ID和剩余能量。
周圍接收到成簇請求消息的節(jié)點(diǎn)首先進(jìn)行安全認(rèn)證,即檢查接收到的節(jié)點(diǎn)ID是否在黑名單中,如果不在則進(jìn)一步判斷前四位是否與自己的ID前四位一致,一致就認(rèn)為是“同類”,可以轉(zhuǎn)入下一步;否則為非同類,認(rèn)為是惡意節(jié)點(diǎn),不予響應(yīng)。通過安全檢查后,接收到成簇查詢消息的節(jié)點(diǎn)如果尚不是簇首節(jié)點(diǎn)或尚未被確定為某個(gè)簇內(nèi)的普通節(jié)點(diǎn),則向該臨時(shí)簇頭節(jié)點(diǎn)反饋?zhàn)约旱腎D信息和剩余能量信息;如果是簇頭節(jié)點(diǎn)或臨時(shí)簇頭節(jié)點(diǎn),則返回自己的ID信息和自己是簇頭或臨時(shí)簇頭的消息。對于已經(jīng)通過安全檢查的同類節(jié)點(diǎn),如果已存在簇頭節(jié)點(diǎn),臨時(shí)簇頭節(jié)點(diǎn)就申請加入該簇頭節(jié)點(diǎn)所在的簇,如果存在多個(gè)簇頭節(jié)點(diǎn),就選擇一個(gè)距離自己最近的簇頭節(jié)點(diǎn)反饋?zhàn)约旱腎D號和剩余能量;已經(jīng)是簇內(nèi)的普通節(jié)點(diǎn)不再響應(yīng),已經(jīng)是簇頭的節(jié)點(diǎn)則響應(yīng)并記錄下,用于簇問路由;如果同時(shí)接收到幾個(gè)簇頭的邀請,則選擇距離自己最近的一個(gè)簇頭加入其所在的簇;如果沒有簇頭節(jié)點(diǎn),則臨時(shí)簇頭節(jié)點(diǎn)根據(jù)收到的反饋信息中的相對剩余能量最大的節(jié)點(diǎn)作為簇頭節(jié)點(diǎn)。
簇頭節(jié)點(diǎn)向周圍的節(jié)點(diǎn)發(fā)送加密的成簇消息,消息包含自己的簇頭標(biāo)識和ID信息,邀請?jiān)谧约和ㄐ欧秶鷥?nèi)的節(jié)點(diǎn)成為自己的簇內(nèi)普通的節(jié)點(diǎn),該普通節(jié)點(diǎn)并向簇頭反饋?zhàn)约旱腎D號和剩余能量;如果接收到成簇消息的節(jié)點(diǎn)已經(jīng)是簇內(nèi)節(jié)點(diǎn)則不予響應(yīng),已經(jīng)是簇頭節(jié)點(diǎn)則響應(yīng)并記錄下該簇頭的ID信息,用于簇間路由的選擇條件。如果某個(gè)節(jié)點(diǎn)同時(shí)接收到多個(gè)簇頭的邀請,選擇距離自己最近的一個(gè)簇頭加入所在的簇。循環(huán)反復(fù),直到所有的非惡意節(jié)點(diǎn)都成為簇頭節(jié)點(diǎn)或簇內(nèi)的普通節(jié)點(diǎn)為止。分簇機(jī)制的實(shí)施流程如圖1所示。
圖1 分簇機(jī)制的實(shí)施流程
當(dāng)網(wǎng)絡(luò)中各節(jié)點(diǎn)重新分配到確定的簇中后,簇頭從新開始負(fù)責(zé)處理簇內(nèi)成員的通信數(shù)據(jù)和安全認(rèn)證。為了盡可能降低簇頭更換頻率,本文所提的分簇機(jī)制采用文獻(xiàn)[9]提出的簇頭連續(xù)工作機(jī)制,即當(dāng)簇頭存在較多剩余能量時(shí),可以連續(xù)擔(dān)當(dāng)本簇控制中心,如果當(dāng)前簇頭能力較低時(shí),將自己所承擔(dān)的任務(wù)轉(zhuǎn)交給候選簇頭,候選簇頭在接替當(dāng)前簇頭任務(wù)后,需向基站和成員確認(rèn)通信,一方面通知本簇成員簇頭更換,另一方面由基站確認(rèn)其合法身份。
4 仿真與驗(yàn)證
為評估所提出的成簇機(jī)制對節(jié)點(diǎn)安全性能的改進(jìn),假設(shè)100個(gè)節(jié)點(diǎn)隨機(jī)分布100m*100m的區(qū)域,設(shè)所有節(jié)點(diǎn)具有相同的初始能量,簇頭占總節(jié)點(diǎn)數(shù)目百分比為5%,各節(jié)點(diǎn)賦予初始ID號,分別記為1,2,…,100,基站序號為0,其位置坐標(biāo)為(50, 150)。在網(wǎng)絡(luò)運(yùn)行早期,各節(jié)點(diǎn)具有較多剩余能量時(shí),如果網(wǎng)絡(luò)沒有出現(xiàn)節(jié)點(diǎn)被攻擊,各簇頭連續(xù)擔(dān)任本地控制中心至少5個(gè)輪回,被攻擊節(jié)點(diǎn)的ID號采用隨機(jī)函數(shù)生成。本文設(shè)計(jì)的成簇機(jī)制與LEACH成簇算法對被攻擊節(jié)點(diǎn)的捕獲結(jié)果對比如圖2所示。
從圖2可以看出,我們所設(shè)計(jì)的成簇機(jī)制比采用LEACH成簇算法在捕獲被攻擊節(jié)點(diǎn)的性能明顯提高。由于LEACH算法每輪數(shù)據(jù)處理后需要重新實(shí)施節(jié)點(diǎn)分簇,而對鄰居節(jié)點(diǎn)沒有進(jìn)行安全識別,缺乏鏈路有效性認(rèn)證,導(dǎo)致可能當(dāng)前輪回入侵節(jié)點(diǎn)或被攻擊節(jié)點(diǎn)不能進(jìn)行處理;而我們所提成簇算法要求對簇頭、成員節(jié)點(diǎn)和鄰居節(jié)點(diǎn)間的信息都需要進(jìn)行安全認(rèn)證,因此能夠有效遏制入侵節(jié)點(diǎn)或被攻擊節(jié)點(diǎn)對網(wǎng)絡(luò)信息安全的影響。我們所設(shè)計(jì)的成簇機(jī)制和采用LEACH算法實(shí)現(xiàn)的節(jié)點(diǎn)安全認(rèn)證中廣播能耗與總能量之比的對比情況如圖3所示
圖3可以看出,我們所提的分簇機(jī)制較LEACH算法明顯降低了廣播能耗。由于在我們所提的分簇機(jī)制中,如果基站沒有收到任何簇頭發(fā)送網(wǎng)絡(luò)不安全信息,則不會(huì)通知全網(wǎng)節(jié)點(diǎn)進(jìn)行重新成簇,除非當(dāng)前簇頭連續(xù)擔(dān)任本地控制中心的次數(shù)已到,則候選簇頭替換當(dāng)前簇頭,以廣播的方式通知本簇成員和基站,因此簇頭和成員、基站中的廣播消息將顯著降低。當(dāng)然,如果基站發(fā)現(xiàn)某個(gè)簇頭出現(xiàn)不安全特征,則仍然需要全網(wǎng)廣播,采用組網(wǎng)初始階段的方法,重新組簇。由圖2、圖3可知,采用這種動(dòng)態(tài)、靜態(tài)成簇的機(jī)制,既能及時(shí)準(zhǔn)確發(fā)現(xiàn)入侵節(jié)點(diǎn)或被攻擊節(jié)點(diǎn),又能顯著降低網(wǎng)絡(luò)的廣播能耗,對于提高網(wǎng)絡(luò)安全和延長網(wǎng)絡(luò)壽命都將起到積極作用。
5 結(jié)語
本文針對面向傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全問題,采用基本的隨機(jī)密鑰預(yù)分配模,分配網(wǎng)絡(luò)初始化密鑰池、建立安全鏈路和動(dòng)態(tài)、靜態(tài)成簇機(jī)制有效地改善了節(jié)點(diǎn)安全問題,有利于提高節(jié)點(diǎn)和網(wǎng)絡(luò)安全性,并能延長網(wǎng)絡(luò)壽命。
參考文獻(xiàn)
[1] 孫利民,李建中,陳渝等.無線傳感器網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社, 2005.2.
[2] Heinzelman W, Chandrakasan A, and Balakrishnan H. Energy-efficient communication protocol for wireless microsensor net- works. Proc. ofthe 33rd Annual Hawaii Int ’l Conf. on System Sciences. Maui: IEEE Computer Society, 2000: 3005-3014.
[3] Bouhafs F,.Merabti M. A semantic clustering muting protocol for wireless sensor networks[A]. IEEE Consumer Communications and Networking Conference[C]. 2006, 351-355.
[4]Deb B, Bhatangar S, Nath B. A topology discovery algorithm for sensor networks with applications to network management [R]. DCS Technical Report DCS-TR-441, Rutgers University, 2001.
[5] Santi P, Simon J. Silence is golden with high probability: maintaining a connected backbone in wireless sensor networks [C]. In Proceeding of 1st European Workshop on Wireless Sensor Networks (EWSN 2004), Jan 2004: 106-121.
[6] Younis O, Franmy S. Distributed clustering in ad-hoc sensor networks: a hybrid, energy-efficient approach [C]. In Proceeding of the IEEE Conference on Computer Communications (INFOCOM), March 2004: 660-670.
[7] L. Eschenauer, V.D. Gligor. A key-Management Scheme for Distributed Sensor Networks. In: Proc of the 9th ACM Conference on Computer and Communications Security. Washington: ACM Press, 2002.41-47.
[8]蔡東強(qiáng).無線傳感器網(wǎng)絡(luò)安全密鑰成簇算法的設(shè)計(jì)及研究. http://www.jc-ic.cn/show-1477058-1.html
[9] Xiang Min, Shi Wei-ren, Jiang Chang-jiang, et.al. Energy-efficient clustering algorithm for maximizing lifetime of wireless sensor networks (In Press). AEU-International Journal of Electronic & Communication. doi:10.1016/j.aeue.2009.01.004.
關(guān)鍵詞:無線傳感器網(wǎng)絡(luò) 節(jié)點(diǎn)安全 成簇機(jī)制 身份認(rèn)證
1 引言
無線傳感器網(wǎng)絡(luò)WSN (Wireless Sensor Networks, WSN)是一種全新的信息獲取、處理和傳輸技術(shù),通常包含大量的分布式傳感器節(jié)點(diǎn)。由于無線傳感器網(wǎng)絡(luò)具有組網(wǎng)快捷、靈活,不受有線網(wǎng)絡(luò)約束的優(yōu)點(diǎn),可用于緊急搜索、災(zāi)難救助、軍事、醫(yī)療等環(huán)境中,其應(yīng)用前景非常廣泛 [1]。無線傳感器網(wǎng)絡(luò)的分布特點(diǎn)和資源有限因素導(dǎo)致其在物理上存在安全隱患,正常節(jié)點(diǎn)容易被占領(lǐng)而變?yōu)閻阂夤?jié)點(diǎn)。惡意節(jié)點(diǎn)表現(xiàn)為故意發(fā)布錯(cuò)誤信息,虛假信息或延遲信息,造成其他節(jié)點(diǎn)能量快速耗盡;同時(shí),惡意節(jié)點(diǎn)甚至進(jìn)行節(jié)點(diǎn)路由誤導(dǎo),迫使節(jié)點(diǎn)間轉(zhuǎn)發(fā)信息中斷等等。因此,無線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全問題是其研究內(nèi)容的一個(gè)重要部分。近幾年,針對傳感器網(wǎng)絡(luò)節(jié)點(diǎn)安全問題出現(xiàn)了多種分簇機(jī)制[2-6],將網(wǎng)絡(luò)劃分成若干個(gè)簇,每個(gè)簇由一個(gè)簇首和若干成員節(jié)點(diǎn)組成,實(shí)現(xiàn)網(wǎng)絡(luò)中節(jié)點(diǎn)層次化管理,對于節(jié)點(diǎn)安全問題起到了積極作用。
本文以解決傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全為研究目的,借鑒基本的隨機(jī)密鑰預(yù)分配模型和有效的密鑰管理技術(shù)實(shí)現(xiàn)網(wǎng)絡(luò)在成簇階段進(jìn)行惡意節(jié)點(diǎn)的識別和剔除;同時(shí),增加節(jié)點(diǎn)和簇頭的安全認(rèn)證以及重新分簇方法增強(qiáng)節(jié)點(diǎn)的安全性。該分簇機(jī)制能夠有效降低惡意節(jié)點(diǎn)對網(wǎng)絡(luò)的破壞性,進(jìn)而提高節(jié)點(diǎn)和網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)陌踩浴?span>
2 研究現(xiàn)狀
在無線傳感器網(wǎng)絡(luò)中,簇的形成主要有靜態(tài)和動(dòng)態(tài)兩種,其中動(dòng)態(tài)以基于LEACH的算法為代表,而靜態(tài)的則以SCRP方法為代表。LEACH 協(xié)議算法[2]是一種經(jīng)典的無線傳感器網(wǎng)絡(luò)成簇算法,為了平衡節(jié)點(diǎn)能耗,所有節(jié)點(diǎn)輪流充當(dāng)簇首。網(wǎng)絡(luò)周期性地進(jìn)行簇首選舉,每一個(gè)周期稱為一輪(round)。每輪又分為“建立階段”和“穩(wěn)定工作階段”。在每輪的建立階段,各節(jié)點(diǎn)按一定的概率成為簇首節(jié)點(diǎn)。它的成簇思想貫穿于其后發(fā)展出的很多分簇路由協(xié)議中。然而LEACH 算法也存在不足之處:由于LEACH假定所有節(jié)點(diǎn)都能與基站直接通信,采用的是單跳路徑選擇模式,故對虛假路由、槽洞、蟲洞等攻擊沒有防御能力;而且,一旦有外部惡意節(jié)點(diǎn)偽裝成合法節(jié)點(diǎn),或合法節(jié)點(diǎn)被攻擊者俘獲,便能對網(wǎng)絡(luò)實(shí)現(xiàn)以上的各種攻擊。所以在成簇過程中,需要解決識別并排除惡意或被俘獲節(jié)點(diǎn)的問題。此外一旦簇形成之后,簇的結(jié)構(gòu)就不再改變,簇內(nèi)節(jié)點(diǎn)根據(jù)簇首列表依次成為簇首,不能動(dòng)態(tài)處理節(jié)點(diǎn)的加入、失敗和移動(dòng)。SCRP[3] (Semantic Clustering Routing Protocol)也是一種基于簇的路由協(xié)議,但與LEACH不同之處在于簇一旦形成,在通信過程中便不會(huì)改變。其工作過程為首先被選為簇首的節(jié)點(diǎn)啟動(dòng)簇形成;然后簇首僅向其鄰節(jié)點(diǎn)發(fā)送興趣消息,在得到鄰節(jié)點(diǎn)確認(rèn)后,簇首記錄其鄰節(jié)點(diǎn)ID,它在本階段的任務(wù)完成,并作整個(gè)簇的“樹根”,鄰節(jié)點(diǎn)作為簇首的直接子節(jié)點(diǎn);接著簇首鄰節(jié)點(diǎn)繼續(xù)向他們的鄰節(jié)點(diǎn)(不包括根節(jié)點(diǎn))發(fā)送興趣消息,如同前一過程,簇首鄰節(jié)點(diǎn)記錄他們的鄰節(jié)點(diǎn)ID (作為鄰節(jié)點(diǎn)的直接子節(jié)點(diǎn)),以此繼續(xù),直到最后向外的發(fā)出興趣消息節(jié)點(diǎn)在經(jīng)過一定時(shí)間沒有得到響應(yīng),該節(jié)點(diǎn)作為葉子節(jié)點(diǎn),這時(shí)以簇首為根節(jié)點(diǎn)的“樹” 已經(jīng)形成,簇形成過程結(jié)束;最后,簇內(nèi)各節(jié)點(diǎn)把檢測的到節(jié)點(diǎn)向其雙親節(jié)點(diǎn)傳送,雙親節(jié)點(diǎn)不會(huì)立即將數(shù)據(jù)向其上層節(jié)點(diǎn)發(fā)出,而是將其接收到的數(shù)據(jù)經(jīng)過一定的數(shù)據(jù)融合之后再發(fā)出。
LEACH的優(yōu)點(diǎn)在于簇首的輪換機(jī)制,使得簇首負(fù)載得到分擔(dān),但缺點(diǎn)也很明顯:簇內(nèi)單跳通信,簇重組過程頻繁[2]。SCRP在基于某個(gè)查詢?nèi)蝿?wù)時(shí),簇首以及整個(gè)簇結(jié)構(gòu)不會(huì)改變,網(wǎng)絡(luò)利用率較高,但如果這個(gè)查詢?nèi)蝿?wù)持續(xù)過長的時(shí)間,簇首的能量消耗還是相當(dāng)大,因?yàn)樗?fù)責(zé)簇間的通信;如果某些節(jié)點(diǎn)周圍鄰節(jié)點(diǎn)過于密集,很可能導(dǎo)致該節(jié)點(diǎn)過早失效,從而影響監(jiān)測任務(wù)的準(zhǔn)確性。無論是動(dòng)態(tài)算法還是靜態(tài)算法,對于惡意節(jié)點(diǎn)的控制均存在很大的問題。要解決傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全問題,需要充分發(fā)揮動(dòng)態(tài)和靜態(tài)成簇算法的優(yōu)點(diǎn),并采用一定的技術(shù)手段克服其缺點(diǎn)。
3 面向傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全成簇機(jī)制
3.1 節(jié)點(diǎn)安全機(jī)制的建立
靜態(tài)分布的傳感器網(wǎng)絡(luò)中,節(jié)點(diǎn)通常在初始化時(shí)設(shè)置了全網(wǎng)唯一的ID號,而且該號ID為恒定不變,這為敵對節(jié)點(diǎn)帶來入侵的方便,一種是非法更改正常節(jié)點(diǎn)ID號,另一種是復(fù)制正常節(jié)點(diǎn)ID號,這些對于節(jié)點(diǎn)和網(wǎng)絡(luò)信息安全都極為不利。為此,我們在設(shè)計(jì)中借鑒了基本的隨機(jī)密鑰預(yù)分布模型,即首先在脫機(jī)的環(huán)境中生成一個(gè)較大的密鑰池,網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都隨機(jī)從該密鑰池中取出一部分密鑰構(gòu)成密鑰環(huán)存儲在自己的存儲空間中。網(wǎng)絡(luò)部署之后,只要兩個(gè)節(jié)點(diǎn)之間擁有一對相同的密鑰就可以用此密鑰建立安全通道[7]。該機(jī)制共分為初始化階段和密鑰協(xié)商階段。在初始化階段采用一個(gè)離線的密鑰管理中心負(fù)責(zé)傳感器節(jié)點(diǎn)的初始化操作。而在密鑰協(xié)商階段則可以通過有效手段將惡意節(jié)點(diǎn)進(jìn)行濾除。這種機(jī)制能夠采取有效的密鑰管理技術(shù),令只有擁有合法對偶密鑰的鄰居節(jié)點(diǎn)之間才可以進(jìn)行通信。具體的控制流程為在密鑰預(yù)分布形成階段,初始化密鑰池、建立安全鏈路。首先,隨機(jī)創(chuàng)建一個(gè)密鑰池,且為每一個(gè)密鑰分配一個(gè)ID號。在將節(jié)點(diǎn)部署到監(jiān)測區(qū)域之前,需要對節(jié)點(diǎn)進(jìn)行密鑰初始化分配,為每個(gè)節(jié)點(diǎn)從密鑰池中隨機(jī)選取m個(gè)密鑰預(yù)先存儲到節(jié)點(diǎn)中。在無線傳感器網(wǎng)絡(luò)部署好之后,傳感節(jié)點(diǎn)就進(jìn)入密鑰發(fā)現(xiàn)階段。各節(jié)點(diǎn)為了發(fā)現(xiàn)與自己持有共享密鑰的鄰居節(jié)點(diǎn),用密鑰環(huán)來廣播自身的密鑰ID號。如果兩個(gè)鄰居節(jié)點(diǎn)之間發(fā)現(xiàn)共享的密鑰,則選取共享密鑰中密鑰ID號最小的那個(gè)密鑰作為它們之間的對偶密鑰。然后,這兩個(gè)鄰居節(jié)點(diǎn)之間可以建立一條安全的鏈路。對于惡意節(jié)點(diǎn)來說,由于不享有對偶密鑰,當(dāng)其嘗試加入網(wǎng)絡(luò)時(shí)而進(jìn)行節(jié)點(diǎn)間的認(rèn)證時(shí),能夠被識別并被拒絕加入網(wǎng)絡(luò)。
當(dāng)節(jié)點(diǎn)發(fā)現(xiàn)不具有合法密鑰的節(jié)點(diǎn)試圖連接網(wǎng)絡(luò)時(shí),意味著有惡意節(jié)點(diǎn)入侵,由發(fā)現(xiàn)該情況的節(jié)點(diǎn)向基站發(fā)送一個(gè)惡意節(jié)點(diǎn)的舉報(bào)消息,基站在收到對某個(gè)節(jié)點(diǎn)是惡意節(jié)點(diǎn)的舉報(bào)數(shù)超過設(shè)定閾值后,廣播一個(gè)消息聲明惡意節(jié)點(diǎn),并將惡意節(jié)點(diǎn)加入黑名單。凡是被列入網(wǎng)絡(luò)黑名單的節(jié)點(diǎn),都被認(rèn)為是非法節(jié)點(diǎn)。一旦網(wǎng)絡(luò)發(fā)現(xiàn)非法節(jié)點(diǎn),會(huì)發(fā)出警告,將惡意節(jié)點(diǎn)的坐標(biāo)進(jìn)行廣播。由于在節(jié)點(diǎn)間通信的消息格式中包含了源節(jié)點(diǎn)及目的節(jié)點(diǎn)的坐標(biāo),因此其它合法節(jié)點(diǎn)收到報(bào)警消息后,可以通過檢驗(yàn)坐標(biāo)的方式識別惡意節(jié)點(diǎn)并切斷與非法節(jié)點(diǎn)的通信。
在鄰居節(jié)點(diǎn)的識別過程中,增加鏈路有效性認(rèn)證反饋環(huán)節(jié),凡是不能通過鏈路有效性驗(yàn)證的節(jié)點(diǎn)均被排除在鄰居節(jié)點(diǎn)的范圍之外。基站收到消息后,將按消息的來路反饋一個(gè)對消息的ASK。節(jié)點(diǎn)在發(fā)送或轉(zhuǎn)發(fā)一個(gè)消息A后,暫存A并等待基站對A的ASK。如果節(jié)點(diǎn)在一定的時(shí)間收到了ASK,則將繼續(xù)轉(zhuǎn)發(fā)ASK;否則,就將A的發(fā)送路由中的下一跳節(jié)點(diǎn)標(biāo)記為惡意節(jié)點(diǎn)。節(jié)點(diǎn)間相互通信時(shí)必須進(jìn)行鏈路有效性認(rèn)證反饋,防止非法入侵,而且對所傳輸?shù)臄?shù)據(jù)進(jìn)行加密。傳感器節(jié)點(diǎn)廣播驗(yàn)證消息,只有其合法鄰居節(jié)點(diǎn)才能解密此消息并反饋一個(gè)應(yīng)答消息。該傳感器節(jié)點(diǎn)收到其合法鄰居節(jié)點(diǎn)反饋的應(yīng)答消息后,才能確定它們之間的鏈路是合法的且是可用的。
3.2 分簇機(jī)制的建立
在分簇方法中,簇頭擔(dān)當(dāng)了重要角色,是各簇的中轉(zhuǎn)點(diǎn),集中了整個(gè)簇的大量信息,簇頭節(jié)點(diǎn)一旦被攻陷就會(huì)造成巨大損失。因此,應(yīng)加強(qiáng)對簇頭攻擊的防范,一旦檢測到簇頭正在遭受攻擊,則基站就強(qiáng)制開始新一輪的重新分簇,重新選舉各簇簇頭,避免簇頭被攻陷所帶來的巨大損失,阻止惡意節(jié)點(diǎn)對網(wǎng)絡(luò)造成進(jìn)一步的破壞。因此,簇頭的選取策略對于網(wǎng)絡(luò)安全至關(guān)重要,從上面分析可知,LEACH頻繁動(dòng)態(tài)實(shí)現(xiàn)節(jié)點(diǎn)組簇,盡管在簇頭中加入節(jié)點(diǎn)安全處理機(jī)制能夠使網(wǎng)絡(luò)的安全性能得到提高,但網(wǎng)絡(luò)能耗損失太高,而靜態(tài)的分簇機(jī)制對于入侵節(jié)點(diǎn)防范能力很差。為此,我們提出采用動(dòng)態(tài)和靜態(tài)結(jié)合的分簇機(jī)制。當(dāng)網(wǎng)絡(luò)構(gòu)造的初始階段,根據(jù)網(wǎng)絡(luò)規(guī)模選取合適的簇頭數(shù)量,采用與LEACH算法相似的機(jī)制,使網(wǎng)絡(luò)中所有節(jié)點(diǎn)被分配到一個(gè)確定的簇中。簇頭負(fù)責(zé)本簇成員通信數(shù)據(jù)和本簇成員身份(ID)認(rèn)證。為了平衡簇內(nèi)節(jié)點(diǎn)能耗,該簇的簇頭和成員采用輪流工作機(jī)制,即當(dāng)前簇頭工作一段時(shí)間后,由本簇候選簇頭擔(dān)任,而當(dāng)前簇頭將本簇的密鑰和身份認(rèn)證關(guān)系表轉(zhuǎn)發(fā)給候選簇頭后自動(dòng)成為該簇普通節(jié)點(diǎn)。各簇頭分別同基站直接通信,當(dāng)基站發(fā)現(xiàn)某個(gè)簇頭受到攻擊后,由基站向全網(wǎng)廣播,所有節(jié)點(diǎn)采用網(wǎng)絡(luò)初始階段的構(gòu)造機(jī)制重新分簇組網(wǎng)。重新分簇的具體實(shí)現(xiàn)過程如下[8]。
首先基站發(fā)出重新分簇命令,然后基站根據(jù)網(wǎng)絡(luò)規(guī)模確定一定比例的“臨時(shí)簇頭”。“臨時(shí)簇頭”向自己周圍的節(jié)點(diǎn)廣播自己的ID和成簇請求消息,該消息在節(jié)點(diǎn)分布前就設(shè)置了主密鑰加密;要求網(wǎng)絡(luò)中接收到該消息的節(jié)點(diǎn)發(fā)送反饋消息,消息包括是否是簇首節(jié)點(diǎn)、或臨時(shí)簇首節(jié)點(diǎn)、或普通簇內(nèi)節(jié)點(diǎn)、或空閑節(jié)點(diǎn)、節(jié)點(diǎn)的ID和剩余能量。
周圍接收到成簇請求消息的節(jié)點(diǎn)首先進(jìn)行安全認(rèn)證,即檢查接收到的節(jié)點(diǎn)ID是否在黑名單中,如果不在則進(jìn)一步判斷前四位是否與自己的ID前四位一致,一致就認(rèn)為是“同類”,可以轉(zhuǎn)入下一步;否則為非同類,認(rèn)為是惡意節(jié)點(diǎn),不予響應(yīng)。通過安全檢查后,接收到成簇查詢消息的節(jié)點(diǎn)如果尚不是簇首節(jié)點(diǎn)或尚未被確定為某個(gè)簇內(nèi)的普通節(jié)點(diǎn),則向該臨時(shí)簇頭節(jié)點(diǎn)反饋?zhàn)约旱腎D信息和剩余能量信息;如果是簇頭節(jié)點(diǎn)或臨時(shí)簇頭節(jié)點(diǎn),則返回自己的ID信息和自己是簇頭或臨時(shí)簇頭的消息。對于已經(jīng)通過安全檢查的同類節(jié)點(diǎn),如果已存在簇頭節(jié)點(diǎn),臨時(shí)簇頭節(jié)點(diǎn)就申請加入該簇頭節(jié)點(diǎn)所在的簇,如果存在多個(gè)簇頭節(jié)點(diǎn),就選擇一個(gè)距離自己最近的簇頭節(jié)點(diǎn)反饋?zhàn)约旱腎D號和剩余能量;已經(jīng)是簇內(nèi)的普通節(jié)點(diǎn)不再響應(yīng),已經(jīng)是簇頭的節(jié)點(diǎn)則響應(yīng)并記錄下,用于簇問路由;如果同時(shí)接收到幾個(gè)簇頭的邀請,則選擇距離自己最近的一個(gè)簇頭加入其所在的簇;如果沒有簇頭節(jié)點(diǎn),則臨時(shí)簇頭節(jié)點(diǎn)根據(jù)收到的反饋信息中的相對剩余能量最大的節(jié)點(diǎn)作為簇頭節(jié)點(diǎn)。
簇頭節(jié)點(diǎn)向周圍的節(jié)點(diǎn)發(fā)送加密的成簇消息,消息包含自己的簇頭標(biāo)識和ID信息,邀請?jiān)谧约和ㄐ欧秶鷥?nèi)的節(jié)點(diǎn)成為自己的簇內(nèi)普通的節(jié)點(diǎn),該普通節(jié)點(diǎn)并向簇頭反饋?zhàn)约旱腎D號和剩余能量;如果接收到成簇消息的節(jié)點(diǎn)已經(jīng)是簇內(nèi)節(jié)點(diǎn)則不予響應(yīng),已經(jīng)是簇頭節(jié)點(diǎn)則響應(yīng)并記錄下該簇頭的ID信息,用于簇間路由的選擇條件。如果某個(gè)節(jié)點(diǎn)同時(shí)接收到多個(gè)簇頭的邀請,選擇距離自己最近的一個(gè)簇頭加入所在的簇。循環(huán)反復(fù),直到所有的非惡意節(jié)點(diǎn)都成為簇頭節(jié)點(diǎn)或簇內(nèi)的普通節(jié)點(diǎn)為止。分簇機(jī)制的實(shí)施流程如圖1所示。
圖1 分簇機(jī)制的實(shí)施流程
當(dāng)網(wǎng)絡(luò)中各節(jié)點(diǎn)重新分配到確定的簇中后,簇頭從新開始負(fù)責(zé)處理簇內(nèi)成員的通信數(shù)據(jù)和安全認(rèn)證。為了盡可能降低簇頭更換頻率,本文所提的分簇機(jī)制采用文獻(xiàn)[9]提出的簇頭連續(xù)工作機(jī)制,即當(dāng)簇頭存在較多剩余能量時(shí),可以連續(xù)擔(dān)當(dāng)本簇控制中心,如果當(dāng)前簇頭能力較低時(shí),將自己所承擔(dān)的任務(wù)轉(zhuǎn)交給候選簇頭,候選簇頭在接替當(dāng)前簇頭任務(wù)后,需向基站和成員確認(rèn)通信,一方面通知本簇成員簇頭更換,另一方面由基站確認(rèn)其合法身份。
4 仿真與驗(yàn)證
為評估所提出的成簇機(jī)制對節(jié)點(diǎn)安全性能的改進(jìn),假設(shè)100個(gè)節(jié)點(diǎn)隨機(jī)分布100m*100m的區(qū)域,設(shè)所有節(jié)點(diǎn)具有相同的初始能量,簇頭占總節(jié)點(diǎn)數(shù)目百分比為5%,各節(jié)點(diǎn)賦予初始ID號,分別記為1,2,…,100,基站序號為0,其位置坐標(biāo)為(50, 150)。在網(wǎng)絡(luò)運(yùn)行早期,各節(jié)點(diǎn)具有較多剩余能量時(shí),如果網(wǎng)絡(luò)沒有出現(xiàn)節(jié)點(diǎn)被攻擊,各簇頭連續(xù)擔(dān)任本地控制中心至少5個(gè)輪回,被攻擊節(jié)點(diǎn)的ID號采用隨機(jī)函數(shù)生成。本文設(shè)計(jì)的成簇機(jī)制與LEACH成簇算法對被攻擊節(jié)點(diǎn)的捕獲結(jié)果對比如圖2所示。
從圖2可以看出,我們所設(shè)計(jì)的成簇機(jī)制比采用LEACH成簇算法在捕獲被攻擊節(jié)點(diǎn)的性能明顯提高。由于LEACH算法每輪數(shù)據(jù)處理后需要重新實(shí)施節(jié)點(diǎn)分簇,而對鄰居節(jié)點(diǎn)沒有進(jìn)行安全識別,缺乏鏈路有效性認(rèn)證,導(dǎo)致可能當(dāng)前輪回入侵節(jié)點(diǎn)或被攻擊節(jié)點(diǎn)不能進(jìn)行處理;而我們所提成簇算法要求對簇頭、成員節(jié)點(diǎn)和鄰居節(jié)點(diǎn)間的信息都需要進(jìn)行安全認(rèn)證,因此能夠有效遏制入侵節(jié)點(diǎn)或被攻擊節(jié)點(diǎn)對網(wǎng)絡(luò)信息安全的影響。我們所設(shè)計(jì)的成簇機(jī)制和采用LEACH算法實(shí)現(xiàn)的節(jié)點(diǎn)安全認(rèn)證中廣播能耗與總能量之比的對比情況如圖3所示
圖3可以看出,我們所提的分簇機(jī)制較LEACH算法明顯降低了廣播能耗。由于在我們所提的分簇機(jī)制中,如果基站沒有收到任何簇頭發(fā)送網(wǎng)絡(luò)不安全信息,則不會(huì)通知全網(wǎng)節(jié)點(diǎn)進(jìn)行重新成簇,除非當(dāng)前簇頭連續(xù)擔(dān)任本地控制中心的次數(shù)已到,則候選簇頭替換當(dāng)前簇頭,以廣播的方式通知本簇成員和基站,因此簇頭和成員、基站中的廣播消息將顯著降低。當(dāng)然,如果基站發(fā)現(xiàn)某個(gè)簇頭出現(xiàn)不安全特征,則仍然需要全網(wǎng)廣播,采用組網(wǎng)初始階段的方法,重新組簇。由圖2、圖3可知,采用這種動(dòng)態(tài)、靜態(tài)成簇的機(jī)制,既能及時(shí)準(zhǔn)確發(fā)現(xiàn)入侵節(jié)點(diǎn)或被攻擊節(jié)點(diǎn),又能顯著降低網(wǎng)絡(luò)的廣播能耗,對于提高網(wǎng)絡(luò)安全和延長網(wǎng)絡(luò)壽命都將起到積極作用。
5 結(jié)語
本文針對面向傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)安全問題,采用基本的隨機(jī)密鑰預(yù)分配模,分配網(wǎng)絡(luò)初始化密鑰池、建立安全鏈路和動(dòng)態(tài)、靜態(tài)成簇機(jī)制有效地改善了節(jié)點(diǎn)安全問題,有利于提高節(jié)點(diǎn)和網(wǎng)絡(luò)安全性,并能延長網(wǎng)絡(luò)壽命。
參考文獻(xiàn)
[1] 孫利民,李建中,陳渝等.無線傳感器網(wǎng)絡(luò)[M].北京:清華大學(xué)出版社, 2005.2.
[2] Heinzelman W, Chandrakasan A, and Balakrishnan H. Energy-efficient communication protocol for wireless microsensor net- works. Proc. ofthe 33rd Annual Hawaii Int ’l Conf. on System Sciences. Maui: IEEE Computer Society, 2000: 3005-3014.
[3] Bouhafs F,.Merabti M. A semantic clustering muting protocol for wireless sensor networks[A]. IEEE Consumer Communications and Networking Conference[C]. 2006, 351-355.
[4]Deb B, Bhatangar S, Nath B. A topology discovery algorithm for sensor networks with applications to network management [R]. DCS Technical Report DCS-TR-441, Rutgers University, 2001.
[5] Santi P, Simon J. Silence is golden with high probability: maintaining a connected backbone in wireless sensor networks [C]. In Proceeding of 1st European Workshop on Wireless Sensor Networks (EWSN 2004), Jan 2004: 106-121.
[6] Younis O, Franmy S. Distributed clustering in ad-hoc sensor networks: a hybrid, energy-efficient approach [C]. In Proceeding of the IEEE Conference on Computer Communications (INFOCOM), March 2004: 660-670.
[7] L. Eschenauer, V.D. Gligor. A key-Management Scheme for Distributed Sensor Networks. In: Proc of the 9th ACM Conference on Computer and Communications Security. Washington: ACM Press, 2002.41-47.
[8]蔡東強(qiáng).無線傳感器網(wǎng)絡(luò)安全密鑰成簇算法的設(shè)計(jì)及研究. http://www.jc-ic.cn/show-1477058-1.html
[9] Xiang Min, Shi Wei-ren, Jiang Chang-jiang, et.al. Energy-efficient clustering algorithm for maximizing lifetime of wireless sensor networks (In Press). AEU-International Journal of Electronic & Communication. doi:10.1016/j.aeue.2009.01.004.
本站論文資源均為來自網(wǎng)絡(luò)轉(zhuǎn)載,免費(fèi)提供給廣大作者參考,不進(jìn)行任何贏利,如有版權(quán)問題,請聯(lián)系管理員刪除! 快速論文發(fā)表網(wǎng)(www.455685.com)本中心和國內(nèi)數(shù)百家期刊雜志社有良好的合作關(guān)系,可以幫客戶代發(fā)論文投稿.
投稿郵箱:ksfbw@126.com
客服Q Q:
82702382
聯(lián)系電話:15295038833
本站論文資源均為來自網(wǎng)絡(luò)轉(zhuǎn)載,免費(fèi)提供給廣大作者參考,不進(jìn)行任何贏利,如有版權(quán)問題,請聯(lián)系管理員刪除!
下一篇:多種教學(xué)形式的歷史課