鄭棉生 張學(xué)鋒
(惠州學(xué)院數(shù)學(xué)系 廣東 516007)
近年隨著微機(jī)電系統(tǒng)、無線通信、嵌入式計(jì)算、傳感器、信息網(wǎng)絡(luò)與集成電路等技術(shù)的迅速發(fā)展,無線傳感器網(wǎng)絡(luò)(WSN)應(yīng)運(yùn)而生。這些傳感器具有低成本、低功耗、多功能等特點(diǎn),擁有無線通信、數(shù)據(jù)采集、信息處理、協(xié)同合作等功能。WSN應(yīng)用廣泛,適合軍事、環(huán)境監(jiān)測(cè)、交通運(yùn)輸?shù)淖詣?dòng)控制、醫(yī)療工業(yè)等眾多領(lǐng)域。因傳感器網(wǎng)絡(luò)一般配置在惡劣環(huán)境、無人區(qū)域或敵方陣地中,加之無線網(wǎng)絡(luò)固有的脆弱性,因而傳感器網(wǎng)絡(luò)安全引起了人們的極大關(guān)注。但WSN由于節(jié)點(diǎn)在通信能力、計(jì)算能力、存儲(chǔ)能力等方面固有的局限性,導(dǎo)致許多安全方案無法順利應(yīng)用。
簡單對(duì)象訪問協(xié)議(SOAP)應(yīng)用于無線傳感器網(wǎng)絡(luò)(WSN)能較好地解決WSN的信息加密和解密、信息驗(yàn)證問題,使得這兩問題的危害性大大減輕。下面就從無線傳感器網(wǎng)絡(luò)中信息的加密和解密、信息驗(yàn)證兩方面研究簡單對(duì)象訪問協(xié)議在無線傳感器網(wǎng)絡(luò)中的應(yīng)用。
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Network, WSN)是由部署在監(jiān)測(cè)區(qū)域中用于數(shù)據(jù)采集的微型傳感器節(jié)點(diǎn)構(gòu)成,每個(gè)節(jié)點(diǎn)的計(jì)算能力、通信距離和能量供應(yīng)相當(dāng)。節(jié)點(diǎn)采集的數(shù)據(jù)通過多跳通信的方式,借助網(wǎng)絡(luò)內(nèi)其他節(jié)點(diǎn)的轉(zhuǎn)發(fā),將數(shù)據(jù)傳回到匯聚節(jié)點(diǎn),再通過匯聚節(jié)點(diǎn)與其他網(wǎng)絡(luò)連接,形成的一個(gè)多跳的自組織的網(wǎng)絡(luò)系統(tǒng),實(shí)現(xiàn)遠(yuǎn)程訪問和網(wǎng)絡(luò)查詢、管理。無線傳感器網(wǎng)絡(luò)的目的是協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中被感知對(duì)象的信息,并發(fā)送給觀察者。傳感器、感知對(duì)象和觀察者構(gòu)成了無線傳感器網(wǎng)絡(luò)的三要素。
下面討論WSN信息安全問題。
WSN由大量相互合作、具有有限的能量資源、計(jì)算能力、存儲(chǔ)空間和無線通信范圍的傳感器節(jié)點(diǎn)組成。每個(gè)傳感器節(jié)點(diǎn)由數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)傳輸和電源4部分組成。WSN具有:節(jié)點(diǎn)限制、節(jié)點(diǎn)數(shù)量大、物理限制、節(jié)點(diǎn)易出故障的鮮明特點(diǎn),這些特點(diǎn)使WSN的安全面臨多方面的挑戰(zhàn)。
傳感器網(wǎng)絡(luò)的許多應(yīng)用在很大程度上取決于網(wǎng)絡(luò)的安全運(yùn)行,一旦傳感器網(wǎng)絡(luò)受到攻擊或破壞,將可能導(dǎo)致災(zāi)難性的后果。如何在節(jié)點(diǎn)計(jì)算速度、電源能量、通信能力和存儲(chǔ)空間非常有限的情況下,通過設(shè)計(jì)安全機(jī)制,提供機(jī)密性保護(hù),防止各種惡意攻擊,為傳感器網(wǎng)絡(luò)創(chuàng)造一個(gè)相對(duì)安全的工作環(huán)境,是關(guān)系到傳感器網(wǎng)絡(luò)能否真正走向?qū)嵱玫年P(guān)鍵問題。在此只討論信息的加密、解密及信息驗(yàn)證兩個(gè)問題。
在無線傳感器網(wǎng)絡(luò)設(shè)計(jì)安裝前,由于未知的物理拓?fù)浣Y(jié)構(gòu),傳統(tǒng)密鑰配置計(jì)劃在無線傳感器網(wǎng)絡(luò)是不合適的,安裝的密鑰在每個(gè)節(jié)點(diǎn)要么是單一任務(wù)密鑰,要么是一套分離的n-1密鑰,與另一個(gè)私下配對(duì)分享。實(shí)際上所有傳感器節(jié)點(diǎn)的捕獲都會(huì)危及整個(gè)網(wǎng)絡(luò)的安全,因在傳感器捕獲偵查上有選擇性的密鑰撤銷是不可能的,反之在每個(gè)傳感器節(jié)點(diǎn)成對(duì)的密鑰分配解決需存儲(chǔ)和裝載n-1個(gè)密鑰。當(dāng)使用超過10000個(gè)傳感器時(shí),因資源局限而變得不切實(shí)際。此外,因直接的點(diǎn)對(duì)點(diǎn)通信是僅在數(shù)量極少的鄰近節(jié)點(diǎn)間完成的,分享在所有兩個(gè)傳感器節(jié)點(diǎn)間的私用密鑰是不能再用的。而對(duì)物理篡改、Sybil攻擊這兩方面來說,信息的安全問題非常重要。
2.1.1 物理篡改
物理篡改主要是毀壞或替代節(jié)點(diǎn),榨取節(jié)點(diǎn)密鑰信息,獲得與高層自由通信的權(quán)利。
攻擊方可捕獲節(jié)點(diǎn),獲取加密密鑰等敏感信息,從而可不受限制地訪問上層的信息。針對(duì)無法避免的物理破壞,可采用的防御措施有:增加物理損害感知機(jī)制,節(jié)點(diǎn)在感知到被破壞后,可銷毀敏感數(shù)據(jù)、脫離網(wǎng)絡(luò)、修改安全處理程序等,從而保護(hù)無線傳感器網(wǎng)絡(luò)其他部分免受安全威脅;對(duì)敏感信息進(jìn)行加密存在傳感器網(wǎng)絡(luò)中,通信加密密鑰、認(rèn)證密鑰和各種安全啟動(dòng)密鑰需要嚴(yán)密的保護(hù),在實(shí)現(xiàn)時(shí)敏感信息盡量首先進(jìn)行加密處理。
2.1.2 Sybil攻擊
Sybil攻擊即在無線網(wǎng)絡(luò)中,單一節(jié)點(diǎn)具有多個(gè)身份標(biāo)識(shí),通過控制系統(tǒng)的大部分節(jié)點(diǎn)來削弱冗余備份的作用。
在網(wǎng)絡(luò)層WSN經(jīng)常受到Sybil攻擊。在Sybil攻擊中,一個(gè)節(jié)點(diǎn)以多個(gè)身份出現(xiàn)在網(wǎng)絡(luò)中的其它節(jié)點(diǎn)面前,使其更易于成為路由路徑中的節(jié)點(diǎn),然后與其他攻擊方法結(jié)合達(dá)到攻擊目的。Sybil攻擊能夠明顯地降低路由方案對(duì)于諸如分布式存儲(chǔ)、分散和多路徑路由、拓?fù)浣Y(jié)構(gòu)保持的容錯(cuò)能力。它對(duì)于基于位置信息的路由協(xié)議構(gòu)成很大的威脅。這類位置敏感的路由為了高效地利用地理地址標(biāo)識(shí)的包選路,通常要求節(jié)點(diǎn)與它們的鄰居交換坐標(biāo)信息。一個(gè)節(jié)點(diǎn)對(duì)于相鄰節(jié)點(diǎn)來說應(yīng)該只有唯一的一組合理坐標(biāo),但攻擊者可同時(shí)處在不同的坐標(biāo)上。
對(duì)抗Sybil攻擊,通常采用基于密鑰分配、加密和身份認(rèn)證等方法。
由于無線傳感器網(wǎng)絡(luò)配置環(huán)境一般較惡劣,加之本身固有的脆弱性,因而極易受到各種各樣的攻擊。攻擊者通過哄騙、修改或重放路由信息,通過修改源和目的地址,選擇一條錯(cuò)誤路徑發(fā)送出去,從而導(dǎo)致網(wǎng)絡(luò)路由的混亂。若攻擊方控制的惡意節(jié)點(diǎn)將收到的數(shù)據(jù)包全部轉(zhuǎn)向網(wǎng)絡(luò)中的某個(gè)固定節(jié)點(diǎn),該節(jié)點(diǎn)可能會(huì)通信阻塞和能量耗盡而失效。
這種攻擊方式與網(wǎng)絡(luò)層協(xié)議相關(guān)。為保證信息的安全傳遞,需有一種機(jī)制來驗(yàn)證通信各方身份的合法性。對(duì)于層次式路由協(xié)議,可用輸出過濾的方法,即對(duì)源路由進(jìn)行認(rèn)證,確認(rèn)一個(gè)數(shù)據(jù)包是否是從它的合法子節(jié)點(diǎn)發(fā)送過來的,直接丟棄不能認(rèn)證的數(shù)據(jù)包。
SOAP能很好地解決上面提出的了WSN信息安全方面的問題。
簡單對(duì)象訪問協(xié)議(SOAP)是一種輕量的、簡單的、基于XML的協(xié)議,SOAP可與現(xiàn)存的許多因特網(wǎng)協(xié)議和格式結(jié)合使用,它還支持從消息系統(tǒng)到遠(yuǎn)程過程調(diào)用(RPC)等大量的應(yīng)用程序。而SOAP的應(yīng)用包括加密和解密數(shù)據(jù),消息的簽名與認(rèn)證。
3.2.1 SOAP信息的加密和解密在 WSN中的應(yīng)用
一個(gè)無線傳感器網(wǎng)絡(luò)不應(yīng)當(dāng)向其他網(wǎng)絡(luò)泄漏任何敏感信息。在許多應(yīng)用中,節(jié)點(diǎn)間傳遞的是高度敏感的數(shù)據(jù)。這些數(shù)據(jù)一旦被攻擊者獲取,整個(gè)網(wǎng)絡(luò)的安全將無法得到保障,因而通過密鑰管理協(xié)議建立的密鑰及其它傳感器網(wǎng)絡(luò)中的機(jī)密信息(如傳感器身份標(biāo)識(shí)等),必須保證僅對(duì)授權(quán)用戶公開。解決數(shù)據(jù)機(jī)密性的最常用方法是使用通信雙方共享的會(huì)話密鑰來加密待傳遞的消息,該密鑰不為第三方所知。
在SOAP信息加密中,Web服務(wù)安全采用了現(xiàn)有標(biāo)準(zhǔn),將其并入了XML加密。加密數(shù)據(jù)時(shí),可選擇使用對(duì)稱加密或非對(duì)稱加密。對(duì)稱加密在密鑰分發(fā)上存在一些問題。在某個(gè)時(shí)間點(diǎn)上,密鑰需要發(fā)送給接收方。X.509證書允許使用非對(duì)稱加密。接收數(shù)據(jù)的端點(diǎn)可公布它的證書,并允許任何人使用公鑰來加密信息。只有接收方知道私鑰。故只有接收方可將獲得的經(jīng)過加密的數(shù)據(jù)重新轉(zhuǎn)換為可讀內(nèi)容。若使用的是Triple-DES,則發(fā)送方和接收方都須以某種安全的方式交換密鑰。對(duì)稱密鑰可隱藏在Kerberos票據(jù)內(nèi),或被取出交換。這應(yīng)用于WSN上可解決物理篡改、Sybil攻擊問題。
3.2.2 SOAP信息的簽名與驗(yàn)證在 WSN中的應(yīng)用
為保證信息的安全傳遞,需有一種機(jī)制來驗(yàn)證通信各方身份的合法性。在傳統(tǒng)有線網(wǎng)絡(luò)中,公鑰基礎(chǔ)設(shè)施有效解決了此問題,它通過對(duì)數(shù)字證書的使用和管理,來提供全面的公鑰加密和數(shù)字簽名服務(wù)。通過公鑰基礎(chǔ)設(shè)施,可將公鑰與合法擁有者的身份綁定,從而建立并維護(hù)一個(gè)可信的網(wǎng)絡(luò)環(huán)境。非對(duì)稱加密體制具有很高的計(jì)算、通信和存儲(chǔ)開銷,這決定了在資源受限的傳感器上使用數(shù)字簽名和公鑰證書機(jī)制不可行,須建立一套綜合考慮安全性、效率和性能并進(jìn)行合理折衷的傳感器網(wǎng)絡(luò)身份認(rèn)證方案。
而SOAP信息簽名后的消息幾乎無法被篡改,但消息簽名不能禁止外部各方查看消息內(nèi)容。使用簽名,SOAP消息的接收方可知已簽名的元素在路由中是否發(fā)生改變。只要可能就應(yīng)使用XML簽名對(duì)消息進(jìn)行簽名。XML簽名是包含在被簽名的信息里,在實(shí)際的簽名值被插入到節(jié)點(diǎn)時(shí)可能發(fā)生變化。然后通過一種轉(zhuǎn)換把它分離出來,從而解決問題。通過加密XML消息的內(nèi)容來對(duì)它進(jìn)行保護(hù),從而保證只有授權(quán)節(jié)點(diǎn)才能讀取該消息。這應(yīng)用于WSN上可解決信息驗(yàn)證問題。
解決安全問題是無線傳感器網(wǎng)絡(luò)付諸實(shí)用的基本前提。簡單對(duì)象訪問協(xié)議(SOAP)應(yīng)用于無線傳感器網(wǎng)絡(luò)(WSN)能有效解決WSN的信息加密和解密問題及信息驗(yàn)證問題。
[1]蔣勛,鄒堅(jiān)敏.無線傳感網(wǎng)絡(luò)技術(shù)與展望[J].無錫南洋學(xué)院學(xué)報(bào),2007 (02):30-31.
[2]周必水,倪慧麗.簡單對(duì)象訪問協(xié)議SOAP的研究與分析[J].微電子學(xué)與計(jì)算機(jī),2002(5):25-27.
[3]王勇超,魏薇,魯東明.無線傳感網(wǎng)絡(luò)安全綜述[J].計(jì)算機(jī)時(shí)代,2008 (12):15-19.
[4]任豐原,黃海寧,林闖.無線傳感器網(wǎng)絡(luò)[J].軟件學(xué)報(bào),2003,14(07):1282-1291.
[5]王楊,王朝斌,林濤,王汝傳.SOAP消息傳遞機(jī)制在計(jì)算網(wǎng)格中的安全性[J] .計(jì)算機(jī)工程,2007,33(04):154-156.