公務(wù)員期刊網(wǎng) 論文中心 正文

無線傳感器網(wǎng)絡(luò)層級(jí)安全模型探究

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了無線傳感器網(wǎng)絡(luò)層級(jí)安全模型探究范文,希望能給你帶來靈感和參考,敬請(qǐng)閱讀。

無線傳感器網(wǎng)絡(luò)層級(jí)安全模型探究

摘要:針對(duì)無線傳感器網(wǎng)絡(luò)(WSNs)資源受限與網(wǎng)絡(luò)安全的問題,基于可逆數(shù)字水印技術(shù),提出了一種WSNs層級(jí)安全模型。一方面通過可逆數(shù)字水印技術(shù)保障簇內(nèi)數(shù)據(jù)傳輸?shù)陌踩?另一方面通過平衡節(jié)點(diǎn)剩余能量、位置信息和信任因子優(yōu)化分簇策略,保障簇首節(jié)點(diǎn)的性能以實(shí)現(xiàn)網(wǎng)絡(luò)優(yōu)化管理。仿真測(cè)試結(jié)果表明:所提方案通過可逆數(shù)字水印技術(shù)可以保障數(shù)據(jù)的完整性和安全性能,達(dá)到99.95%以上的數(shù)據(jù)傳輸正確率,而且可以很大程度改善WSNs的能量消耗,延長(zhǎng)網(wǎng)絡(luò)的生存周期125%左右。

關(guān)鍵詞:無線傳感器網(wǎng)絡(luò);網(wǎng)絡(luò)安全;可逆數(shù)字水印;層級(jí)模型

0引言

分簇機(jī)制[1~3]能夠很好地解決無線傳感器網(wǎng)絡(luò)(wire-lesssensornetworks,WSNs)能量消耗過快的問題[4],典型的分簇算法未能解決簇頭能量負(fù)擔(dān)重的問題,且沒有身份認(rèn)證[5,6],如劉偉等人提出了數(shù)字水印節(jié)點(diǎn)的認(rèn)證安全技術(shù)[7],但使用典型的路由協(xié)議LEACH分簇,導(dǎo)致分簇不平衡,簇首節(jié)點(diǎn)能量消耗過快導(dǎo)致簇首過早死亡的情況。針對(duì)以上的問題,本文提出了基于可逆數(shù)字水印技術(shù)的層次型傳感網(wǎng)絡(luò)安全模型,初始布置的無線傳感網(wǎng)絡(luò),使用典型的分簇算法LEACH協(xié)議進(jìn)行分簇,成員通過可逆數(shù)字水印技術(shù)嵌入水印,簇首節(jié)點(diǎn)負(fù)責(zé)水印提取,并且負(fù)責(zé)簇內(nèi)數(shù)據(jù)的融合交由匯聚(sink)節(jié)點(diǎn),重新分簇過程中充分考慮節(jié)點(diǎn)剩余能量、位置信息以及信任因子值等因素,優(yōu)化分簇過程,力求在保障網(wǎng)絡(luò)安全的前提下極力提升網(wǎng)絡(luò)性能,延長(zhǎng)網(wǎng)絡(luò)生命周期。

1可逆數(shù)字水印算法

本文設(shè)計(jì)的可逆數(shù)字水印算法基于像素矢量差值,其嵌入容量高并且計(jì)算效率高,簇內(nèi)成員通過密鑰和水印算法在感知數(shù)據(jù)中嵌入水印,簇首節(jié)點(diǎn)通過水印提取算法進(jìn)行數(shù)據(jù)完整性驗(yàn)證。無線傳感網(wǎng)節(jié)點(diǎn)感知數(shù)據(jù)流定義為D={d1,d2,…,di},其中i表示傳感節(jié)點(diǎn)工作時(shí)間周期,di表示第i個(gè)工作周期節(jié)點(diǎn)所采集到的數(shù)據(jù)集,時(shí)間集合定位為T={t1,t2,…,ti},ti表示第i個(gè)工作周期采集數(shù)據(jù)所花的時(shí)間,定義di={a1,a2,…,aj},aj表示第i個(gè)工作周期采集到數(shù)據(jù)的字段值。

1.1水印生成

