第28卷第3期 计算机仿真 2011年3月
文章编号:1006—9348(2011)03—0146—04
一种安全的动态源路由协议
李嘉为,郭达伟,张国庆,陈 骁
(西北工业大学自动化学院,陕西西安710129)
摘要:研究了移动Ad hoe网络(MANET)按需路由协议的安全问题,针对DSR路由协议分析了现有安全改进方案的优缺点。
为了防止恶意攻击,降低网络开销,以一种基于椭圆曲线密码体制的高效数字签名算法为基础,结合后向验证策略,提出了
一种适用于DSR协议的安全解决方案(See—DSR)。对协议的安全性进行了论证,并在QualNet仿真环境下进行实验验证。 仿真过程实现了安全算法,同时使用blackhole和rushing两种常见攻击模型测试协议抗攻击能力,结果表明Sec—DSR协议模
型能够以较小的协议开销确保较高的安全性能。 关键词:无线自组织网络;动态源路由协议;椭圆曲线;后向认证
中图分类号:TP393 文献标识码:B
A Secure Dynamic Source Routing
LI Jia—wei,GUO Da—wei,ZHANG Guo—qing,CHEN Xiao
(College of Automation,Northwestern Polytechnical University,Xi’an Shanxi 710129,China)
ABSTRACT:On-demand routing protocol is very popular in multi—hop mobile ad hoc network(MANET)for its low
overhead,but vulnerable to malicious attacks for lack of secure mechanism.The advantages and drawbacks of the
current secure enhancement method based on the DSR are analyzed.A new secure enhancement method based on an
efficient Elliptical Curve Cryptosystem(ECC)digital signature using backward authentication is proposed for DSR
protocol Sec—DSR,which has be proved secure and efficient theoretically.By using the blackhole and rushing attack
model,Sec—DSR is simulated on the QualNet simulation tools.The results show that the proposed secure protocol can
obtain stronger security without sacrificing large overhead.
KEYWORDS:Ad hoc network;Dynamic source routing;Elliptical cuiye cryptosystem;Backward authentication
1 引言
移动Ad hoe网络(MANET)是由一系列具有无线收发装
置的移动节点组成的多跳临时性自组织网络。在此网络中, 任意两个位于相互通信距离之外的节点可通过中间节点进
行数据报文转发。网络中节点一般具有可移动性和资源受
限等特点。按需路由(on—demand routing)是专门为Ad hoc
网络环境提出的。各节点无需周期性广播路由数据分组,而
是当有数据传输时才启动路由过程,故极大的减少了网络协
议开销。典型的按需路由协议有AODV(Ad Hoc On—Demand
Distance Vector)…,DSR(dynamic source routing)L2]等,其中
DSR协议以它的简单和高效的特点,被广泛应用。但是这些
协议在设计时虽然适应了Ad Hoc网络的特点,却忽视了安
全方面的因素,很容易受到来自恶意节点的攻击。常见攻击
有blackhole 攻击,rushingl4 攻击,Sybil 攻击等。
为了防范这些攻击,同时考虑到Ad Hoc网络节点资源
收稿日期:2009—11—17修回日期:2010—02—22
--.——146.-—— 有限,应当采取高效的加密运算机制和严格的认证机制,以
达到安全目的和减少资源的占用以及网络延迟。本文引入
一种高效的数字签名算法和后向认证策略,对DSR路由协
议进行安全改进,提出了一种高效的按需路由安全协议Sec—
DSR并对该协议进行了仿真,应用blackhole和rushing两种
攻击模型对其安全性进行了测试。
2相关工作
作为最早的DSR安全扩展,SRP 协议假设源节点与目
的节点之间存在安全关联(security association),两节点间共
享一个密钥用于保护他们之间的路由信息的不变字段。但
是SRP协议对路由维护信息提供了很少的保护。当节点发
送恶意的路由错误消息时,声称某路由中断(实际是正常
的),SRP不提供任何保护措施。Ariadne” 对SRP进行了进
一步的扩展,可以确定路径上的中间节点所提供信息的真实
性。引入TESLA广播认证技术在路由请求阶段逐跳验证源
路由信息的完整性,同时保证无论是在路由请求还是回复中
都无法修改携带的源路由信息。该方法的不足在于其庞大 的计算开销以及TESLA技术在时钟同步方面的特点与无线
自组织网络的移动性不匹配。SDSR 协议假设组网时存在
一个离线可信机构,为每个节点分发一个与其身份对应的私
钥,避免了证书的使用,减少了资源的消耗。但SDSR安全策
略的开销仍然占用大量的无线自组织网络资源。
3安全路由策略
3.1安全策略
常规的安全策略为双向验证,也就是对于RREQ和
RREP数据报进行验证。但是在节点处理RREQ数据报时无
法确认自己是否会最终成为被选择路径由上的一点。与此
同时,对数据报进行的验证运算和加密运算均会导致数据传
输的延迟;在数据报上添加验证信息如数字签名,会增加包
的长度进而增加带宽的占有量。本文基于DSR按需路由协
议提出一种反向安全验证策略,利用RREP数据报按原有路
径返回的特点,在返回过程中对数据进行数字签名等安全运
算,同时更新路由信息,可以节约资源占用并实现安全目的。
对于RREQ的过程中,各节点正常转发接收到的数据
报,不进行任何安全处理。到达任意中间节点:
,0<P+1 ,的RREQ报文为:
msgs.D. =(rreq,S,D,id,XsX1…Xp)
考虑到这个过程中可能会受到安全的攻击, 不使用
RREQ包更新本身路由表信息,减少了节点接受被篡改的路
由信息的可能。
对于RREP,使用数字签名进行保护。本文在 E尸数
据报中,添加相关的数字签名信息:sign .fo<dest ̄ign,
hopbyhopsign>其中dest_sign表示目的节点 以私钥对数
据报的签名;hopbyhop_sign表示中间节点 ,(0 ),对转
发报文的签名。到达任意中间节点 .的RREP的报文为:
msgs.D. =(rrep,S,D,id,Xs… D,s n— )
本文借鉴文献[9]提出的一种基于身份离线/在线的数
字签名方案对RREP进行数字签名。假定存在一个密钥生
成中心,它根据签名者事先提交的个人身份ID构造公钥和
对应的私钥,连同系统参数一同传回签名者。签名过程被分
为离线和在线两部分,离线签名基于椭圆曲线密码ECC,在
线签名只需要做一次hash运算。与RSA公钥密码体制相比,
ECC体系在同等的安全强度下拥有更小的计算量以及更短
的密钥长度。实验证明该过程资源消耗非常小。
由于RRER中的信息均为固定值,本方法同样使用上述
数字签名方法进行保护。
3.2 安全路由流程
改进后的DSR协议包括准备阶段,路由发现阶段以及路
由维持阶段。
1)准备阶段
每一个节点在加入网络之前都必须向密钥生成中心
(KGC)提交自己的唯一身份(如自己的mac地址等)。根据
这个身份,KGC产生一个对应该节点的私钥,并通过安全的 渠道,通知节点这个私钥以及系统参数。进入网络后,节点
开始计算自己的离线签名。而在路由信息发送前,它会开始
计算在线签名。
2)路由发现
路由启动算法伪代码:
input Xs:源节点;
X。:目的节点;
V={X ,1 n}:节点集;
D 置从KGC得到的私钥;
: 从KGC得到的公钥;
begin
if 对 有数据传输要求then
Xs__+ :msgs.D =(rreq,S,D,id,Xs);;
for VX ∈V,do
if X 收到msgs.D &&X ≠XD then
:msgs.D =(rreq,S,D,id,Xs…X );
end
end
更新sign—info<dest—sign,hopbyhop—sign>;
xD__+X :
msgs D p=tmp,s,D,谗,X sXl…X JXD,sign—info ;
for(i= ,i≠1,i一一),do
if ,检验sign—info成功then
使用 对数据报文进行签名;
更新hopbyhop—sign;
,_ l: msgs.D, =(rrep,S,D,id,Xs… ,sign—info);
更新自身路由表;
end
if 验证sign—info成功then
安全路径 一 建立;
end
end
3)路由维持阶段
当发现路由过期、链路中断等情况时,节点会发送RRER
通知其他节点。为防止恶意节点伪造RRER数据报,对该报
文计算
signinfo<destsign,hopbyhopsign>。
收到报文的节点只有在验证通过后才对自己的路由表
进行操作。为减少资源消耗,某些分组(如acknowledgement
request)不施加保护。
4)基于节点缓存的路由发现过程
由于DSR协议存在路由缓存机制,也就是说当中间节
点转发RREQ时,如果发现自己的缓存中存在到达目的节点
的路由信息,该中间节点会把缓存中的信息加入RREQ路由
信息中,并放弃转发RREQ,回复源节点一个RREP。但是在
这种情况下由于RREQ无法到达目的节点D,因此得不到目
一
147—