謝 旭,施學(xué)鴻,楊 柳?,馬世龍,黃桂華,楊博文
(1.國(guó)網(wǎng)重慶市電力公司江津區(qū)供電分公司,重慶 400000;2.重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065)
智能電網(wǎng)(Smart Grid)結(jié)合了先進(jìn)的信息、通信和計(jì)算技術(shù),以促進(jìn)發(fā)電、輸電和配電各個(gè)方面的彈性和智能管理[1]。為了確保可靠的電力供應(yīng),結(jié)合分布式發(fā)電和新的存儲(chǔ)解決方案,智能電網(wǎng)給予用戶更多的控制權(quán),公用事業(yè)部門正在推進(jìn)智能電表和電網(wǎng)的應(yīng)用和發(fā)展。智能電網(wǎng)是一種典型的泛在物聯(lián)網(wǎng)絡(luò),其安全問題受到廣泛關(guān)注,主要目標(biāo)是確保通信的可用性、完整性和保密性[2]。與普通的IT網(wǎng)絡(luò)不同,智能電網(wǎng)支持靈活和動(dòng)態(tài)的拓?fù)浣Y(jié)構(gòu),其關(guān)鍵組成部分包括高級(jí)計(jì)量基礎(chǔ)設(shè)施、監(jiān)督控制和數(shù)據(jù)采集單元、通信設(shè)施以及通信協(xié)議和標(biāo)準(zhǔn)。智能電網(wǎng)的安全問題包括設(shè)備、網(wǎng)絡(luò)、調(diào)度和管理等各個(gè)方面。
最近的研究揭示了將無(wú)線傳感網(wǎng)(Wireless Sensor Networks)納入智能電網(wǎng)的重要性。無(wú)線傳感網(wǎng)在發(fā)電、輸電和配電方面有著廣泛的應(yīng)用[3]。在消費(fèi)者方面的應(yīng)用,智能無(wú)線計(jì)量是一個(gè)重大突破,智能電網(wǎng)中的無(wú)線傳感網(wǎng)可以使智能無(wú)線電表與一些基于網(wǎng)絡(luò)的應(yīng)用相結(jié)合。像動(dòng)態(tài)定價(jià)這樣的關(guān)鍵決策可以在更快的時(shí)間間隔內(nèi)輕松完成,而且消除了人工支持,防止了電表被篡改。鑒于電力行業(yè)的特殊性和重要性,電力傳感網(wǎng)中的信息安全問題變得越來(lái)越重要。因此,高效、可靠的安全技術(shù)已成為電力傳感網(wǎng)的研究熱點(diǎn)[4]。
電力傳感網(wǎng)能夠?qū)ε潆娫O(shè)施進(jìn)行計(jì)量與監(jiān)控,并進(jìn)行實(shí)時(shí)數(shù)據(jù)傳輸。但在一些特殊的環(huán)境里,電力傳感網(wǎng)會(huì)因?yàn)闊o(wú)法及時(shí)維護(hù),導(dǎo)致節(jié)點(diǎn)之間的鏈接脆弱,從而會(huì)導(dǎo)致數(shù)據(jù)傳輸能效低等問題。電力傳感網(wǎng)除了可能會(huì)受到泛洪攻擊、黑洞攻擊等外部攻擊的威脅,還可能遭受來(lái)自內(nèi)部惡意或者妥協(xié)節(jié)點(diǎn)的攻擊,這會(huì)導(dǎo)致整個(gè)網(wǎng)絡(luò)失效。電力傳感網(wǎng)中如果出現(xiàn)了惡意節(jié)點(diǎn),則會(huì)導(dǎo)致采集的數(shù)據(jù)信息被泄露,會(huì)引起巨大的網(wǎng)絡(luò)安全事故。而當(dāng)惡意節(jié)點(diǎn)隱藏在網(wǎng)絡(luò)內(nèi),間歇性發(fā)動(dòng)內(nèi)部攻擊,破壞整個(gè)網(wǎng)絡(luò)的平穩(wěn)運(yùn)行,更甚者使得整個(gè)區(qū)域的網(wǎng)絡(luò)癱瘓。因此,如何有效地檢測(cè)并防御電力傳感網(wǎng)內(nèi)部的惡意節(jié)點(diǎn)就顯得尤為重要。傳統(tǒng)的身份認(rèn)證機(jī)制可以抵抗大多數(shù)外部攻擊,而來(lái)自內(nèi)部惡意節(jié)點(diǎn)的攻擊難以檢測(cè)。為了解決這一問題,可以在網(wǎng)絡(luò)節(jié)點(diǎn)之間建立起一種信任關(guān)系[5],從而有效地檢測(cè)惡意節(jié)點(diǎn)并將其從網(wǎng)絡(luò)中剔除。
文獻(xiàn)[6]提出了一種基于信任模型的多層不均勻分簇?zé)o線傳感網(wǎng)安全數(shù)據(jù)融合算法,通過該信任模型能夠準(zhǔn)確評(píng)估結(jié)點(diǎn)的可信性,但在網(wǎng)絡(luò)能耗上面卻需要進(jìn)一步改進(jìn)。文獻(xiàn)[7]提出了一種新的基于主觀邏輯的無(wú)人值守?zé)o線傳感器網(wǎng)絡(luò)信任機(jī)制,以應(yīng)對(duì)信任評(píng)估的主觀性和不確定性。文中定義了一組信任相似度函數(shù)來(lái)檢測(cè)異常信任值,能夠提高信任評(píng)價(jià)的準(zhǔn)確性,卻沒有詳細(xì)說明如何獲取準(zhǔn)確的信任證據(jù)。
文獻(xiàn)[8]提出了一種基于模糊信任評(píng)價(jià)和離群點(diǎn)檢測(cè)的安全聚類協(xié)議。文中的模糊信任評(píng)價(jià)部分是針對(duì)開放無(wú)線通信媒介中傳輸行為的不確定性,采用區(qū)間二型模糊控制器計(jì)算信任值。在網(wǎng)絡(luò)運(yùn)行過程中,節(jié)點(diǎn)利用其他節(jié)點(diǎn)將數(shù)據(jù)傳輸?shù)交?,采用行為?dòng)態(tài)監(jiān)測(cè)系統(tǒng)獲取轉(zhuǎn)發(fā)節(jié)點(diǎn)的傳輸行為數(shù)據(jù)。采用知識(shí)庫(kù)中的模糊集將節(jié)點(diǎn)的傳輸行為數(shù)據(jù)映射為對(duì)應(yīng)的二型模糊集合,根據(jù)模糊規(guī)則庫(kù)將二型模糊集映射到包含信任值的模糊集中,得到二型信任模糊集。將二型信任模糊集降型為一型信任模糊集。最后對(duì)一型信任模糊集進(jìn)行去模糊化處理,得到直接信任值。此方法有效地降低了由于通信鏈路的不穩(wěn)定性而造成的行為數(shù)據(jù)的不確定性。
文獻(xiàn)[9]提出了一種安全數(shù)據(jù)聚合協(xié)議,這種模式是由樹狀拓?fù)浣Y(jié)構(gòu)形式的邏輯組進(jìn)行的,每個(gè)組采用雙數(shù)倍數(shù)的離群算法來(lái)驗(yàn)證,然后,樹狀拓?fù)渚酆嫌擅總€(gè)節(jié)點(diǎn)執(zhí)行,在聚合過程中進(jìn)行信任評(píng)估。然而此聚合模型較少考慮數(shù)據(jù)路由,在動(dòng)態(tài)路由過程中,信任計(jì)算準(zhǔn)確性低。
文獻(xiàn)[10]提出了一種基于分布式共識(shí)的信任機(jī)制,該機(jī)制通過共享特定信息來(lái)建立節(jié)點(diǎn)的信譽(yù)以檢測(cè)惡意節(jié)點(diǎn),這項(xiàng)技術(shù)是通過認(rèn)知來(lái)衡量受信任節(jié)點(diǎn)的評(píng)價(jià)。基站從認(rèn)知矩陣中收集認(rèn)知并進(jìn)行信任評(píng)估以檢測(cè)惡意節(jié)點(diǎn)。然而該信任機(jī)制很難控制整個(gè)檢測(cè)過程和節(jié)點(diǎn)的測(cè)量來(lái)識(shí)別惡意節(jié)點(diǎn)。文獻(xiàn)[11]提出了一種基于時(shí)間因素的無(wú)線傳感網(wǎng)信任模型,該方法在直接信任度和間接信任度的計(jì)算中間引入了時(shí)間衰減因素,通過反饋機(jī)制來(lái)實(shí)時(shí)更新結(jié)點(diǎn)的信任度,使得整體的信任值具有時(shí)效性。但其在對(duì)交互時(shí)延要求較高的無(wú)線傳感網(wǎng)絡(luò)環(huán)境下才能夠發(fā)揮更好的作用。
文獻(xiàn)[12]針對(duì)電力傳感網(wǎng)中開關(guān)攻擊,提出了一種基于機(jī)器學(xué)習(xí)的信任模型。由于惡意節(jié)點(diǎn)能夠交替執(zhí)行惡意或正常行為。在發(fā)起惡意攻擊一段時(shí)間后,可以選擇正常行為,以增加其信任級(jí)別。重復(fù)這個(gè)過程,很難根據(jù)信任值的水平來(lái)檢測(cè)惡意節(jié)點(diǎn)。作者引入通信狀態(tài)、數(shù)據(jù)包異常、能量消耗異常三種信任證據(jù)。首先采用無(wú)監(jiān)督學(xué)習(xí)算法將初始數(shù)據(jù)集進(jìn)行標(biāo)記。然后使用該數(shù)據(jù)集訓(xùn)練支持向量機(jī)信任預(yù)測(cè)模型。然而該方法沒有很好地解決誤判情況。
隨機(jī)布置150 個(gè)傳感器節(jié)點(diǎn)在150 m×200 m 的矩形監(jiān)測(cè)區(qū)域內(nèi),且每個(gè)傳感器節(jié)點(diǎn)都具有相同的初始能量和通信能力。本文中采用的是多跳網(wǎng)絡(luò),每個(gè)節(jié)點(diǎn)在部署完成之后,采集所在區(qū)域的傳感數(shù)據(jù),并將其發(fā)送給距離基站更近的傳感器節(jié)點(diǎn)。中轉(zhuǎn)節(jié)點(diǎn)的選擇由采集節(jié)點(diǎn)和中轉(zhuǎn)節(jié)點(diǎn)之間的距離(dij)以及節(jié)點(diǎn)到基站之間的距離(diS,djS)確定。發(fā)送節(jié)點(diǎn)為i,中轉(zhuǎn)節(jié)點(diǎn)為j,基站為S。中轉(zhuǎn)節(jié)點(diǎn)選擇需要滿足:
在節(jié)點(diǎn)發(fā)送數(shù)據(jù)給中轉(zhuǎn)節(jié)點(diǎn)后,會(huì)監(jiān)聽中轉(zhuǎn)節(jié)點(diǎn)接下來(lái)的數(shù)據(jù)傳輸行為,并收集中轉(zhuǎn)節(jié)點(diǎn)的通信行為作為信任評(píng)估證據(jù)。當(dāng)產(chǎn)生孤立節(jié)點(diǎn)時(shí),如果孤立節(jié)點(diǎn)鄰域內(nèi)沒有合適的中轉(zhuǎn)節(jié)點(diǎn),則不經(jīng)過中轉(zhuǎn)節(jié)點(diǎn),孤立節(jié)點(diǎn)直接將采集的數(shù)據(jù)發(fā)送給基站。
由于電力傳感網(wǎng)是部署在開放的無(wú)線通信環(huán)境中,會(huì)因?yàn)榫嚯x的遠(yuǎn)近產(chǎn)生衰落并且會(huì)遭受周圍的電磁波干擾,導(dǎo)致信道質(zhì)量時(shí)好時(shí)壞。所以這里引入信道的兩種狀態(tài)。S0和S1分別表示信道好的狀態(tài)和信道壞的狀態(tài)。a0和a1分別表示變成好信道和壞信道的概率,且a0+a1=1。當(dāng)隨機(jī)數(shù)p>a0時(shí)信道變成好信道,而且當(dāng)隨機(jī)數(shù)p 傳感器節(jié)點(diǎn)在傳輸數(shù)據(jù)時(shí)的損耗可以是自由空間傳輸模型,也可以是多徑衰落模型,模型取決于發(fā)送機(jī)和接收機(jī)的距離。如果d小于距離閾值d0,則應(yīng)用第一個(gè)模型。否則,選擇第二個(gè)模型。距離閾值d0計(jì)算方式如式(2)所示,其中參數(shù)對(duì)應(yīng)為上述兩種傳輸損耗模型的放大特征常數(shù)。 在數(shù)據(jù)傳輸過程中,傳感器節(jié)點(diǎn)對(duì)于距離為d的k位數(shù)據(jù)包所消耗的能量為: 式中:Eelec是發(fā)送機(jī)或接收機(jī)電路消耗的能量。接收機(jī)能耗為: 式中:k為接收到的數(shù)據(jù)包長(zhǎng)度。 信任評(píng)估的第一步是選取信任因素,根據(jù)不同的網(wǎng)絡(luò)選取合適的信任因素是設(shè)計(jì)信任模型的基礎(chǔ)。電力傳感網(wǎng)中內(nèi)部攻擊的形式是不同的,導(dǎo)致惡意節(jié)點(diǎn)的行為證據(jù)也不一致,雖然根據(jù)更多的行為證據(jù)能夠計(jì)算更精確的信任值,但由于傳感器節(jié)點(diǎn)的資源有限并且計(jì)算能力局限,即信任因素的數(shù)量和傳感器節(jié)點(diǎn)自身資源存在制衡,過于復(fù)雜的信任模型不適用電力傳感網(wǎng),所以不能將太多的因素考慮進(jìn)去。所以選取如下兩個(gè)信任因素。 1.3.1 成功轉(zhuǎn)發(fā)率(SFR) 由于節(jié)點(diǎn)資源能力的限制,所以本文選擇的網(wǎng)絡(luò)是多跳網(wǎng)絡(luò),遠(yuǎn)離基站的節(jié)點(diǎn)需要借助其他距離基站更近的節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包,部分惡意節(jié)點(diǎn)會(huì)不配合其他節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā)服務(wù),導(dǎo)致數(shù)據(jù)丟失進(jìn)而基站接收不到數(shù)據(jù)包,還會(huì)影響終端對(duì)該發(fā)送節(jié)點(diǎn)產(chǎn)生誤判。因此,為了識(shí)別惡意節(jié)點(diǎn)對(duì)其他節(jié)點(diǎn)的不服務(wù)行為,定義成功轉(zhuǎn)發(fā)率SFRi,j(t)為周期時(shí)間t內(nèi)成功轉(zhuǎn)發(fā)次數(shù)所占總交互次數(shù)的比例: 式中:Si,j(t)為周期時(shí)間t內(nèi),節(jié)點(diǎn)j為節(jié)點(diǎn)i成功轉(zhuǎn)發(fā)數(shù)據(jù)包次數(shù);Ri,j(t)為周期時(shí)間t內(nèi),節(jié)點(diǎn)i給節(jié)點(diǎn)j發(fā)送數(shù)據(jù)包總次數(shù)。 1.3.2 實(shí)時(shí)轉(zhuǎn)發(fā)率(TFR) 當(dāng)節(jié)點(diǎn)i將數(shù)據(jù)包發(fā)送給j時(shí),節(jié)點(diǎn)i會(huì)在最大監(jiān)測(cè)時(shí)長(zhǎng)內(nèi)監(jiān)測(cè)節(jié)點(diǎn)j,以判斷節(jié)點(diǎn)j是否實(shí)時(shí)轉(zhuǎn)發(fā)數(shù)據(jù)包。當(dāng)節(jié)點(diǎn)j在規(guī)定時(shí)間內(nèi)轉(zhuǎn)發(fā)了數(shù)據(jù)包,節(jié)點(diǎn)i則判定節(jié)點(diǎn)j實(shí)時(shí)轉(zhuǎn)發(fā)了數(shù)據(jù)包;當(dāng)節(jié)點(diǎn)j超過規(guī)定時(shí)間但是在最大監(jiān)測(cè)時(shí)長(zhǎng)內(nèi)轉(zhuǎn)發(fā)了數(shù)據(jù)包,節(jié)點(diǎn)i判定節(jié)點(diǎn)j沒有實(shí)時(shí)轉(zhuǎn)發(fā)數(shù)據(jù)包;當(dāng)節(jié)點(diǎn)j在最大監(jiān)測(cè)時(shí)長(zhǎng)內(nèi)也沒有轉(zhuǎn)發(fā)數(shù)據(jù)包,節(jié)點(diǎn)i會(huì)進(jìn)行數(shù)據(jù)包二次重傳,此時(shí)節(jié)點(diǎn)j若轉(zhuǎn)發(fā)了數(shù)據(jù)包,則判定沒有實(shí)時(shí)轉(zhuǎn)發(fā)數(shù)據(jù)包,若仍然沒有轉(zhuǎn)發(fā)數(shù)據(jù)包,則判定沒有成功轉(zhuǎn)發(fā)數(shù)據(jù)包。惡意節(jié)點(diǎn)沒有實(shí)時(shí)轉(zhuǎn)發(fā)數(shù)據(jù)包,會(huì)導(dǎo)致發(fā)送節(jié)點(diǎn)監(jiān)測(cè)至最大時(shí)長(zhǎng)甚至二次重傳,嚴(yán)重浪費(fèi)資源匱乏的傳感器節(jié)點(diǎn)的能量,進(jìn)而會(huì)縮短網(wǎng)絡(luò)生存期,增加布網(wǎng)成本。因此,為了識(shí)別惡意節(jié)點(diǎn)未按時(shí)服務(wù)的行為,定義實(shí)時(shí)轉(zhuǎn)發(fā)率TFRi,j(t)為周期時(shí)間t內(nèi)實(shí)時(shí)轉(zhuǎn)發(fā)次數(shù)所占總交互次數(shù)的比例: 式中:RTi,j(t)為周期時(shí)間t內(nèi)節(jié)點(diǎn)j為節(jié)點(diǎn)i實(shí)時(shí)轉(zhuǎn)發(fā)數(shù)據(jù)包次數(shù);Ri,j(t)為周期時(shí)間t內(nèi),節(jié)點(diǎn)i給節(jié)點(diǎn)j發(fā)送數(shù)據(jù)包總次數(shù)。 信任評(píng)估的第二步則是根據(jù)信任因素來(lái)收集節(jié)點(diǎn)通信行為證據(jù),在整個(gè)電力傳感網(wǎng)部署完成之后,所有節(jié)點(diǎn)開始訓(xùn)練階段的工作。節(jié)點(diǎn)讀取本地消息,通過所有節(jié)點(diǎn)的位置信息和基站的位置信息,根據(jù)距離計(jì)算公式得到合適的中轉(zhuǎn)節(jié)點(diǎn)。節(jié)點(diǎn)將采集到的數(shù)據(jù)發(fā)送給中轉(zhuǎn)節(jié)點(diǎn),同時(shí)利用行為監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)中轉(zhuǎn)節(jié)點(diǎn)的兩種通信行為證據(jù)SFR 和TFR,并將這些信任證據(jù)存儲(chǔ)到內(nèi)存里。 第三步進(jìn)行訓(xùn)練階段。每個(gè)節(jié)點(diǎn)將存儲(chǔ)的兩種行為證據(jù)提取出來(lái)。將提取出來(lái)的行為證據(jù)通過k-Means 聚類預(yù)處理,以降低由于開放通信環(huán)境導(dǎo)致行為證據(jù)的不確定性對(duì)評(píng)估結(jié)果的影響。將三種聚類結(jié)果分別打上標(biāo)簽,分別為可信節(jié)點(diǎn)、不可信節(jié)點(diǎn)和惡意節(jié)點(diǎn)行為證據(jù)。此時(shí)再用帶有標(biāo)簽的數(shù)據(jù)訓(xùn)練決策樹,并將部分行為證據(jù)當(dāng)作測(cè)試集去測(cè)試決策樹是否收斂。訓(xùn)練好的決策樹計(jì)算量小且有很高的數(shù)據(jù)敏感性,能夠快速辨別出行為異常的惡意節(jié)點(diǎn)。 最后節(jié)點(diǎn)將候選中轉(zhuǎn)節(jié)點(diǎn)的實(shí)時(shí)行為證據(jù)數(shù)據(jù)作為訓(xùn)練后的決策系統(tǒng)的輸入,然后得到中轉(zhuǎn)節(jié)點(diǎn)的信任等級(jí),進(jìn)而節(jié)點(diǎn)可以根據(jù)信任等級(jí)判斷中轉(zhuǎn)節(jié)點(diǎn)是否可信。當(dāng)發(fā)現(xiàn)惡意節(jié)點(diǎn)時(shí),將惡意節(jié)點(diǎn)數(shù)據(jù)上報(bào)基站,基站根據(jù)不同節(jié)點(diǎn)上報(bào)的綜合信息決定是否從網(wǎng)絡(luò)中剔除惡意節(jié)點(diǎn)。本文所提出的信任決策算法具體流程如圖1 所示。 圖1 算法模型流程圖 為了訓(xùn)練信任決策模型,首先需要采集信任證據(jù)數(shù)據(jù),并且對(duì)這些數(shù)據(jù)進(jìn)行標(biāo)記。在整個(gè)網(wǎng)絡(luò)開始運(yùn)行后,節(jié)點(diǎn)按照中轉(zhuǎn)節(jié)點(diǎn)計(jì)算公式選取合格的中轉(zhuǎn)節(jié)點(diǎn),并將這些節(jié)點(diǎn)存入表中,每輪開始將從表中隨機(jī)選擇一個(gè)中轉(zhuǎn)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)傳輸,同時(shí)使用行為監(jiān)測(cè)系統(tǒng)監(jiān)測(cè)中轉(zhuǎn)節(jié)點(diǎn)的成功轉(zhuǎn)發(fā)率和實(shí)時(shí)轉(zhuǎn)發(fā)率。且設(shè)置一定比例的惡意節(jié)點(diǎn),惡意節(jié)點(diǎn)會(huì)按照概率進(jìn)行丟包和延時(shí)行為,分別為Pl和Pd,在前20 輪,將收集到的行為證據(jù)作為數(shù)據(jù)樣本進(jìn)行分類。本文采用k-Means 聚類算法,主要原因是與其他無(wú)監(jiān)督學(xué)習(xí)算法相比,k-Means 算法更簡(jiǎn)單快速,較為適合傳感網(wǎng)。隨機(jī)抽取了20 個(gè)節(jié)點(diǎn)的行為證據(jù)組成數(shù)據(jù)樣本集X={X1,X2,X3,…,Xk},其中每個(gè)樣本都具有2 個(gè)維度的屬性:SFR 和TFR。開始會(huì)初始化,隨機(jī)選擇3 個(gè)聚類中心{C1,C2,C3},分別代表可信節(jié)點(diǎn)、不可信節(jié)點(diǎn)和惡意節(jié)點(diǎn)對(duì)應(yīng)的信任證據(jù)。分別計(jì)算數(shù)據(jù)樣本中的X1~Xk到C1~C3歐氏距離dis(Xi,Cj),如下式所示: 式中:Xi表示第i個(gè)對(duì)象,1≤i≤400;Cj為不同類別的中心,且1≤j≤3;Xit為第i個(gè)樣本的第t維屬性,1≤t≤2;Cjt為第j個(gè)聚類中心的第t維屬性。 依次比較樣本集的Xi到設(shè)定好的聚類中心Cj的歐氏距離,根據(jù)距離最近原則將Xi打上所屬聚類的標(biāo)簽,將樣本集的所有樣本打上標(biāo)簽之后則會(huì)存在三個(gè)聚類。再更新第j個(gè)聚類的第t維屬性Cjt: 式中:Xit為第i個(gè)樣本的第t維屬性;|Sj|為第j個(gè)聚類的成員數(shù)量。 重復(fù)以上過程,需要重新計(jì)算Xi到新定義的聚類中心Cj的歐氏距離,同時(shí)再根據(jù)距離最近原則將Xi打上所屬類簇新的標(biāo)簽,同時(shí)去掉舊的標(biāo)簽。一直循環(huán)這樣的步驟,直至迭代到聚類中心的變化小于設(shè)定的閾值時(shí),結(jié)束算法的運(yùn)算。最終得到三個(gè)聚類,并且每個(gè)樣本Xi都帶上最后所屬類的標(biāo)簽。 本文在信任評(píng)價(jià)過程中采用分類算法對(duì)信任程度進(jìn)行分類,而不是直接計(jì)算信任值。因此選擇的是C4.5 算法,它采用了信息增益率進(jìn)行特征選擇,弱化了主觀性地偏向子類別多的特征選擇。 首先需要將標(biāo)記好的行為信任證據(jù)進(jìn)行模糊化,它們分別會(huì)根據(jù)轉(zhuǎn)發(fā)率高低分為三個(gè)模糊信任層次{Low、Medium、High}。由于信道的不確定性和惡意節(jié)點(diǎn)不同程度的惡意行為,模糊層次的生成由k-Means 的聚類結(jié)果決定。所以SFR 和TFR 的模糊層次每個(gè)等級(jí)界限不同,如表1 所示。再將模糊化的信任證據(jù)進(jìn)一步構(gòu)成決策樹用于信任等級(jí)分類,如圖2 所示。節(jié)點(diǎn)信任等級(jí)用{T1、T2、T3}表示。 表1 行為證據(jù)模糊劃分 圖2 信任證據(jù)模糊化與決策樹構(gòu)建 其中將模糊化的行為證據(jù)用于訓(xùn)練信任決策樹,需要以下幾個(gè)步驟: 1.5.1 計(jì)算類別信息熵 類別信息熵表示的是所有樣本中各種類別出現(xiàn)的不確定性之和。上文中訓(xùn)練集X中的數(shù)據(jù)類別數(shù)為m=3,每個(gè)類別在樣本中的比例為Pi,即類別信息熵為Info(X),如下式所示: 1.5.2 計(jì)算每個(gè)屬性信息熵 每個(gè)屬性的信息熵相當(dāng)于一種條件熵。他表示的是在某種模糊等級(jí)的條件下,各種類別出現(xiàn)的不確定性的總和。本文中的屬性為SFR 和TFR,即屬性信息熵Info(Xl)的表達(dá)式為: 1.5.3 計(jì)算信息增益 信息增益表示信息不確定減少的程度,如果一個(gè)屬性的信息增益越大,就表示用這個(gè)屬性進(jìn)行樣本劃分,可減少劃分后樣本的不確定性。選擇該屬性可以更快更好地完成分類目標(biāo)。信息增益(Gain)=類別信息熵-屬性信息熵。 1.5.4 計(jì)算屬性分裂信息度量 用分裂信息度量來(lái)考慮某種屬性進(jìn)行分裂時(shí)分支的數(shù)量信息和尺寸信息,并將這些信息稱為屬性的內(nèi)在信息。信息增益率=信息增益/內(nèi)在信息。會(huì)導(dǎo)致屬性的重要性隨著內(nèi)在信息量增大而減小。Qi為此屬性的每個(gè)模糊等級(jí)在數(shù)據(jù)集X中的占比。 1.5.5 計(jì)算信息增益率 信息增益率IGR 越高,越傾向選取此屬性作為分裂屬性。 因此選擇SFR 為分裂屬性,在分裂之后,在SFR 屬性為L(zhǎng)ow 的情況下,若其節(jié)點(diǎn)類別全部為惡意節(jié)點(diǎn),則將它定義為葉子節(jié)點(diǎn),選擇其他不全為一種等級(jí)類別的繼續(xù)分裂,重復(fù)將模糊化的行為證據(jù)訓(xùn)練成決策樹的過程,直至完成訓(xùn)練。 在訓(xùn)練完成后,得到一個(gè)完善的節(jié)點(diǎn)信任決策模型。隨著網(wǎng)絡(luò)的運(yùn)行,節(jié)點(diǎn)會(huì)繼續(xù)監(jiān)控中轉(zhuǎn)節(jié)點(diǎn),將實(shí)時(shí)獲取到的中轉(zhuǎn)節(jié)點(diǎn)行為數(shù)據(jù)作為決策模型的輸入,從而得到節(jié)點(diǎn)的信任級(jí)別。若是節(jié)點(diǎn)為惡意節(jié)點(diǎn),便將此節(jié)點(diǎn)從中轉(zhuǎn)節(jié)點(diǎn)列表里刪除且上報(bào)給基站;若是不可信節(jié)點(diǎn),將會(huì)減少與此節(jié)點(diǎn)的通信次數(shù);若是可信節(jié)點(diǎn),將會(huì)保持通信情況。且隨著網(wǎng)絡(luò)的持續(xù)運(yùn)行,此期間的所有中轉(zhuǎn)節(jié)點(diǎn)行為的證據(jù)都會(huì)被收集,在特定輪次重新訓(xùn)練決策樹,以適應(yīng)環(huán)境的變化和惡意節(jié)點(diǎn)攻擊頻次的改變。 為了分析和驗(yàn)證本文提出的信任決策算法,使用MATLAB 軟件對(duì)實(shí)驗(yàn)進(jìn)行仿真分析。節(jié)點(diǎn)初始能量為1 J;丟包和延遲轉(zhuǎn)發(fā)攻擊概率均為0.2;其他能量及數(shù)據(jù)包參數(shù)設(shè)置參考文獻(xiàn)[8]。 惡意節(jié)點(diǎn)檢測(cè)率結(jié)果如圖3 所示,從圖中可以看出,隨著惡意節(jié)點(diǎn)的比例增加,本算法的檢測(cè)率提高,因?yàn)閻阂夤?jié)點(diǎn)增多導(dǎo)致行為數(shù)據(jù)差異性更大,但是由于采用了初期分類訓(xùn)練的數(shù)據(jù)集去訓(xùn)練決策樹,使得決策樹能夠更好地解決由信道質(zhì)量和節(jié)點(diǎn)惡意行為隨機(jī)性導(dǎo)致的行為數(shù)據(jù)不確定性問題。而LCT 算法由于劃分標(biāo)準(zhǔn)云時(shí)對(duì)惡意節(jié)點(diǎn)容忍度過高,造成部分惡意節(jié)點(diǎn)誤判。TEUC 檢測(cè)率不高是由于前期決策樹的訓(xùn)練不足,只將惡意節(jié)點(diǎn)和非惡意節(jié)點(diǎn)產(chǎn)生行為數(shù)據(jù)用于訓(xùn)練決策樹,會(huì)導(dǎo)致過擬合。一些正常的節(jié)點(diǎn)被誤認(rèn)為是惡意節(jié)點(diǎn)。 圖3 惡意節(jié)點(diǎn)檢測(cè)率對(duì)比結(jié)果 網(wǎng)絡(luò)吞吐量結(jié)果如圖4 所示,從圖中可以看出,隨著惡意節(jié)點(diǎn)比例的增加,本文提出的算法的吞吐量逐漸下降。這是由于該算法對(duì)惡意節(jié)點(diǎn)的檢測(cè)率非常高,大量的惡意節(jié)點(diǎn)被發(fā)現(xiàn)從而被網(wǎng)絡(luò)移除,剩下的正常節(jié)點(diǎn)繼續(xù)充當(dāng)中轉(zhuǎn)節(jié)點(diǎn),導(dǎo)致網(wǎng)絡(luò)壽命和吞吐量下降。而TEUC 由于過擬合的原因,會(huì)將很多正常節(jié)點(diǎn)當(dāng)成是惡意節(jié)點(diǎn)。因此,一部分正常節(jié)點(diǎn)不再被充當(dāng)中轉(zhuǎn)節(jié)點(diǎn),從而使網(wǎng)絡(luò)壽命縮短,導(dǎo)致網(wǎng)絡(luò)吞吐量下降。 圖4 網(wǎng)絡(luò)吞吐量對(duì)比結(jié)果 本文首先提出了一種基于信任的電力傳感網(wǎng)安全機(jī)制,包括傳輸監(jiān)控、行為數(shù)據(jù)聚類和信任決策。這種安全機(jī)制易于實(shí)現(xiàn),而且是完全分布式的。它可以解決開放無(wú)線媒體中由于干擾而產(chǎn)生的傳輸不確定性問題。該決策模型能夠自動(dòng)更新,以適應(yīng)動(dòng)態(tài)環(huán)境和惡意節(jié)點(diǎn)的隨機(jī)攻擊。仿真結(jié)果表明,該方法能有效提高網(wǎng)絡(luò)安全性能。未來(lái)的工作重點(diǎn)將放在計(jì)算基于推薦的綜合信任值,以緩解開放無(wú)線媒介中傳輸?shù)牟淮_定性。此外,為了加快惡意節(jié)點(diǎn)檢測(cè)過程的收斂速度,將進(jìn)一步研究有效的輕量級(jí)數(shù)據(jù)準(zhǔn)備機(jī)制來(lái)處理原始信任證據(jù)。1.3 信任模型
1.4 信任證據(jù)的生成和分類
1.5 信任決策模型訓(xùn)練及信任決策
2 實(shí)驗(yàn)分析
2.1 惡意節(jié)點(diǎn)檢測(cè)率結(jié)果
2.2 吞吐量實(shí)驗(yàn)結(jié)果
3 結(jié)束語(yǔ)