疏國(guó)會(huì), 金鑫, 陳偉
1.安慶職業(yè)技術(shù)學(xué)院圖文信息中心,安徽 安慶 246008;2.安慶職業(yè)技術(shù)學(xué)院實(shí)驗(yàn)實(shí)訓(xùn)中心,安徽 安慶 246008
無(wú)線傳感器網(wǎng)絡(luò)是無(wú)線自組織網(wǎng)絡(luò)的形式之一,其無(wú)固定基礎(chǔ)設(shè)施、無(wú)中心、終端路由合一、自動(dòng)多跳、移動(dòng)分散部署的典型特征,在軍事偵察、生態(tài)環(huán)境感知、搶險(xiǎn)救援、傳感醫(yī)療、智慧交通及智能管家等領(lǐng)域得到廣泛應(yīng)用[1].然而,由其自身特征所引發(fā)的信息安全也對(duì)其有效應(yīng)用帶來(lái)嚴(yán)重挑戰(zhàn).
以有無(wú)固定基礎(chǔ)設(shè)施為分類標(biāo)準(zhǔn),無(wú)線網(wǎng)絡(luò)分為蜂窩式網(wǎng)絡(luò)和無(wú)線自組織網(wǎng)絡(luò).蜂窩式網(wǎng)絡(luò)建有固定基礎(chǔ)設(shè)施,終端節(jié)點(diǎn)可以移動(dòng),它通過(guò)無(wú)線鏈路接入到基礎(chǔ)設(shè)施,基礎(chǔ)設(shè)施中的節(jié)點(diǎn)在源點(diǎn)和目的地之間傳送數(shù)據(jù),終端節(jié)點(diǎn)不從其他節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包,且節(jié)點(diǎn)在基礎(chǔ)設(shè)施中是固定的.在無(wú)線自組織網(wǎng)絡(luò)中,沒有固定的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,數(shù)據(jù)包通過(guò)路由算法自主實(shí)現(xiàn)多次跳轉(zhuǎn)到達(dá)目的地,傳感器節(jié)點(diǎn)(Sensor Node,以下簡(jiǎn)稱為節(jié)點(diǎn))的作用既可以是主機(jī),也可以是路由器,能通過(guò)其他節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包,因?yàn)楣?jié)點(diǎn)可能會(huì)移動(dòng),其不固定性就可能導(dǎo)致傳輸路由的不確定性,從而使得自組織網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)具有可變性[2].
在無(wú)線自組織網(wǎng)絡(luò)中,節(jié)點(diǎn)可以自由移動(dòng),并不局限在某一固定的地理范圍,它能根據(jù)網(wǎng)絡(luò)傳輸?shù)男枰?,自主?shí)現(xiàn)主機(jī)和路由器兩種角色的轉(zhuǎn)換,所以無(wú)線自組織網(wǎng)絡(luò)及其節(jié)點(diǎn)具有自形成、自配置和自愈算法的明顯特征[3].這些特征,使得無(wú)線自組織網(wǎng)絡(luò)在軍事通信中得到廣泛應(yīng)用[4].此外,它還在臨時(shí)網(wǎng)絡(luò)緊急部署、健康狀況監(jiān)測(cè)、環(huán)境控制等智能自治網(wǎng)領(lǐng)域也具有明顯優(yōu)勢(shì).
無(wú)線傳感器網(wǎng)絡(luò)是一個(gè)部署在特定被觀察事物內(nèi)或接近某事物的無(wú)線自組織網(wǎng)絡(luò),具有無(wú)線自組織網(wǎng)絡(luò)的所有特征.傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的位置無(wú)需預(yù)先設(shè)計(jì)和確定,可以在預(yù)定目標(biāo)內(nèi)或其邊緣進(jìn)行隨機(jī)部署,它的網(wǎng)絡(luò)協(xié)議和算法具有自組織能力[5].
無(wú)線傳感器網(wǎng)絡(luò)的每個(gè)節(jié)點(diǎn)都配有一個(gè)板載處理器(On-board Processor),節(jié)點(diǎn)利用其處理能力進(jìn)行本地簡(jiǎn)單計(jì)算和節(jié)點(diǎn)間的協(xié)作.傳感器節(jié)點(diǎn)可以感知現(xiàn)場(chǎng)環(huán)境,進(jìn)行網(wǎng)絡(luò)組建,并最終將數(shù)據(jù)傳送出來(lái),其間若部署有執(zhí)行器節(jié)點(diǎn)(Actuator Node)的話,可以控制執(zhí)行器節(jié)點(diǎn)來(lái)執(zhí)行某設(shè)備的開關(guān)指令,則威力更為巨大.其分布結(jié)構(gòu)如圖1所示.
圖1 無(wú)線傳感器網(wǎng)絡(luò)和執(zhí)行器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
Fig.1 Topological Structure of Wireless Sensor Network and Actuator Network
無(wú)線傳感器網(wǎng)絡(luò)和執(zhí)行器網(wǎng)絡(luò)可以通過(guò)撒播的方式在指定事件范圍內(nèi)或其外圍邊緣進(jìn)行隨機(jī)部署,在復(fù)雜系統(tǒng)的安全、監(jiān)測(cè)、控制和驅(qū)動(dòng)以及室內(nèi)外環(huán)境的細(xì)粒度監(jiān)控等方面具有廣闊的潛在應(yīng)用.
在軍事應(yīng)用方面,無(wú)線傳感器網(wǎng)絡(luò)是軍事指揮、控制、通信、計(jì)算機(jī)、情報(bào)、監(jiān)測(cè)、偵察和目標(biāo)捕獲(Command,Control,Communications,Computers,Intelligence,Surveillance,Reconnaissance and Targeting,C4ISRT)系統(tǒng)的主要部分[6],常用于盟軍追蹤、戰(zhàn)場(chǎng)監(jiān)測(cè)、偵查、目標(biāo)捕獲、戰(zhàn)斗損傷評(píng)估和化學(xué)、生物、放射和核(Chemical,Biological,Radiological and Nuclear,CBRN)檢測(cè).
在環(huán)境應(yīng)用方面,可以使用無(wú)線傳感器網(wǎng)絡(luò)進(jìn)行棲息地監(jiān)測(cè)跟蹤物種的移動(dòng)、農(nóng)牧業(yè)生產(chǎn)環(huán)境感知控制、大規(guī)模土地監(jiān)測(cè)和生化檢測(cè)等.
在商業(yè)應(yīng)用方面,可以在庫(kù)存管理、生產(chǎn)質(zhì)量監(jiān)測(cè)、身體健康監(jiān)控、材料(部件)疲勞監(jiān)測(cè)、智能樓宇環(huán)境控制等領(lǐng)域發(fā)揮作用.在醫(yī)療領(lǐng)域,可以將無(wú)線傳感器植入人體,利用其通信能力,完成人體指標(biāo)持續(xù)檢測(cè)、人工免疫系統(tǒng)建立以及癱瘓肌肉持續(xù)刺激等多種目的,其相關(guān)應(yīng)用和安全體系研究正成為熱點(diǎn).
在無(wú)線傳感器網(wǎng)絡(luò)廣泛應(yīng)用的同時(shí),干擾其有效應(yīng)用的安全事件也給人們帶來(lái)巨大挑戰(zhàn):無(wú)線媒介的載荷能力和差錯(cuò)控制、傳輸信號(hào)的碰撞和干擾、節(jié)點(diǎn)故障的拓?fù)渚S護(hù)、節(jié)點(diǎn)定位和時(shí)鐘同步、生產(chǎn)成本、功耗、可擴(kuò)展性,特別是在防御各種自然或人為攻擊所帶來(lái)的信息安全事件上,必須能做到快速檢測(cè)和界定,以避免由于誤判可能帶來(lái)的嚴(yán)重后果[7].
安全攻擊是破壞他人擁有信息的安全性嘗試,技術(shù)的有效應(yīng)用必須能夠通過(guò)安全服務(wù)來(lái)防御攻擊,以保證信息安全.安全服務(wù)可分為通信安全和計(jì)算機(jī)安全兩大類(圖2).通信安全服務(wù)能防御經(jīng)由通信鏈路或無(wú)意發(fā)射的被動(dòng)或主動(dòng)攻擊,以確保通信業(yè)務(wù)的持續(xù)質(zhì)量,確保秘密數(shù)據(jù)或信息不被未授權(quán)節(jié)點(diǎn)截獲.計(jì)算機(jī)安全服務(wù)用來(lái)保證計(jì)算機(jī)軟硬件安全,探測(cè)節(jié)點(diǎn)或主機(jī)的安全威脅,能自動(dòng)從攻擊中恢復(fù)特定節(jié)點(diǎn)或主機(jī)[8].
按照安全攻擊的方式來(lái)劃分,安全攻擊可分為被動(dòng)攻擊方式和主動(dòng)攻擊方式[9].被動(dòng)攻擊方式是以獲取機(jī)密數(shù)據(jù)為目的,敵方并沒有進(jìn)行主動(dòng)干擾正常通信的行為;主動(dòng)攻擊方式是敵方實(shí)施了惡意破壞的行為,影響數(shù)據(jù)的機(jī)密性和完整性,以未經(jīng)授權(quán)訪問或干擾成功通信為目標(biāo)[10].在被動(dòng)攻擊中,攻擊者進(jìn)行偽裝或隱藏,實(shí)施線路竊聽來(lái)收集數(shù)據(jù),通過(guò)流量分析來(lái)發(fā)現(xiàn)自組織網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和關(guān)鍵節(jié)點(diǎn).被動(dòng)攻擊行為如圖3所示.
圖2 無(wú)線傳感器網(wǎng)絡(luò)信息安全因素
Fig.2 Factors of wireless sensor network information security
圖3 無(wú)線傳感器網(wǎng)絡(luò)被動(dòng)攻擊行為
Fig.3 Presentations of wireless sensor network when it is attacked
在主動(dòng)攻擊中,敵方的行為直接影響到受攻擊網(wǎng)絡(luò)的運(yùn)轉(zhuǎn),可能導(dǎo)致網(wǎng)絡(luò)服務(wù)下降或中斷.與被動(dòng)攻擊不同的是,主動(dòng)攻擊的目的通常能通過(guò)技術(shù)手段加以檢測(cè).主動(dòng)攻擊行為如圖4所示.
圖4 無(wú)線傳感器網(wǎng)絡(luò)主動(dòng)攻擊行為
Fig.4 Presentations of wireless sensor network when it attack actively
無(wú)線傳感器網(wǎng)絡(luò)是分布有大量無(wú)線傳感器節(jié)點(diǎn)的自組織網(wǎng)絡(luò),其目的是為后方管理控制人員提供盡可能準(zhǔn)確的現(xiàn)場(chǎng)狀態(tài).由于敵方大量安全攻擊事件的存在,系統(tǒng)必須具有快速檢測(cè)判斷出安全事件的能力.實(shí)際上,安全事件一旦發(fā)生,受影響的往往不是單個(gè)的節(jié)點(diǎn),而是會(huì)影響到一片區(qū)域或特定空間,該區(qū)域或空間內(nèi)的節(jié)點(diǎn)均受事件影響,能檢測(cè)出相同的事件[11].因此,要判斷一個(gè)安全事件的發(fā)生,需要依靠多個(gè)節(jié)點(diǎn)的共同協(xié)作來(lái)完成[12].例如:一次化學(xué)攻擊可以污染大片區(qū)域,使得該區(qū)域內(nèi)的節(jié)點(diǎn)數(shù)據(jù)呈現(xiàn)出不同于未污染區(qū)域的明顯特征;一次輻射攻擊可以使以攻擊點(diǎn)為中心的特定半徑內(nèi)的節(jié)點(diǎn)工作異常.無(wú)線傳感器網(wǎng)絡(luò)在工作時(shí)必須能夠清晰地識(shí)別所受影響的區(qū)域或空間,確定該區(qū)域或空間的邊界,這就是無(wú)線傳感器網(wǎng)絡(luò)安全事件的邊界檢測(cè)[13].
基于區(qū)域的概念,我們用二維歐幾里得平面R2來(lái)表示.如圖5所示.
圖5 無(wú)線傳感器網(wǎng)絡(luò)平面分布
Fig.5 Horizontal distribution of wireless sensor network
假設(shè):在平面R2里,n個(gè)節(jié)點(diǎn)分布較為均勻.
定義:
(1)E表示的事件,是R2的子集;
(2)當(dāng)以x為中心的任意面均包含了E內(nèi)和E外的點(diǎn),且x∈R2時(shí),稱x在E的邊界里.
根據(jù)以上分析可知,一個(gè)感受到安全事件的傳感器的測(cè)量值特征應(yīng)不是孤立的,與其附近的事件具有相關(guān)性.反過(guò)來(lái)說(shuō),這些事件也能被邊界里的其他節(jié)點(diǎn)檢測(cè)出來(lái)[14].但由于應(yīng)用場(chǎng)景復(fù)雜,不排除個(gè)別傳感器因其自身原因,導(dǎo)致讀數(shù)異常,這些節(jié)點(diǎn)我們稱之為錯(cuò)誤節(jié)點(diǎn),如果不加以排除,勢(shì)必會(huì)影響到安全邊界的準(zhǔn)確檢測(cè),從而影響決策.因此,當(dāng)一個(gè)事件發(fā)生后,要能準(zhǔn)確地檢測(cè)出事件發(fā)生的邊界,應(yīng)分為兩個(gè)步驟:第一步是進(jìn)行錯(cuò)誤節(jié)點(diǎn)檢測(cè)并將其剔除;第二步是事件邊界節(jié)點(diǎn)檢測(cè),求得邊界集[15].
設(shè)
(1)Si是無(wú)線傳感器網(wǎng)絡(luò)中的某一傳感器,xi為Si的讀數(shù);
(2)Nei(Si)表示傳感器Si附近鄰居的集合,假設(shè)鄰居的數(shù)量為k,其讀數(shù)分別用xi1,xi2,…,xik表示;medi為{xi1,xi2,…,xik}的中位數(shù);di為xi和{xi1,xi2,…,xik}的中位數(shù)的差值.
所以有di=xi-medi.
根據(jù)中位數(shù)的定義與算法,medi是過(guò)濾出極值的{xi1,xi2,…,xik}樣本中心的魯棒估計(jì)值.計(jì)算時(shí)先將{xi1,xi2,…,xik}按有序排列,取值計(jì)算及條件偽代碼如(1)式所示.
(1)
為方便計(jì)算和比較di的值,設(shè)平面R2內(nèi)傳感器的總個(gè)數(shù)為n,集合為S,記為S={S1,…,Si,…,Sn},如圖6所示,則有:
S?R2Nei(Si)?SS?Nei(S1)∪…∪Nei(Si)∪…∪Nei(Sn)
圖6中,分別計(jì)算出集合S中各傳感器{S1,…,Si,…,Sn}的差值,用集合D表示,記為D={d1,…,di,……,dn}.
檢測(cè)節(jié)點(diǎn)Si是否為錯(cuò)誤節(jié)點(diǎn),判斷依據(jù)是比較其差值di與集合S中其附近的n-1個(gè)傳感器的差值d是否過(guò)大.
圖6 無(wú)線傳感器網(wǎng)絡(luò)鄰居集
Fig.6 Neighbor set of wireless sensor network
根據(jù)統(tǒng)計(jì)學(xué)理論,應(yīng)求出集合D的均值μ和標(biāo)準(zhǔn)方差σ[7]
(2)
(3)
設(shè)節(jié)點(diǎn)Si的標(biāo)準(zhǔn)化差值為yi1,則有:
(4)
根據(jù)(2)式、(3)式、(4)式求出集合S中每個(gè)節(jié)點(diǎn)的標(biāo)準(zhǔn)化差值,記為集合Y,有Y={y11,…,yi1,…,yn1}.在無(wú)線傳感器實(shí)際應(yīng)用環(huán)境中,設(shè)門限值為θ1,可以認(rèn)為當(dāng)|yi1|≥θ1時(shí),認(rèn)為Si是錯(cuò)誤節(jié)點(diǎn),反之即為正常節(jié)點(diǎn).從上述判斷關(guān)系可以看出,θ1值是一個(gè)關(guān)鍵值,若設(shè)置過(guò)低,正常節(jié)點(diǎn)也可能被判斷為錯(cuò)誤節(jié)點(diǎn),反之若設(shè)置過(guò)高,有些錯(cuò)誤節(jié)點(diǎn)就有可能不被發(fā)現(xiàn),從而影響到安全事件邊界的判斷.在不同的應(yīng)用場(chǎng)景下,θ1值是不一樣的,建議開發(fā)者通過(guò)仿真或現(xiàn)場(chǎng)部署檢測(cè),加以訓(xùn)練來(lái)獲得θ1經(jīng)驗(yàn)值.
在上一節(jié)中,通過(guò)對(duì)集合S中各傳感器節(jié)點(diǎn)的檢測(cè),可以發(fā)現(xiàn)其中的錯(cuò)誤節(jié)點(diǎn),設(shè)錯(cuò)誤節(jié)點(diǎn)的集合為M1,那么正確節(jié)點(diǎn)的集合即為S-M1.在正確節(jié)點(diǎn)集合S-M1中,節(jié)點(diǎn)Si的鄰域就有可能不再是Nei(Si),應(yīng)是一個(gè)不大于Nei(Si)的集合.為方便描述,我們記S-M1中的節(jié)點(diǎn)為Sj,設(shè)其鄰域?yàn)镹ei(Sj),為求得事件的邊界,需要使用上節(jié)的方法計(jì)算Sj在新鄰域Nei(Sj)中的dj.
對(duì)于節(jié)點(diǎn)Sj而言,要判斷它是不是事件邊界節(jié)點(diǎn),可以以Sj為中心,將其鄰域Nei(Sj)分割為三個(gè)120°的扇區(qū),如圖4所示.假設(shè)Sj是安全事件的邊界節(jié)點(diǎn),則Sj能感受到事件的發(fā)生,且Sj的鄰域Nei(Sj)中落在扇區(qū)C中的節(jié)點(diǎn)也能檢測(cè)到事件發(fā)生,扇區(qū)A和扇區(qū)B的節(jié)點(diǎn)則不受安全事件的影響.這樣,節(jié)點(diǎn)Sj與扇區(qū)A內(nèi)節(jié)點(diǎn)的差值djA、與扇區(qū)B內(nèi)節(jié)點(diǎn)的差值djB會(huì)比與扇區(qū)C內(nèi)節(jié)點(diǎn)的差值djC大.符合此特性的,可以判斷節(jié)點(diǎn)Sj是事件邊界節(jié)點(diǎn),反之則不是.
根據(jù)以上分析,可以設(shè)計(jì)安全事件邊界節(jié)
圖7 鄰域分割與事件邊界
Fig.7 Neighborhood segmentation and event boundary
點(diǎn)的算法偽代碼如下
Si∈S;
M1=φ;
for (i=1;i<=n;i++);
if(Si為錯(cuò)誤節(jié)點(diǎn))//判斷方法詳見4.1
M1=M1+Si;
Sj∈S-M1;
θ2賦值;//θ2為根據(jù)應(yīng)用場(chǎng)景訓(xùn)練所得的經(jīng)驗(yàn)值
M2=?;
for(j=1;i<=k;j++)//k為非錯(cuò)誤節(jié)點(diǎn)數(shù)量
{
求得Sj的鄰域Nei(Sj);
將Nei(Sj)分割成三個(gè)120°的扇區(qū);
計(jì)算每個(gè)扇區(qū)的差值djA、djB和djC;
dj=max(djA,djB,djC);
求得均值μ、標(biāo)準(zhǔn)方差σ和yj;//計(jì)算方法詳見4.1
if (|yj|>=θ2)
M2=M2+Sj;
}
//M2即為邊界節(jié)點(diǎn)集合
在4.2算法中,求解結(jié)果M2即為安全事件邊界節(jié)點(diǎn)的集合.但在實(shí)際應(yīng)用中,在4.1中剔除的錯(cuò)誤節(jié)點(diǎn)有可能就是邊界節(jié)點(diǎn),由于它被事先排除,所以這些節(jié)點(diǎn)就不可能進(jìn)入M2,反而靠近它的界內(nèi)界外的非邊界節(jié)點(diǎn)有可能進(jìn)入M2,形成偏差.根據(jù)應(yīng)用場(chǎng)景的建設(shè)需求,如果需要進(jìn)一步提高分辨精度,可以提供如下思路:作為安全事件的邊界節(jié)點(diǎn),一定是一個(gè)閉環(huán)形態(tài),而不會(huì)是孤立點(diǎn),根據(jù)這個(gè)邏輯推斷,一個(gè)邊界節(jié)點(diǎn)的一定距離內(nèi)一定至少會(huì)有一個(gè)其他邊界節(jié)點(diǎn).也就是說(shuō),如果在4.2中被判定為邊界節(jié)點(diǎn)的節(jié)點(diǎn)在指定的距離內(nèi)有其他邊界節(jié)點(diǎn)存在,則該節(jié)點(diǎn)是真邊界節(jié)點(diǎn).在4.2算法的基礎(chǔ)上,可進(jìn)一步進(jìn)行清洗操作.
Sp∈M2;
Sq=M2;
θ3賦值;//θ3為根據(jù)應(yīng)用場(chǎng)景訓(xùn)練所得的經(jīng)驗(yàn)值
M3=?
for(p=1;p<=w;p++)//w為M2中的節(jié)點(diǎn)數(shù)量
{
for(diff=0,q=1;q<=w;q++)
{
計(jì)算dpq; //dpq為Sp和Sq兩節(jié)點(diǎn)間的距離
if(p<>q&& diff>dpq)
diff=dpq;
}
if(diff<=θ3)
M3=M3+Sp;
}
//M3即為校準(zhǔn)后的邊界節(jié)點(diǎn)集合
無(wú)線傳感器網(wǎng)絡(luò)所具有的散點(diǎn)式、自組織,且與場(chǎng)景結(jié)構(gòu)和地形弱關(guān)聯(lián)的特性,使其節(jié)點(diǎn)可以快速、大規(guī)模部署,在軍事通信、敵情偵察、抗災(zāi)救災(zāi)、臨時(shí)應(yīng)急組網(wǎng)等方面具有廣闊的應(yīng)用空間.但其彈性路由和無(wú)線媒介的功能和實(shí)現(xiàn)等優(yōu)點(diǎn)如果被敵方所利用或被突發(fā)事件破壞,所帶來(lái)的后果和損失也將是不可估量的.因此,在實(shí)際應(yīng)用中,如果無(wú)線傳感器網(wǎng)絡(luò)遭到攻擊或破壞等安全事件,應(yīng)能及時(shí)被發(fā)現(xiàn)和探測(cè),移除錯(cuò)誤節(jié)點(diǎn),避免在決策時(shí)受其干擾;準(zhǔn)確界定所發(fā)生安全事件的區(qū)域和邊界,評(píng)估所影響的深度和范圍,進(jìn)而推測(cè)敵方的活動(dòng)區(qū)域和攻擊手段,為我方有效利用網(wǎng)絡(luò)提供決策保障.未來(lái),無(wú)線傳感器網(wǎng)絡(luò)將在物聯(lián)網(wǎng)、大數(shù)據(jù)及人工智能技術(shù)的互促下得到更廣泛的應(yīng)用,其安全問題也將會(huì)同生共長(zhǎng),給我們帶來(lái)嚴(yán)峻挑戰(zhàn),在安全事件檢測(cè)的方法和手段上也必須進(jìn)一步改進(jìn)和優(yōu)化,數(shù)據(jù)傳輸和算法效率均有待研究和提高.