分簇机制[1~3]能够很好地解决无线传感器网络(wire-lesssensornetworks,WSNs)能量消耗过快的问题[4],典型的分簇算法未能解决簇头能量负担重的问题,且没有身份认证[5,6],如刘伟等人提出了数字水印节点的认证安全技术[7],但使用典型的路由协议LEACH分簇,导致分簇不平衡,簇首节点能量消耗过快导致簇首过早死亡的情况。针对以上的问题,本文提出了基于可逆数字水印技术的层次型传感网络安全模型,初始布置的无线传感网络,使用典型的分簇算法LEACH协议进行分簇,成员通过可逆数字水印技术嵌入水印,簇首节点负责水印提取,并且负责簇内数据的融合交由汇聚(sink)节点,重新分簇过程中充分考虑节点剩余能量、位置信息以及信任因子值等因素,优化分簇过程,力求在保障网络安全的前提下极力提升网络性能,延长网络生命周期。
1可逆数字水印算法
本文设计的可逆数字水印算法基于像素矢量差值,其嵌入容量高并且计算效率高,簇内成员通过密钥和水印算法在感知数据中嵌入水印,簇首节点通过水印提取算法进行数据完整性验证。无线传感网节点感知数据流定义为D={d1,d2,…,di},其中i表示传感节点工作时间周期,di表示第i个工作周期节点所采集到的数据集,时间集合定位为T={t1,t2,…,ti},ti表示第i个工作周期采集数据所花的时间,定义di={a1,a2,…,aj},aj表示第i个工作周期采集到数据的字段值。
1.1水印生成
水印信息生成依托于原始感知数据D,用Hash算法MD5表示密钥信息K,可以将任意长度的数据转换成一个固定长度的值。通过单向Hash算法对感知数据流中每个数据进行Hash运算,生成一个水印信息集H={h1,h2…,hi},其中hi=Hash(K,di,ti),K表示密钥,只有收发的双方知晓,由此保证Hash值的安全性,水印信息W的计算法方法如式(1)所示,水印长度为i-1W=Wi-1,Wi-2,…,W2,W1=groupXOR(hk),k∈(1,i)(1)
1.2水印嵌入算法
水印的嵌入基于像素矢量差值,通过式(2)计算差值如下Zj=diaj-d1aj(2)将计算所得差值转换为二进制之后左移1位,从计算的水印W中去对应j位置的二进制数值嵌入在差值空出位置,这样可以保证相邻周期同类型的数据差值很小,差值的位移不会导致数据溢出,嵌入水印后的数据记作D',水印生成及其嵌入感知数据的算法描述如下:输入:感知数据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∥计算机感知数据字段平均值7)fori=0tondo8)Zj=diaj-d1aj∥计算差值9)Z'j=2×Zj+W[j]∥二进制左移,嵌入水印10)Fj=σ-∑j1Zj'[]n∥计算嵌入水印后的数据项第一位11)F'j=Fj+Z'j12)endfor13)endfor输出:嵌入水印数据D',数据通信
1.3水印提取算法
当簇首节点接收数据之后,开始水印提取与数据恢复操作,通过数据D'计算均值和差值,然后从差值的最低有效位提取水印信息W1,在嵌入水印的过程中,水印是差值左移1位之后嵌入,所以提取水印之后需要将差值右移1位还原,然后通过水印嵌入算法对恢复的原始数据重新计算生成水印信息W2,通过比较W1与W2是否一样来判断数据的完整性,水印提取算法描述如下:输入:嵌入水印数据D',密钥K1)forj=0tomdo2)fori=0tondo3)σ=1n∑i1F[]j4)Z'j=F'j-Fj5)W1[i]=Ex(Z'j)∥提取水印信息6)Zj=Z'j[]2∥二进制右移一位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)∥重新计算水印信息15)if(compare(W1,W2)==Equal)∥比较水印信息16)Dmarkedauthenticated∥数据完整17)else18)Dmarkedunauthenticated∥数据破坏输出:原始感知数据D,数据完整
2改进层级安全算法
为避免传感网络路由协议LEACH在簇头选择过程中的随机性,层级安全算法首轮分簇使用LEACH协议完成之后,第二轮以及后续分簇过程中引入节点信任因子来优化分簇算法。
2.1节点信任因子
节点信任因子的确定通过引入贝叶斯(Bayes)评估方法[8~11],其原理是利用已知条件概率密度参数表达式和先验概率通过贝叶斯公式转换为后验概率,然后进行决策。假设节点Ni和Nj当前相互通信次数为x和y次,其中x表示正常通信次数,y表示异常通信次数,异常通信会导致信任因子降低,有贝叶斯评估方法可以得到Ni对Nj的统计信任因子Rij的概率为公式(3)P(Rij│x,y)=P(Rij,x,y)P(x,y)=Rxij(1-Rij)y∫10Rxij(1-Rij)ydRij(3)再根据密度函数式(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)推理可得,节点Ni对Nj的统计信任因子Rij服从参数x和x+y的Beta分布如下f(Rij│x+1,y)=Rxij(1-Rij)yB(x+1,y),0≤Rij<10,{otherwise(6)则其数学信任因子为E(Rij)=x+1x+y+1(7)由此推得节点Ni的信任因子计算公式如式(8)所示Ri=1n∑nj=1E(Rij)(8)式中n为当前节点Ni所在簇内节点数量,节点的信任因子由簇首节点保存和更新。
2.2簇首权值设计
为平衡簇首节点剩余能量以及簇首节点和簇内成员节点之间的位置因素,应该选择剩余能量值相对较大,簇内平均距离因子相对较小且节点信任因子大的节点作为簇首节点。在每个簇内所有节点的位置信息标识为L={l1,l2,…,li}每个li都有x和y方向的分量,所有节点的能量信息标识为E={e1,e2,…,ei},其中i为节点的数量,li为第i个节点的位置信息,ei为第i个节点的剩余能量,则节点i与簇内节点j的距离计算公式如式(9)所示dij=(lxi-lxj)2+(lyi-lyj)2(9)式中lxi为节点i在x方向的位置分量,lyi为节点i在y方向的位置分量,簇内平均距离因子Δdi的计算公式如式(10)所示Δdi=1n-1∑nj=1,j≠idij(10)由此,引入簇首权值w的计算公式如式(11)所示wi=αRiei+ERβRiΔdi(11)式中α+β=1且α,β∈[0,1],α为能量影响因子,β为距离影响因子,Ri为节点信任因子,R为初始信任因子。
2.3算法流程
网络布置完成,通过LEACH协议完成分簇;簇内成员获取感知数据,启动可逆数字水印嵌入,把数据发送给簇首节点;簇首节点接收簇内信息,通过数字水印算法提取水印,验证数据完整性,最后负责数据融合与上传数据工作;簇重组阶段,簇内所有成员节点在TDMA时隙发送节点的剩余能量信息和位置信息,簇首根据收到的信息计算节点信任因子,同时设定能量影响因子和距离影响因子,以此计算簇首权重,并且重新分簇。
3仿真与测试
3.1仿真参数设置
通过网络仿真平台NS搭建传感网络场景,引入文献[1]中的无线通信模型计算能量损耗。传感网络场景大小为100m×100m,Sink位置坐标为50,175,传感节点数量100个,节点每次发送数据包大小为2000bit,节点初始能量设置为2J,能量影响因子和距离影响因子都设置为0.5,慢衰弱每比特消耗100pJ,快衰弱每比特消耗0.001pJ,电路能耗为50nJ/bit。
3.2实验结果分析
1)鲁棒性能分析图1是通过固定时隙选取的通信数据,包括原始感知数据、嵌入水印后的数据以及恢复后的数据值比较,从结果可以得知,通过可逆数字水印算法还原的数据与原始数据的误差极小,几乎没有误差,算法完全能够保证数据完整性和安全性。2)安全性能测试每次测试随机选取10000个传感器节点感知数据,以篡改率10%的方式篡改原始数据,即共有1000个原始数据被篡改。当嵌入水印的感知数据被传送到簇首节点之后,簇首节点根据算法提取水印并且验证,若数据被篡改,簇首节点判定数据被恶意破坏且丢弃数据包,图2是重复10次实验的仿真结果。数据的篡改率保持在10%,在理论情况下,根据可逆数字水印算法,簇首节点验证数据后,丢弃数据包的占比应该是10%。而实测的网络数据丢包率基本保持在10%左右,误差不超过0.05%,证明算法能够很好的达到认证数据的效果,保证了数据的完整性和安全性。3)节点能耗比较可逆数字水印算法基于像素矢量差值,其嵌入容量高且计算效率高,算法的复杂度是O(n2),算法本身只在水印嵌入和提取时消耗很少的能量,图3结果证明算法能保障网络的安全性且没有影响网络的整体性能。4)网络生命周期比较如图4所示,层级安全算法执行到300s后才开始有节点死亡,并且在网络运行900s时还有生存的节点,而未改进的LEACH协议在200s时就出现了节点死亡的现象,由于分簇不均衡的原因导致网络在400s后就消亡了,证明层级安全算法能够有效延长网络的生存时间。
4结束语
针对传感网络的弱安全防御能力以及不均衡能量管理能力,设计了一种基于可逆数字水印技术的安全层级模型。通过可逆数字水印的嵌入与提取来保障数据的完整性和安全性,并且充分考虑节点剩余能量、位置信息以及信任因子的因素下优化分簇策略。结果表明:算法能够很好地保障数据的完整性和安全性,数据正确率控制在99.95%以上,通过优化传感网络分簇策略,有效延长了网络生存时间。
《应用于可逆数字水印的无线传感器网络层级安全模型》来源:《传感器与微系统》,作者:蒋建峰 尤澜涛