摘要:无线传感器网络(Wireless Sensor Networks,简称WSNs)作为一种新的获取信息的方式和处理模式,已成为通信领域的研究重点。而路由协议则是无线传感器网络当前的热点研究之一。目前,针对较为典型的分簇式路由协议LEACH路由协议的研究,是无线传感器网络目前研究的一个热点。介绍了无线传感器网络路由协议常见的攻击类型,并从路由安全的角度建议性的提出了一种对LEACH路由协议针对安全性的改进方案,并应用NS2仿真平台,对改进协议做了仿真并进行了性能分析。
关键词:无线传感器网络;分簇式路由协议;LEACH;路由安全
路由协议属于通信协议簇的底层协议,决定通信流量在网络上的分布,并极大地影响了网络的生存时间。所以,无线传感器网络的可用性和安全性会被资源受限和各种网络攻击所直接影响。尤其是路由协议的攻击,是很容易导致整个无线传感器网络的瘫痪。无线传感器网络的安全研究目前还十分有限,现有的Ad hoc网络的安全机制被借用到许多无线传感器网络的安全中,但是,大多数无线传感器网络环境是没办法直接使用Adhoc网络的安全协议的。所以,在无线传感器网络的所有安全问题中,至关重要的环节和关键技术就是路由的安全。
1 无线传感器网络路由协议常见攻击类型
(1)欺骗、改变或重放路由信息攻击:攻击锁定节点间交换的路由信息,通过篡改、伪造或重放路由信息来进行攻击。
(2)选择性转发攻击:恶意节点在收到数据包时,部分转发或根本不转发收到的数据包,导致数据包不能顺利到达目的地。
(3)女巫攻击:女巫攻击(Sybil)的方式是,恶意节点冒充多个节点,它可以声称自己具有多个身份,甚至可以随意产生多个虚假身份,从而利用这些身份来非法获取信息并实施攻击。
(4)陷洞攻击:在陷洞攻击(Sinkhole)中,攻击者的目标是通过已被攻击者控制的被俘获节点,或者吸引特定区域的几乎所有的数据流通过一个己经受到入侵的节点,产生以该节点为中心的一个Sinkhole。
(5)虫洞攻击:虫洞攻击(Wormhole)通常需要两个恶意节点相互串通,合谋进行攻击。一个恶意节点位于基站附近,而另一个恶意节点距离基站较远。较远的恶意节点广播自己和基站附近的节点可以建立高带宽、低延时的链路,从而吸引周围节点向其发送数据包,从而截断向基站的路由。
(6)HELLO泛洪攻击:恶意节点通过大功率的广播路由或其他信息,使网络中的其他节点认为恶意节点为自己的邻节点,从而将信息发送给恶意节点。
2 基于分簇式LEACH协议的分析
2.1 LEACH协议运行机制
LEACH(Low Energy Adaptive Clustering Hierarchy)协议,全称低功耗自适应聚类路由协议,是最早提出的一个自组织、分布式的分簇路由协议,其后的许多分簇路由都是在它的基础上发展而来的。LEACH协议采用了“轮”的概念,每一轮都由初始化和稳定数据传输两个阶段组成。在初始化阶段,网络将重新选择簇头节点,网络节点遵循成簇算法选出簇头节点,前提是此簇头节点没有担任过簇头,被选出的簇头节点向周围成员节点广播自己成为簇头的信息,其他成员节点遵循耗能最小的原则加入临近的簇头节点,然后簇头节点为簇内成员节点分配通信时隙。在稳定的数据传输阶段,节点收集数据并传输至簇头节点,簇头节点对所受到的数据进行融合处理后发送到sink节点。数据传输持续一定时间后,网络进入下一轮的工作周期。
2.2 LEACH协议容易遭受的攻击
由于LEACH协议采用了单跳的路径选择方式,即所有的传感器节点都有可能和汇聚节点进行直接的通信,所以对Sinkhole攻击、Wormho le攻击、Sybil攻击以及虚假路由信息攻击都有防御能力。但由于在簇形成阶段,成员节点根据簇头节点的信号强弱来选择所要加入的簇,因此,恶意节点可以采用HELLO Flood攻击以大发射功率向全网络广播消息,从而吸引大量成员节点加入该簇,而后恶意节点可以通过选择则性转发、更改数据包等方式,来达到攻击目的。经过以上分析研究表明,LEACH协议最容易收到的攻击就是HELLOFlood攻击。
3 一种适用于LEACH协议的安全解决方案
通过对HELLO Flood攻击方式的了解,提出了LEACH—H协议,并采用了以下安全解决方案:依靠一个可信任的节点利用链路的双向认证和节点的身份验证为每个簇头候选节点向基站和自身的一跳邻居节点证实它的邻居,从而成功对抗HELLO Flood攻击。具体运行机制为:在广播阶段,候选簇头节点向基站和自身的一跳邻居节点发送数据,此数据包含候选簇头节点与基站的共享密钥,基站根据解密密钥来确认候选簇头节点是否正常,若不正常则丢弃数据包;建簇阶段,节点将自己将加入哪个簇的信息发送给基站,基站根据传感器节点和簇首候选节点产生密钥并发给节点,并进行解密匹配,解密成功则接受此候选簇头节点,否则自动丢包。节点从若干接受的候选簇头节点中,选择信号最强的候选簇头节点加入其簇。
4 基于NS2仿真平台的仿真与分析4.1 仿真结果
本文使用NS2仿真平台对改进协议在如下环境中进行仿真研究。仿真环境参数如表1所示。
图1为设置了10个攻击节点时,LEACH—H协议与LEACH协议的节点存活情况比较。横坐标为时间,纵坐标为节点存活数量。由图中可以看出,随着时间的延长,LEACH—H协议的节点存活情况明显优于LEACH协议。由此可以看出,LEACH—H协议有效的解决了LEACH协议在防止网络攻击方面的缺陷。
4.2 性能分析
能耗方面:在成簇阶段采用了密钥验证策略,通过添加链路的双向验证和节点身份验证会造成一定的能耗开销,这是不可避免的。安全方面:在两个节点间进行链路的双向认证,通过检验链路的双向性,可以有效的抵御恶意节点的恶意广播,同时可以向基站揭发恶意节点;在两个节点间进行身份验证,当接收方收到含有正确密钥的消息认证码时,接收方可以确定其必定来自正确的发送方,从而成功对抗攻击。
5 结束语
LEACH协议是基于分簇的典型路由协议,本文通过分析LEACH协议所容易遭受的攻击,建议性的提出了融入安全机制的改进协议LEACH—H协议。经过仿真分析表明,改进后的LEACH—H协议可以有效抵御HELLO Flood攻击。