专利名称:一种容忍入侵的无线传感器网络拓扑生成方法
技术领域:
本发明涉及网络安全及无线网络拓扑控制领域,具体地说是一种容忍入侵的无线传感器网 络拓扑生成方法,用于实现对无线传感器网络的容侵的拓扑控制,所生成拓扑能容忍部分节点 被入侵,依然能保持整个网络安全结构及关键服务的正常运行,属于网络技术领域。
背景技术:
有线拓扑控制的目的在于构建与维持一个覆盖所有节点的连通网络,从而为信息传输提供 路由基础;无线网络的拓扑控制因为通信带宽窄、信号易互相干扰,其拓扑控制不仅要考虑网 络的覆盖度,还要考虑网络的稀疏性以避免信号干扰、提高通信效率。无线传感器网络的拓扑 控制有更高要求,因为相对于通常意义下的无线网络具有通信带宽更窄、计算和存储能力极低、 电池能源有限、节点数目巨大以及外在环境通常恶劣甚至恶意等特点。当前有关无线传感器网 络的拓扑控制方法可以分为三个阶段
1.节能的拓扑控制方法
节能的控制方法,主要考虑到电力耗尽会造成节点死亡,从而可能造成拓扑分割,针对此 问题,首先想到的是节省能量,尽量均衡全网范围内的能源损耗,达到延长网络寿命的作用。
常用的方法可以分为三类功率控制、分层结构和休眠轮值;
1.1功率控制统一功率分配方案COMPOW是第一个可实现的无线Adhoc网络设计的典
型的功率控制方案,密集布置传感器节点分布未必均匀,单一的相同功率分配方案产生的相同
发射半径内不同节点的邻节点数目必然不同,COMPOW可通过设置不同的power level agent来 管理不同节点的发射功率实现整个网络中节点负载的均衡,能在保证网络的连接与连通的前提 下,使得网络交通容量最大化maximizing the traffic carrying capacity、延长电池寿命、减小MAC 层竞争;CUistenPOW、 MiniPOW分别是针对分簇网络结构和网络总能量最小化的功率控制方案; LINT/LILT和LMN/LMA等是典型的基于节点度数的功率分配算法,利用局部信息来调整相邻 节点的连通性,从而保证整个网络的连通性,同时保证节点链路间有一定的冗余性和可扩展性。 其核心思想是给定节点度的上限和下限需求,动态调整节点的发射功率,使得节点度数落在上 限和下限之间。适用于传感器网络的本地平均算法(LMA: Local mean algorithm)和本地邻居平均 算法(LMN: Local mean of neighbors algorithm)是两种周期性动态调整节点发射功率的算法, LMA以周期性的査询邻节点度数,通过发射一定功率发送LifeMsg消息,统计收到该消息邻节 点的回复消息LifeAckMsg数目,获得自己的节点度数,然后采用一定策略调整发射功率,使得 节点度数落在预先确定的上下限之间。LMN和LMA统计邻居数目方法有所不同,在LMN算 法中,收到査询消息LifeMsg的节点发送LifeAckMsg消息时,将自己的邻居数放在消息中,查询节点在收集完所有的LifeAckMsg消息后,将所有邻居的邻居平均数作为自己的邻居数。基于 节点度数的算法通过少量的局部信息达到了一定程度的优化效果,且不需要严格的时钟同步, 计算机仿真结果也表明,此类算法的收敛性和网络的连通性可以保证。邻近图算法是解决功率 分配问题的近似解法,把节点都使用最大功率发射时形成的拓扑图记为G=(V,E),其中V为网络 节点集合;E边集,表示节点之间可直接通信的链路。按照一定的规则q求出该图的邻近图G', 最后G'中每个节点都使用以自己所邻接的最远通信节点来确定发射功率。邻近图的定义为如 果一个图G'-(V',E')是G-(V,E)由条件q导出的邻近图,则V=V', E'包含于E,对V中所有 节点u,E'是满足给定的邻居判别条件q的E中边(u,v)的集合。经典的邻近图模型有RNG(Relative Neighborhood Graph), GG(Gabriel Graph), YG(Yao Graph)以及MST(Minimum Spanning Tree)等。 基于邻近图的功率控制算法有如CBTC、 LMST、 DRNG和DLSS等,主要分为两个阶段,第一 阶段是信息收集阶段,是节点以自己的最大发射功率査询自己的可达邻居集合构成初始拓扑图, 然后求出邻近图(如最小生成树),确定邻居节点,根据最远邻居的距离,调整发射半径,形成 兼顾网络的连通性和节省能量两个目的的拓扑结构,更进一步,通过对所形成拓扑图进行边的 增删,使得网络达到双向连通。
1.2分层结构分簇分层的思想最初来自基于地理位置无线传感器网络路由算法GAF (Geographical Adaptive Fidelity),该算法是以节点地理位置为依据的把监测区域划分为虚拟单元 格,将节点按照位置信息划入相应的单元格,在每个单元格中定期选举产生一个当值节点,且 相邻两单元格内任意节点可以直接通信,属于同一单元格的节点可以认为是等价的。GAF周期 性地每个单元格内选出一个当值节点保持活动状态,由活动节点组成骨干网,负责数据的转发。 这样,既保证网络拓扑的覆盖度和连通性,又使得非当值节点进入休息状态,节省了能量的消 耗。GAF随机选择当值簇头节点时没有考虑节点的剩余能量,这样会导致节点能量的不均匀分 布。RSanti提出了一种GAF改进算法,设计了完全选择和随机选择两种不同的当值节点选择方 法,并详细分析了活动节点产生后的网络运行方式。这两种选择方法针对传感器网络的特点, 选举剩余能量多的节点作为活动节点,有利于延长传感器节点以及整个网络的生存时间,但是 与GAF算法相比,此算法要求同一单元格中的节点保持时间同步。GAF单元格划分时利用了 地理位置信息,这大大增加了节点的硬件成本。有一种基于图论中最小支配集问题的分簇算法, 称节点集合W是图G气V,E)的支配集,如果V中点要么属于Vp要么是V,的邻接点。为此, 可通过求出的最小支配集中的点组成数据转发的骨干网,而其它节点数据可以一跳找到骨干网, 从而保证了网络的覆盖度。TopDisc成簇算法是利用颜色区分节点状态求图中最小支配集问题的 经典解法,使节点在密集部署的传感器网络中快速地形成分簇结构,并在簇头之间建立树型关 系,解决骨干网络拓扑结构的形成问题。由网络中的一个节点启动发送用于发现邻居节点的查 询消息,査询消息携带发送节点的状态信息。随着查询消息在网络中传播,TopDisc算法依次为 每个节点标上颜色。最后,按照颜色区分出簇头节点,并通过反向寻找查询消息的传播路径, 在簇头节点之间建立通信链路,簇头节点管辖自己簇内的节点。T叩Disc算法构建成的层次网络 灵活性不强,重复执行算法的开销过大,另外,该算法也没有考虑节点剩余能量和网络鲁棒性的问题。在分簇结构中,比较有影响的是LEACH算法。LEACH (Low Energy Adaptive Clustering Hierarchy)是一种周期执行的自适应分簇拓扑算法,每个周期分为簇建立和稳定数据通信两个阶 段。在簇的建立阶段,相邻节点动态地形成簇,随机产生簇头;在数据通信阶段,簇内节点把 数据发给簇头,簇头进行数据融合,并把结果发送给汇聚节点。由于簇头需要完成数据融合、 与汇聚节点通信等工作,所以能量消耗非常大。LEACH通过算法等概率地选取担任簇头的节点, 使得网络中节点能耗相对均衡。节点当选簇头以后,发布通告消息告知其它节点自己是新簇头。 非簇头节点根据自己与簇头之间的距离来选择加入哪个簇,并告知簇头。与GAF相比,LEACH 算法仅仅利用了相对位置信息,不要节点的利用额外的硬件设备获得节点具体位置信息。但是 LEACH算法随机选取簇头,没有考虑到簇头在网络中的分布情况,HEED(Hybrid Energy Efficient Distributed Clustering)针对这个情况,考虑了与LEACH不同的簇头选择标准以及簇头 竞争机制,引入成簇后簇内的通信开销和节点剩余能量作为参数,让各节点以不同的初始概率 发送竞争消息,使得选出的簇头更适合担当数据转发任务,形成的网络拓扑更趋合理,全网能 量消耗更均匀,此外,节HEED成簇速度有一定的改进。在分簇算法的具体实现方面,Sohrahi 提出使用两个信道将系统划分成两个簇的双信道分组机制(DNC)和集合分组机制(RCA), Caccamo使用将系统分成多个簇,使用FDMA方式,相邻的簇使用不同的频率通信。Wei Ye结 提出在需要交互的节点之间进行时间同步、组成虚拟簇,同一虚拟簇中的节点按照统一的调度 表,周期性地休眠与监听。该方法避免了簇间交互带来的复杂通信问题,但是,时间同步需要 每个节点都需要周期性地广播调度信息,增加了网络的开销。
1.3休眠轮值在传感器网络中,功率控制可较好的解决网络连通性需求,并在一定程度上 降低通信干扰、进行负载均衡控制,但相关研究工作表明,节点发射功率最大或者最小,对延 长节点使用时间的影响是非常有限的,对节点电力损耗最大的无线通信模块,因此关闭接收器 和发射器甚至让整个传感器节点进入睡眠状态是最有效的节能方法。考虑到面向监测应用的传 感器网络通常是事件驱动的,网络中节点在没有检测到事件时,通信模块不必一直保持在活动 状态。可在没有事件发生时,设置节点的通信模块为睡眠状态;而在有事件发生时,及时自动 醒来并唤醒邻居节点,形成数据转发的拓扑结构。此类方法的核心是何时唤醒哪些节点、又如 何唤醒这些节点。STEM (Sparse Topology and Energy Management)是较早提出的节点唤醒算法, 它包含两种不同的机制,STEM-B, STEM-T,旨在提供简单而迅速的节点唤醒方式,保证网络 通信的畅通和减小节点唤醒造成的时延。STEM-B为了避免唤醒信号和数据通信的冲突,使用 侦听信道和数据传输信道两个分离信道,当一个节点想给另外一个节点发送数据时,主动发送 一串beacon包,目标节点通过开放的侦听信道接受到beacon包后,发送应答信号并自动进入 数据接受状态。主动节点接收到应答信号后,进入数据发送阶段。STEM-T没有使用分离信道, 休眠节点周期性进入侦听阶段,探测是否有邻居节点发送数据。想与某邻居节点进行通信的 节点,在长度大于侦听时间间隔的区间内发送一连串的唤醒包,邻居节点唤醒后直接进入数据 接受状态,然后节点直接发送数据包。STEM-T比STEM-B算法省略了请求应答过程,但增 加了节点唤醒次数。STEM算法使节点在整个生命周期中多数时间内通信模块处于睡眠状态适用于类似环境监测或者突发事件监测等应用,目前STEM算法可以和很多其它类型的拓扑算法 结合使用,如GAF算法。值得注意的是,在STEM算法中,节点的睡眠周期、部署密度以及 网络的传输延迟之间有着密切的关系,要针对具体的应用进行调整。ASCENT(Adaptive self-configuring sensor networks topologies)与旨在减少节点唤醒时间的STEM算法不同,它着重 于均衡网络中骨干节点的数量,并保证数据通路的畅通。在ASCENT算法中,节点可以处于四 种状态休眠状态,节点关闭通信模块,能耗最小;侦听状态,节点只对信息进行侦听,不进 行数据包的转发;测试状态, 一个暂态,节点参与数据包的转发,并运行算法,判断自己是否 需要变为活动状态;活动状态,节点负责数据包的转发,能耗最大。ASCENT算法运行过程可 划分为触发、建立和稳定三个主要阶段。触发阶段汇聚节点与数据源节点不能正常通信时,汇 聚节点向它的邻居节点发出求助信息进入建立阶段,处于侦听状态的邻居节点收到求助信息时, 立即进入测试状态,通过一定的算法决定自己是否成为活动节点,如果成为活动节点,就向其 它邻居节点发送通告消息,同时,这个消息是其它邻居节点判断自身是否成为活动节点的因素 之一;稳定阶段指当数据源节点和汇聚节点之间的通信恢复正常时,网络中活动节点的个数保 持稳定,其它节点周期性的处于侦听和睡眠状态;稳定阶段保持一段时间后,由于个别节点能 量耗尽或者外界干扰等因素,网络中又出现通信不畅现象,侦听节点收到求助信息或者侦听到 周围存在丢包现象时,转入测试状态,系统就进入新的触发阶段。
2. 容错的拓扑控制方法
同样是考虑到由于能量或者环境问题必然会有部分节点死亡,容错的方法主要着眼于网络 功能,研究能容忍网络中个别节点失效的容错拓扑生成方法,这类方法主要是提供多点连通和 多边连通度的网络图的建立方法。基本思想是失败节点会使得原本连通的网络拓扑分割,从而 大大降低网络的覆盖度,甚至导致网络失败(Network failure),即整个网络无法正常工作。考虑 到在k-连通图中,k-l个节点的失败,不会改变图的连通性,近期出现了一些关于容错拓扑的 研究["5,通过功率控制生成能量最小的k-连通的无线传感器网络拓扑,来容忍k-l个节点的失 败。这些工作把容错拓扑控制问题等价为寻找多连通图,并把所找到的图的连通度当成衡量拓 扑容错能力高低的标准。然而,此类拓扑控制算法存在三个方面的问题, 一、寻找这种多连通 图是困难的,即使是在平面图中,求能量最优的多连通图问题都被证明为NP难的;已有寻找 k-点连通,k-边连通的功率控制算法都是近似算法;二、获得多连通图的算法必然形成过于密
集的网络,导致整个网络的能耗成倍数增长7,同时节点间的通信干扰大大增加;三、由于上
述两个问题的存在,使得此类算法所能提供的k-连通图的k值非常小,通常介于2到5之间, 仅能容忍少量(l-4个)失败节点,这对大规模网络中常出现多个故障节点的情形是不够的,对于 恶意的攻击形成的大量的有选择的入侵节点,这种k值非常小的k-连通图更是无能为力。
3. 容侵的拓扑控制方法
基于节能和基于容错的两类方法都未曾考虑环境对拓扑影响,恶意环境可能攻击拓扑生成 与运行过程从而进入网络内部成为入侵节点进而控制整个网络,也可能形成大量失败节点超出 上述容错拓扑的容忍能力从而导致网络失败;Wang等在IPDPS2006上指出了研究无线传感器网络中容忍入侵的拓扑的重要性,并从理论层面上探讨了恶意环境下蓄意的入侵行为(Intrusion) 与通常情况下的网络故障(Fault)对网络拓扑的影响与评估方法,但是未能给出容忍入侵的拓扑 控制方法以保证在入侵存在的情况下能建立并维持连通且鲁棒的拓扑结构。
总体来说,对于无线传感器网络的拓扑控制问题,考虑到其节点计算能力、通信能力、存
储能力的弱以及电池电量有限,使得延长网络的生存期保证关键服务成为第一要k,节能、容
错、容侵都是为这个目标服务的。而现有的针对无线传感器网络提出的拓扑控制方法,多不曾
考虑恶意的敌对的外在环境,尚未见关于容忍入侵的拓扑控制方法的报道。
发明内容
技术问题为了克服现有技术的不足,本发明提供一种容忍入侵的无线传感器网络拓扑生 成方法,用于实现恶意环境中网络的拓扑控制问题,可生成具有较高容侵能力的拓扑结构,该 结构能容忍部分节点被入侵,同时保证网络的关键服务。
技术方案本发明的容忍入侵的无线传感器网络拓扑生成方法是使用基于三色思想的拓扑 生成方法,首先将所有节点染成白色,任选一节点染成黑色节点,使用功率控方法,使用邻节 点发现协议寻找簇半径r,和控制半径r2内点并分别染成灰色和黑色,对所有黑色节点重复使用 这种基于功率控制的染色方案,直到所有白色节点都被染成黑色或灰色节点为止,生成黑色节 点为活动节点、灰色节点为休眠节点的两层网络拓扑。
邻节点发现协议中的簇半径n和控制半径r2的值需满足, < 丄,< ,< 。5r 。
邻节点发现协议中,发起者A以通信半径r广播用会话密钥尺a加密后的邻节点査询消息, 该消息包含发起者A的节点身份/D;接收到邻节点查询消息的接收者B,用会话密钥^a解密 后记录发起者A的节点身份/Z),并将自己的节点身份/Z)用会话密钥/:B传送给发起者A作为 回复;发起者A收到接收者B的恢复消息后,用会话密钥《B解密后记录接收者B的节点身份 /£ ,该协议相关节点进行了 2次握手,仅发送了两条消息。
会话密钥Ka和Kb由会话密钥建立协议生成,会话密钥建立协议由R叫uest和Reply两条 信息组成的一次交互生成;Request是发起者A计算出它与接收者B的共享秘密/Cab,然后选 择一个随机数《a作为会话密钥,用Kab加密后,连同自己节点身份/D—起发送给B,即A向 B发送消息M气(^kAB,/AO, /Z a为接收者A的节点身份ID; Reply是B收到M后,根据A
的身份信息计算出^AB解密求出KA,并用《AB加密它自己的密钥尺B给A作为回应,即A向B
发送消息A/2= ((KB) kab, /^), /Db为接收者B的节点身份ID。
会话密钥建立协议中的共享秘密^ab称为主密钥,由主密钥协商协议生成,主密钥协商协 议的发起者A向接收者B发出包含了自己的身份/Z)a的请求信息;B回复一条包含自己的身 份/Z B的信息;A、 B根据计算公式/^B^/(/Av,/DB)计算出共享秘密/CAB。
节点身份/Z)是在传感器节点布置以前,由网络部署者指定分配的。
计算公式Kab =X/Z)a, /Z b)中函,/由网络部署者随机产生,是一个在某一无穷域F上度数
为f的对称双变量多项式/0,力=力 JC>'( =。有益效果本发明与现有技术相比,具有以下优点
1. 安全性,安全结构给拓扑控制过程提供了传感器节点的认证,而且为拓扑建立和更新过程 提供了消息通信的保密性安全结构能够阻止传感器网络面临的绝大多数攻击行为,唯一不能阻 止的威胁是物理的节点捕获,但是拓扑的容侵性使得可以容忍一定数目的被捕获节点。攻击者 捕获并复制了一个节点的信息从而获得了该节点的所有消息,并作为一个合法节点打入网络内 部。但是,先应式的会话密钥更新,以及安全结构提供的前向保密性,使得该节点只能取得某 一个周期内的秘密;同时,若对第一批和第二批传感器节点的ID进行区分的话,则该节点无法 重新以一个合法节点的身份加入网络拓扑。即使该节点作为一个合法的节点打入网络,仅能在 一个通信簇内进行活动,获得该簇的会话密钥并解密发送给它的消息,不能对网络的正常服务 产生毁灭性的影响。
2. 前向保密性和后向保密性;为节点加入和离开网络提供了前向保密性和后向保密性;此外, 它最小化了个别俘虏节点对整个网络拓扑的影响。节点认证由主密钥协商协议实现,因为其他 节点无法获得初始布置前CA分发的密钥材料完成(多项式系数),从而没有非法的节点能推导出 其他节点的发送密钥,只有合法的节点能够加入通信;此外,认证过程被隐式的包含在密钥交 换过程中,仅仅只需要两条额外的消息就能完成。保密性是通过加密消息获得的,这防止了消 息的任何非法的泄漏,在一个方面使得攻击者只能通过暴力攻击获得合法的信息,另一方面由 于信息的加密而使得攻击者无法获得信息的内容。使用计数器操作的加密过程与纯粹简单的加 密相比,在不增加消息负载的情况下,给每条消息增加一个索引号,消息仅仅被微量地扩展了, 但是接受者能够发现已经使用过的计数值,从而可以有效地阻止重放攻击。节点死亡或者被敌 手物理攻击造成节点离开时,会话密钥更新,即使对手获得离开节点的密钥,依然不能解密后 续数据,从而具备了后向保密性;新节点加入时,也会进行密钥更新,新加入节点无法获得加 入前的信息,从而使得网络数据具备了前向保密性。
3. 节能性整个拓扑自再生过程是节能的。首先,在拓扑自生成协议中,算法是单步执行 并且必然有终结点的,而当前的一些着色算法,只能通过大量计算迭代才能收敛相比,计算复 杂度非常低,降低了通信量;此外,拓扑生成算法的信息广播限制在有限的通信半径内,且是 单跳的,与常用全网多跳广播相比,大大降低了通信量。其次,在拓扑更新协议中,虽然有几 次广播和通信,但是每次都局限在其通信半径内的一跳通信,因此,对全网能量的消耗是非常 有限的。再次,在新节点加入协议中,也是就近加入已形成的簇,不用改变整个网络的运行情 况,所使用的通信量非常有限。最后,在拓扑重构过程中,仅仅是增加了一个恶意节点黑名单, 其它过程和拓扑自生成算法一样,具有很低的计算复杂度和通信量。此外,所有布置的密码学 算子在运行时间和内存使用上都是非常有效的,没有超出信息的重要性,基于密码学的认证过 程也被隐式的包含在密钥交换过程中,仅仅只需要两条额外的消息就能完成。
4. 容侵性容侵性包括两个方面, 一个是拓扑结构的容侵性,另一个是安全结构的容侵能 力。因为如果拓扑结构不具有容侵能力,即使安全结构尚未被破坏,但是网络本身已无法提供 服务;如果仅拓扑结构具有容侵能力,但是安全结构己遭破坏,则网络虽然能提供服务,但已无法保证服务的安全性。首先,安全结构提供的节点认证和通信加密与认证排除了来自外部节 点的攻击行为,使得外部攻击仅限于物理方式的破坏,这种破坏分为两种形式, 一种是物理捕 获并复制节点从而实施内部攻击,对这种具有较高代价的攻击方式放在后面分析,另一是单纯 的被动的破坏,使得传感器节点不能正常工作。对于被动的物理攻击,仅能形成节点死亡,拓 扑生成和更新算法形成的网络具有较高的容错度和容侵度,在簇内,多个节点只要有一个没有 死亡或者被俘虏,即可启动拓扑更新协议选取该节点充当簇头,从而不影响数据转发骨干网的 连通络,同时簇内允许第二代节点即时加入的节点加入协议保证了通信簇的簇内容侵能力;在 簇间,对于簇头形成的骨干网络,即使邻近的3个簇包含簇头的成员节点全部被隔离,亦可形 成具有较低容侵度的连通网络,并发起拓扑自再生算法,让新一代节点的加入已提高网络的容 侵性能。只要能保证新节点的加入,就不会出现网络失败,就能保证高容侵拓扑的存在和网络 的正常运行。对于主动的物理捕获与节点造成的内部攻击,安全结构使得我们可以容忍一定数 目的内部入侵节点。当一个来袭身份复制的攻击节点,它自身可能通过网络认证参与通信过程, 但是它仅仅只是一个灰色的休眠态节点,能获得该簇内转发给该节点的消息,它甚至不能伪造 传感数据,因为这样很容易被同时具有数据融合任务的簇头发现。如果该复制节点获得了簇头 的权利,它的破坏力会大大增加,但是拓扑更新协议使得它仅能在一个周期内充当簇头,即使 在它充当簇头期间,它的破坏力也由仅限于窃听簇内广播消息扩大为对本簇传感数据的伪造以 及经过它的消息传说过程的窃听和破坏,对于依赖于多路径的数据转发的主干网来说,只要不 超过Z个节点被俘获,那些介于非俘获节点间的通信依然是安全的。
图1为基于着色思想的拓扑生成算法流程图,
图2为基于着色思想的拓扑生成算法实例示意图。
具体实施例方式
在传感器节点布置之初,全部设为白色,然后根据算法1,等算法结束时,黑色节点作为 簇头,打开通信模块,接受并转发其通信半径内其他传感器节点发来的信息;而其邻域内的灰 色节点节点均处于休眠状态,关闭通信模块,节省能量,直到有新数据产生才发送给黑色簇头 节点。
算法1基于着色思想的拓扑生成算法-
(1) 初始化网络,所有节点均为白色节点;
(2) 任选网络中某一节点A标记为黑色;
(3) 新当选黑色节点以半径n发起邻节点査询协议(协议1),将该黑色节点的所有关于半径n 的白色邻节点标记为灰色,并保留这些灰色节点记录;
(4) 新当选黑色节点以半径^发起邻节点査询协议,在节点A的所有半径为r2的白色节点中任 选一点B,标记为黑色,不保留以半径^发起邻节点记录;(5)转至(3),直到找不到满足要求的白色节点为止。
算法l中r为传感器节点的通信半径,n、 ^的值需满足式(1):
1 W
算法1中所使用的邻节点发现协议由协议1给出 协议l邻节点查询协议
(1) 节点A以一定通信半径r广播邻节点査询消息,该消息包含节点A的ID;
(2) 节点B接受到A的邻节点査询消息后,记录A的ID,并将自己的ID传送给A作为回复;
(3) 节点A收到节点B的恢复消息后,记录B的ID。
协议1中的消息是用会话密钥加密的,这需要安全结构的支撑。相关安全结构实现了基于 三个不同但存在交互的步骤首先是主密钥协商,提供了节点认证和最初的密钥交换;然后是 会话密钥建立,形成了通信簇,将基于对称密钥的加密通信扩展为一定通信范围内的广播;最
后是数据通信的加密和认证,如协议1中使用了消息加密,获得了网络消息的可认证性和保密 性。
在传感器节点布置以前,由CA给每个传感器节点一个唯一的身份标记/Z),同时CA随机 产生一个在某一无穷域F上度数为/的对称双变量多项式/;cjO,如公式(2):
/(A力=Z " J V K = ) (2)
然后用式(2)给每个节点(依据不同的/Z)值)计算属于它们的私有多项式
W = /("") (3)
显然,g^是一个度数为f的关于x的单变量多项式,CA在网络布置之初将密钥材料(多项
式g^的系数)分发到对应的传感器节点中。这样两个节点就能通过计算各自的私有多项式确定 他们的共享秘密,即将对方的/Z 作为g^O)中的;c。很容易能推导出两个节点会计算出相同的 多项式值/0,y)。如两个不同的节点/I^和/D2,可以用采用式(4)和(5)求值
gMarg-yx/z^/z),) (4)
^2(叫)=/(叫,/£>2) (5) 从而可获得g^(/Z)2) = 即式(3)和式(4)所得运算结果相同,可作为两个节点共
享的秘密。主密钥协商协议如下 协议2 :主密钥协商协议
①发起者A向接收者B发出包含了自己的身份/D,的 请求信息;
② 节点B回复一条包含自己的身份/Z)2的信息中,同时
根据式(4)计算值作为共享秘密KBA;
③ 节点A根据公式(5)计算出B持有的共享秘密Xab。 主密钥生成时为使无线传感器网络中两个节点确能确定一个对称的秘密并且该秘密仅仅被
这两个节点所共享。会话密钥的建立阶段,传感器节点总是要广播信息给它们的直接邻居,每个节点都必须与它的邻节点随机产生一个安全的会话密钥,会话密钥仅仅被用来加密和认证它 们之间发送或者接受到的消息。如果节点A接受了一条来自节点B的消息,但是A不能解密和 认证这条信息,则节点A启动协议2来完成密钥协商的过程。 协议3:会话密钥建立协议
Request: A计算出它与消息源节点的共享秘密/^vb,然后选择一个随机数^a作为会话密钥, 用Kab加密后,连同自己身份/DA —起发送给节点B ,即A向B发送消息A/产((KAkAB, /A0。 ②Reply:发送者B根据A的身份信息计算出Kab解密求出并用^ab加密它自己的密钥KB 给A作为回应,即A向B发送消息恥=((KB) kab, /£>b)
实施实例 一种容忍入侵的无线传感器网络拓扑生成方法,图2(a)显示了算法l执行完的 第一个循环后的情景,依据算法l有^^r,因而在形成次序上相邻的两个黑色节点之间距离
小于节点的通信半径,可以直接通信。
此外,在算法l形成的拓扑图中,若标记出边长为n的正方形虚拟网格,由于本文假设传 感器节点在配置时具有足够髙的密度,因而则任意一个虚拟网格中必有一个黑色节点;而由公 式(l)知^+"根据勾股定理,可以很容易的证明任意两个相邻网格内的节点间距离小于通信 半径r,即任意两个空间位置上相邻的黑色节点之间可以直接通信,如图2(b)所示,处于运行态 的黑色节点已经形成了一个连通的网络拓扑;灰色节点可以关闭通信模块,达到在全网范围内 节省能量的目的。图2(b)中保证了任何一个黑色节点的通信半径内有多个黑色节点,这就使得 网络不会因为单点失效而失败,且一定数量(f个)的节点失效后,不会造成某个黑色成为信息孤 岛。
对于网络的安全结构,在具体的实验中,我们的网络规模并不大,因此可以把/Z)取值限制 在一个较小的范围,如0</£><216。然后每个节点采用式(6)的秦九韶算法来求这个秘密值,该算 法可以有效的减少多项式运算中的乘法运算次数,将乘法运算的次数由0(力2)减少到O(O次。
=(...(a,/Z>+ +a,_2/D" + &
畔..(a, /D.+ aM )/D + a,—2 )/D +…+ a, )/D + a0 (6)
当传感器节点布置完成后,两个节点A、 B要进行通信,则只需要发起者A发出包含了自 己的身份IDA请求信息,B在回复信息中包含自己的身份IDB即可,然后各自根据式(2)求值, 即可求出共享秘密值,可以用作对密钥材料。这个方法具有一定的容侵性能,对不超过/个节 点被俘虏(入侵)的情形下,是无条件安全的,在协作式传感器网络中,这意味着一个攻击者必 须至少入侵f个节点才有可能破坏整个网络的机密性,从而安全结构本身也是容侵的。
权利要求
1.一种容忍入侵的无线传感器网络拓扑生成方法,其特征是使用基于三色思想的拓扑生成方法,首先将所有节点染成白色,任选一节点染成黑色节点,使用功率控方法,使用邻节点发现协议寻找簇半径r1和控制半径r2内点并分别染成灰色和黑色,对所有黑色节点重复使用这种基于功率控制的染色方案,直到所有白色节点都被染成黑色或灰色节点为止,生成黑色节点为活动节点、灰色节点为休眠节点的两层网络拓扑。
2. 根据权利要求1所述的容忍入侵的无线传感器网络拓扑生成方法,其特征是邻节点发现协议中的簇半径n和控制半径r2的值需满足,
3. 根据权利要求l所述的容忍入侵的无线传感器网络拓扑生成方法,其特征是邻节点发现 协议中,发起者A以通信半径r广播用会话密钥《a加密后的邻节点査询消息,该消息包含发起者A的节点身份接收到邻节点査询消息的接收者B,用会话密钥《a解密后记录发起者A 的节点身份//),并将自己的节点身份/Z)用会话密钥《b传送给发起者A作为回复;发起者A 收到接收者B的恢复消息后,用会话密钥^b解密后记录接收者B的节点身份/D,该协议相关 节点进行了 2次握手,仅发送了两条消息。
4. 根据权利要求3所述的容忍入侵的无线传感器网络拓扑生成方法,其特征是会话密钥 尺a和&由会话密钥建立协议生成,会话密钥建立协议由Request和Reply两条信息组成的一次 交互生成;Request是发起者A计算出它与接收者B的共享秘密《AB,然后选择一个随机数《A 作为会话密钥,用^ab加密后,连同自己节点身份/£> 一起发送给B,即A向B发送消息 M=((KAkAB,/£>A), /"a为接收者A的节点身份ID; Reply是B收到M,后,根据A的身份信息计算出《ab解密求出《a,并用《ab加密它自己的密钥^b给A作为回应,即A向B发送消息械=((Kb) kab, /Db), JDb为接收者B的节点身份ID。
5. 根据权利要求4所述的容忍入侵的无线传感器网络拓扑生成方法,其特征是会话密钥建 立协议中的共享秘密尺ab称为主密钥,由主密钥协商协议生成,主密钥协商协议的发起者A向 接收者B发出包含了自己的身份/£>A的请求信息;B回复一条包含自己的身份/£ B的信息;A、B根据计算公式Kab =7(/£>A, /i B)计算出共享秘密^ab。
6. 根据权利要求3所述的容忍入侵的无线传感器网络拓扑生成方法,其特征是节点身份/£> 是在传感器节点布置以前,由网络部署者指定分配的。
7. 根据权利要求5所述的容忍入侵的无线传感器网络拓扑生成方法,其特征是计算公式^ab^/(/Av,/Z)b)中函数/由网络部署者随机产生,是一个在某一无穷域F上度数为f的对称双变量多项式/0,力=j] x'/( ="力)。<formula>formula see original document page 2</formula>
全文摘要
一种容忍入侵的无线传感器网络拓扑生成方法,使用一种基于三色思想的拓扑生成方法,分别表示传感器网络节点分为初始状态、休眠状态和运行状态三种状态,通过让部分节点休眠达到节省网络总能耗延长网络寿命的目的,同时生成的多连通的拓扑结构具有几何上的容忍入侵特性,即当不超过一定数目的节点失败时,不影响网络的连通性。该方法中使用了一种轻量级的安全结构,可提供主密钥协商协议、会话密钥协商协议以及会话密钥加密的数据传输。加密数据的会话密钥丢失可及时更新,不影响主密钥的安全性,提供了适用于变动拓扑的前向保密性和后向保密性,在不超过t个节点被俘虏变节或被复制时,不影响安全结构整体,具备安全意义上的容忍入侵特性。
文档编号H04L9/08GK101409617SQ20081015572
公开日2009年4月15日 申请日期2008年10月8日 优先权日2008年10月8日
发明者王良民, 罗军舟, 韩志耕 申请人:东南大学