水印信息生成依托于原始感知數(shù)據(jù)D,用Hash算法MD5表示密鑰信息K,可以將任意長(zhǎng)度的數(shù)據(jù)轉(zhuǎn)換成一個(gè)固定長(zhǎng)度的值。通過單向Hash算法對(duì)感知數(shù)據(jù)流中每個(gè)數(shù)據(jù)進(jìn)行Hash運(yùn)算,生成一個(gè)水印信息集H={h1,h2…,hi},其中hi=Hash(K,di,ti),K表示密鑰,只有收發(fā)的雙方知曉,由此保證Hash值的安全性,水印信息W的計(jì)算法方法如式(1)所示,水印長(zhǎng)度為i-1W=Wi-1,Wi-2,…,W2,W1=groupXOR(hk),k∈(1,i)(1)

1.2水印嵌入算法

水印的嵌入基于像素矢量差值,通過式(2)計(jì)算差值如下Zj=diaj-d1aj(2)將計(jì)算所得差值轉(zhuǎn)換為二進(jìn)制之后左移1位,從計(jì)算的水印W中去對(duì)應(yīng)j位置的二進(jìn)制數(shù)值嵌入在差值空出位置,這樣可以保證相鄰周期同類型的數(shù)據(jù)差值很小,差值的位移不會(huì)導(dǎo)致數(shù)據(jù)溢出,嵌入水印后的數(shù)據(jù)記作D',水印生成及其嵌入感知數(shù)據(jù)的算法描述如下:輸入:感知數(shù)據(jù)D,密鑰K1)fori=0tondo2)hi=Hash(K,di,ti)3)endfor4)W=Wi-1,Wi-2,…,W2,W1=groupXOR(hk),k∈(1,i)5)forj=0tomdo6)σ=d1aj+d2aj+…dnaj[]n∥計(jì)算機(jī)感知數(shù)據(jù)字段平均值7)fori=0tondo8)Zj=diaj-d1aj∥計(jì)算差值9)Z'j=2×Zj+W[j]∥二進(jìn)制左移,嵌入水印10)Fj=σ-∑j1Zj'[]n∥計(jì)算嵌入水印后的數(shù)據(jù)項(xiàng)第一位11)F'j=Fj+Z'j12)endfor13)endfor輸出:嵌入水印數(shù)據(jù)D',數(shù)據(jù)通信

1.3水印提取算法

當(dāng)簇首節(jié)點(diǎn)接收數(shù)據(jù)之后,開始水印提取與數(shù)據(jù)恢復(fù)操作,通過數(shù)據(jù)D'計(jì)算均值和差值,然后從差值的最低有效位提取水印信息W1,在嵌入水印的過程中,水印是差值左移1位之后嵌入,所以提取水印之后需要將差值右移1位還原,然后通過水印嵌入算法對(duì)恢復(fù)的原始數(shù)據(jù)重新計(jì)算生成水印信息W2,通過比較W1與W2是否一樣來判斷數(shù)據(jù)的完整性,水印提取算法描述如下:輸入:嵌入水印數(shù)據(jù)D',密鑰K1)forj=0tomdo2)fori=0tondo3)σ=1n∑i1F[]j4)Z'j=F'j-Fj5)W1[i]=Ex(Z'j)∥提取水印信息6)Zj=Z'j[]2∥二進(jìn)制右移一位7)d1aj=σ-1n∑i2Z[]j8)diaj=d1aj+Zj9)endfor10)endfor11)fori=0tondo12)hi=Hash(K,di,ti)13)endfor14)W2=Wi-1,Wi-2…W2W1=groupXOR(hk),k∈(1,i)∥重新計(jì)算水印信息15)if(compare(W1,W2)==Equal)∥比較水印信息16)Dmarkedauthenticated∥數(shù)據(jù)完整17)else18)Dmarkedunauthenticated∥數(shù)據(jù)破壞輸出:原始感知數(shù)據(jù)D,數(shù)據(jù)完整

2改進(jìn)層級(jí)安全算法

為避免傳感網(wǎng)絡(luò)路由協(xié)議LEACH在簇頭選擇過程中的隨機(jī)性,層級(jí)安全算法首輪分簇使用LEACH協(xié)議完成之后,第二輪以及后續(xù)分簇過程中引入節(jié)點(diǎn)信任因子來優(yōu)化分簇算法。

2.1節(jié)點(diǎn)信任因子

節(jié)點(diǎn)信任因子的確定通過引入貝葉斯(Bayes)評(píng)估方法[8~11],其原理是利用已知條件概率密度參數(shù)表達(dá)式和先驗(yàn)概率通過貝葉斯公式轉(zhuǎn)換為后驗(yàn)概率,然后進(jìn)行決策。假設(shè)節(jié)點(diǎn)Ni和Nj當(dāng)前相互通信次數(shù)為x和y次,其中x表示正常通信次數(shù),y表示異常通信次數(shù),異常通信會(huì)導(dǎo)致信任因子降低,有貝葉斯評(píng)估方法可以得到Ni對(duì)Nj的統(tǒng)計(jì)信任因子Rij的概率為公式(3)P(Rij│x,y)=P(Rij,x,y)P(x,y)=Rxij(1-Rij)y∫10Rxij(1-Rij)ydRij(3)再根據(jù)密度函數(shù)式(4)所示B(x,y)=∫10Rx-1ij(1-Rij)y-1dRij(4)推得公式(5)P(Rij│x+1,y)=Rxij(1-Rij)yB(x+1,y)(5)推理可得,節(jié)點(diǎn)Ni對(duì)Nj的統(tǒng)計(jì)信任因子Rij服從參數(shù)x和x+y的Beta分布如下f(Rij│x+1,y)=Rxij(1-Rij)yB(x+1,y),0≤Rij<10,{otherwise(6)則其數(shù)學(xué)信任因子為E(Rij)=x+1x+y+1(7)由此推得節(jié)點(diǎn)Ni的信任因子計(jì)算公式如式(8)所示Ri=1n∑nj=1E(Rij)(8)式中n為當(dāng)前節(jié)點(diǎn)Ni所在簇內(nèi)節(jié)點(diǎn)數(shù)量,節(jié)點(diǎn)的信任因子由簇首節(jié)點(diǎn)保存和更新。

2.2簇首權(quán)值設(shè)計(jì)

為平衡簇首節(jié)點(diǎn)剩余能量以及簇首節(jié)點(diǎn)和簇內(nèi)成員節(jié)點(diǎn)之間的位置因素,應(yīng)該選擇剩余能量值相對(duì)較大,簇內(nèi)平均距離因子相對(duì)較小且節(jié)點(diǎn)信任因子大的節(jié)點(diǎn)作為簇首節(jié)點(diǎn)。在每個(gè)簇內(nèi)所有節(jié)點(diǎn)的位置信息標(biāo)識(shí)為L(zhǎng)={l1,l2,…,li}每個(gè)li都有x和y方向的分量,所有節(jié)點(diǎn)的能量信息標(biāo)識(shí)為E={e1,e2,…,ei},其中i為節(jié)點(diǎn)的數(shù)量,li為第i個(gè)節(jié)點(diǎn)的位置信息,ei為第i個(gè)節(jié)點(diǎn)的剩余能量,則節(jié)點(diǎn)i與簇內(nèi)節(jié)點(diǎn)j的距離計(jì)算公式如式(9)所示dij=(lxi-lxj)2+(lyi-lyj)2(9)式中l(wèi)xi為節(jié)點(diǎn)i在x方向的位置分量,lyi為節(jié)點(diǎn)i在y方向的位置分量,簇內(nèi)平均距離因子Δdi的計(jì)算公式如式(10)所示Δdi=1n-1∑nj=1,j≠idij(10)由此,引入簇首權(quán)值w的計(jì)算公式如式(11)所示wi=αRiei+ERβRiΔdi(11)式中α+β=1且α,β∈[0,1],α為能量影響因子,β為距離影響因子,Ri為節(jié)點(diǎn)信任因子,R為初始信任因子。

2.3算法流程

網(wǎng)絡(luò)布置完成,通過LEACH協(xié)議完成分簇;簇內(nèi)成員獲取感知數(shù)據(jù),啟動(dòng)可逆數(shù)字水印嵌入,把數(shù)據(jù)發(fā)送給簇首節(jié)點(diǎn);簇首節(jié)點(diǎn)接收簇內(nèi)信息,通過數(shù)字水印算法提取水印,驗(yàn)證數(shù)據(jù)完整性,最后負(fù)責(zé)數(shù)據(jù)融合與上傳數(shù)據(jù)工作;簇重組階段,簇內(nèi)所有成員節(jié)點(diǎn)在TDMA時(shí)隙發(fā)送節(jié)點(diǎn)的剩余能量信息和位置信息,簇首根據(jù)收到的信息計(jì)算節(jié)點(diǎn)信任因子,同時(shí)設(shè)定能量影響因子和距離影響因子,以此計(jì)算簇首權(quán)重,并且重新分簇。

3仿真與測(cè)試

3.1仿真參數(shù)設(shè)置

通過網(wǎng)絡(luò)仿真平臺(tái)NS搭建傳感網(wǎng)絡(luò)場(chǎng)景,引入文獻(xiàn)[1]中的無線通信模型計(jì)算能量損耗。傳感網(wǎng)絡(luò)場(chǎng)景大小為100m×100m,Sink位置坐標(biāo)為50,175,傳感節(jié)點(diǎn)數(shù)量100個(gè),節(jié)點(diǎn)每次發(fā)送數(shù)據(jù)包大小為2000bit,節(jié)點(diǎn)初始能量設(shè)置為2J,能量影響因子和距離影響因子都設(shè)置為0.5,慢衰弱每比特消耗100pJ,快衰弱每比特消耗0.001pJ,電路能耗為50nJ/bit。

3.2實(shí)驗(yàn)結(jié)果分析

1)魯棒性能分析圖1是通過固定時(shí)隙選取的通信數(shù)據(jù),包括原始感知數(shù)據(jù)、嵌入水印后的數(shù)據(jù)以及恢復(fù)后的數(shù)據(jù)值比較,從結(jié)果可以得知,通過可逆數(shù)字水印算法還原的數(shù)據(jù)與原始數(shù)據(jù)的誤差極小,幾乎沒有誤差,算法完全能夠保證數(shù)據(jù)完整性和安全性。2)安全性能測(cè)試每次測(cè)試隨機(jī)選取10000個(gè)傳感器節(jié)點(diǎn)感知數(shù)據(jù),以篡改率10%的方式篡改原始數(shù)據(jù),即共有1000個(gè)原始數(shù)據(jù)被篡改。當(dāng)嵌入水印的感知數(shù)據(jù)被傳送到簇首節(jié)點(diǎn)之后,簇首節(jié)點(diǎn)根據(jù)算法提取水印并且驗(yàn)證,若數(shù)據(jù)被篡改,簇首節(jié)點(diǎn)判定數(shù)據(jù)被惡意破壞且丟棄數(shù)據(jù)包,圖2是重復(fù)10次實(shí)驗(yàn)的仿真結(jié)果。數(shù)據(jù)的篡改率保持在10%,在理論情況下,根據(jù)可逆數(shù)字水印算法,簇首節(jié)點(diǎn)驗(yàn)證數(shù)據(jù)后,丟棄數(shù)據(jù)包的占比應(yīng)該是10%。而實(shí)測(cè)的網(wǎng)絡(luò)數(shù)據(jù)丟包率基本保持在10%左右,誤差不超過0.05%,證明算法能夠很好的達(dá)到認(rèn)證數(shù)據(jù)的效果,保證了數(shù)據(jù)的完整性和安全性。3)節(jié)點(diǎn)能耗比較可逆數(shù)字水印算法基于像素矢量差值,其嵌入容量高且計(jì)算效率高,算法的復(fù)雜度是O(n2),算法本身只在水印嵌入和提取時(shí)消耗很少的能量,圖3結(jié)果證明算法能保障網(wǎng)絡(luò)的安全性且沒有影響網(wǎng)絡(luò)的整體性能。4)網(wǎng)絡(luò)生命周期比較如圖4所示,層級(jí)安全算法執(zhí)行到300s后才開始有節(jié)點(diǎn)死亡,并且在網(wǎng)絡(luò)運(yùn)行900s時(shí)還有生存的節(jié)點(diǎn),而未改進(jìn)的LEACH協(xié)議在200s時(shí)就出現(xiàn)了節(jié)點(diǎn)死亡的現(xiàn)象,由于分簇不均衡的原因?qū)е戮W(wǎng)絡(luò)在400s后就消亡了,證明層級(jí)安全算法能夠有效延長(zhǎng)網(wǎng)絡(luò)的生存時(shí)間。

4結(jié)束語(yǔ)

針對(duì)傳感網(wǎng)絡(luò)的弱安全防御能力以及不均衡能量管理能力,設(shè)計(jì)了一種基于可逆數(shù)字水印技術(shù)的安全層級(jí)模型。通過可逆數(shù)字水印的嵌入與提取來保障數(shù)據(jù)的完整性和安全性,并且充分考慮節(jié)點(diǎn)剩余能量、位置信息以及信任因子的因素下優(yōu)化分簇策略。結(jié)果表明:算法能夠很好地保障數(shù)據(jù)的完整性和安全性,數(shù)據(jù)正確率控制在99.95%以上,通過優(yōu)化傳感網(wǎng)絡(luò)分簇策略,有效延長(zhǎng)了網(wǎng)絡(luò)生存時(shí)間。

作者:蔣建峰 尤瀾濤 單位:南京郵電大學(xué)計(jì)算機(jī)學(xué)院 蘇州大學(xué)計(jì)算機(jī)學(xué)院