1、计算机学报2009 年 6 期MANET 节点不相交多路径安全源路由协议冯 涛 1,2) 郭 显 1,3) 马 建峰 2) 李 兴华 2)1)(兰州理工大学计算机与通信学院,兰州,730050)2)(西安电子科技大学计算机网络与信息安全教育部重点实验室,西安,710071)3)(甘肃联合大学数学与信息科学学院,兰州,730010)摘 要:多路径路由 实现是移动 Ad hoc 网络(MANET) 可靠运行的有效保证。现有 MANET 节点不相交多路径路由协议主要关注节点不相交多路径的可实现性和效率问题。针对节点不相交多路径路由协议MNDP 协议在主动攻击者安全模型中的安全缺陷,提出了可 证明安全
2、的 MANET 节点不相交多路径动态源路由协议 SMNDP 协议。SMNDP 协议路由请求算法中,建立了中间节点路由请求消息传播策略的检错机制、 SMNDP 协议路由应答算法中建立了消息防篡改机制和身份认证机制。基于攻陷的网络拓扑模型,扩 展了可模糊路由概念,提出了多路径可模糊路由集合概念和节点不相交多路径源路由协议的安全定义,并应用于 SMNDP 协议的安全分析。SMNDP 协议的安全性可以归约为消息认证码和签名机制的安全性。关键词:MANET;MNDP;可证明安全;可模糊路由;SMNDP中图法分类号:TP 309Multiple Node-Disjoint Paths Secure Sou
3、rce Routing For MANETFeng Tao1,2), Guo Xian1,3), Ma Jian-feng2), Li Xing-hua2)1) (School of Computer and Communication, Lanzhou University of Technology, Lanzhou, 730050, China)2) (Ministry of Education Key Laboratory of Computer Networks and Information Security, Xidian University, Xian 710071, Chi
4、na)3) (School of Computer and Math, Gansu Lianhe University, Lanzhou 730010, China)Abstract: The implementation of multipath routing provides guarantee for reliable running of mobile ad hoc network (MANET). Most of existing node-disjoint multipath routing focuses mainly on establishment issues of mu
5、ltiple node-disjoint paths and efficiency issues of identifying multiple node-disjoint paths. Multiple Node-Disjoint Paths (MNDP) has secure faults in the secure model of active adversary. To address this issue, a provably Secure Multiple Node-Disjoint Paths source routing (SMNDP) is proposed in thi
6、s paper. Error-check scheme is used for the transmission of the route quest in the alogrithm of route request for SMNDP. In addition, the schemes such as the message authentication and the digital signature are used in the algorithm of route reply for SMNDP. The concept of plausible route is extende
7、d in this paper, and the definition of 收稿日期:2008- - .本课题得到国家 “八六三”高技术研究发展计划项目基金 (2007AA01Z429)、国家自然科学基金(60573036、60633020、60702059)、甘肃省自然科学基金(2007GS04823 ) 、兰州理工大学博士基金资助.冯涛,男,1970 年生,博士,教授,主要研究兴趣为安全协议复合理论,无线传感器网络安全,Email:;郭显,男,1971 生,博士生,讲师,主要研究兴趣为 Ad hoc 网络安全,Email:;马建峰,男,1963 生,博士生导师, 教授,主要研究领域为计算
8、机安全,密码学,移动与无线网络安全。2 计 算 机 学 报plausible-route set is given. And then, security definition of multiple node-disjoint paths routing is presented. The security of SMNDP can be reduced to the security of the message authentication code and the digital signature.Key words: MANET, MNDP, provably secure, pl
9、ausible route, SMNDP.1 引言 多路径路由实现是移动 Ad hoc 网络(MANET)可靠运行的有效保证。为改进网络的可靠性和吞吐量,多路径路由协议成为近几年 MANET 邻域的研究热点。多路径路由可以分为 3 种:节点不相交(Node-Disjoint)多路径、链路不相交(Link-Disjoint)多路径和相交多路径。节点不相交多路径因其各条路径中除源节点和目的节点之外没有其他任何共用节点,因此与链路不相交多路径和相交多路径相比具有更强的容错能力和负载平衡能力。基于流网络(flow network)理论,Liu等 1提出了实现 MANET 节点不相交多路径集合的新方法,
10、利用多次路由发现协议,设计了 k 条节点不相交路径的动态源路由协议MNDP(Multiple Node-Disjoint Paths)协议。然而,MNDP 协议主要关注节点不相交多路径的可实现性和效率问题而没有考虑安全问题,如果存在主动攻击者,该协议不能抵抗active-n-m 攻击 2。安全路由是 MANET 重要的安全需求,目前提出的几个多路径“安全”路由算法试图解决安全问题,如 SecMR3、SRP 4等。然而,都没有用严格的数学方法分析这些协议的安全性而关注的仍是多路径实现问题。文献 4虽用形式化方法(BAN 逻辑)分析了SRP 协议的安全性,但文献 5对 SRP 协议分析发现,SRP
11、 仍存在安全缺陷,并且已证明,路由协议的安全性不经过严格的数学证明是不可靠的。针对无线 Ad hoc 网络,基于攻陷的网络拓扑模型,本文扩展了可模糊路由概念 5-6,提出了多路径可模糊路由集合概念和节点不相交多路径路由协议的安全定义;基于MNDP 协议,提出了 MANET 节点不相交多路径动态安全源路由协议 SMNDP 协议。SMNDP 协议计算辅助路径的路由请求算法中,建立了中间节点路由请求消息传播策略检错机制;SMNDP 协议路由应答算法中,建立了消息的防篡改机制和认证机制。SMNDP 协议的安全性可以归约为消息认证码和签名机制的安全性。2 节点不相交多路径源路由协议的安全定义2.1 攻击
12、者的能力模型通过控制攻陷节点,攻击者能够阻止路由协议完成协议需求的功能。本文假设攻击者能力模型为:1、节点之间用身份相互认证,Sybil 攻击无效; 2、节点仅能够接收到通信信号强度范围内的其他节点传输的信息,Wormholes 攻击无效;3、路由发现过程的源节点和目标节点未被攻陷。攻击者不能修改或控制未攻陷节点之间的所有通信消息;4、攻击者通过攻陷节点实施攻击,并可以使用攻陷节点的所有秘密信息;5、当攻陷节点相邻时,攻击者能用任意攻陷身份假冒这些相邻节点。2.2 基于攻陷的网络拓扑模型讨论 MANET 路由协议之前,假定网络3冯涛 等: MANET 节点不相交多路径安全源路由协议节点通过邻居
13、发现协议已建立了网络拓扑,实现了 MANET 的安全自举 7。基于攻击者能力模型,MANET 拓扑模型的无向图 G(V,E)可以定义为一个构造(Configrations) 5-6,简称构造 conf,如图 1。 u* v* g h F f e d c b a H G E A B C D X,YZ X,YZ 图 1 网络构造根据无线通信链路特点和邻居发现协议,如果能在两个未攻陷节点之间建立无线链路,那么与这两个未攻陷节点相对应的顶点 u 和 v 之间有一条边;如果能在一个未攻陷节点和攻陷节点集合 V*中的某攻陷节点之间建立一条无线链路的话,那么未攻陷节点和攻陷节点相对应的顶点 u 和 v*之间
14、也有一条边。两个相邻攻陷节点 u*和 v*之间没有边,它们被看成了攻陷顶点集合 V*中的单一顶点。用 L 表示身份集合,L *表示攻陷身份集合,用身份分配函数 D: V 2L(2 L 是 L 的幂集)给 V 中的每个顶点分配身份标识。身份分配函数 D 定义如下:v V D(v)= ,其中 l LL*lvL *V用三元组(G(V,E),V *,D)表示构造 conf,假设存在攻击者,那么实黑顶点表示 V*中的攻陷顶点(V *中的顶点在图 G 中不相邻) ,每个顶点用函数 D 分配给它的身份集合作标记。实际上,路由协议是该静态网络构造 conf 上的分布式算法,由于相邻攻陷节点看成了单一攻陷节点,
15、构造 conf 上的顶点不相交多路径路由协议实际上是指未攻陷节点和不相邻攻陷节点不相交多路径路由协议。2.3 可模糊路由集合图 1 中的身份序列A,X,E,D,A,X,Y,E,D,A,X,Y,Z,E,D等是顶点 a,d 之间同一条路径路由a,u *,e,d,主动攻击者能够使用 L*中的所有身份,使身份序列路径路由与顶点序列路径路由不一致。为实现 conf 上的身份序列路径路由与真实存在的路径路由一致,文献 5-6建立了可模糊路由概念,本文扩展了可模糊路由概念,提出了多路径可模糊路由集合概念。定义 1:可模糊路由(plausible route):假设构造 conf =(G(V,E),V*,D)
16、,l 1,l 2,l n是身份序列,如果存在 V 中的顶点序列v1,v 2, ,v k(2kn )和正整数序列j1,j 2, ,j k 使得 j 1+j2+jk=n; , , D(Vi)iJl+iJliJjl+(1ik) ,如果 i=1,J i=0,如果i1,J i= j1+j2+ji-1;(v i, vi+1)E(1ik) 。则称身份序列 l1,l 2,l n 是一条可模糊路由。图 1 中的身份序列l 1, l2, l3, l4, l5, l6=A,X,Y,Z,E,C是可模糊路由,因为该序列可被划分成A , X,Y,Z , E和C四部分,使得A D(a), X,Y,Z D(u*), ED(e
17、), C D(c),顶点序列 a, u*, e 和 c构成图 G 中一条简单路径,该例中k=4, j1=1, j2=3, j3=1, j4=1;那么J1=0, J2=j1=1, J3=j1+j2=4, J4=j1+j2+j3=5,因此该身份序列路由l 1,l2,l3,l4,l5,l6满足可模糊路由的定义。定义 2:可模糊路由集合(plausible-route set):对任意构造 conf=(G(V,E),V*,D) ,假设P 是图 G 中任意一对顶点 u, v 之间多路径路由的集合,如果 P 满足以下条件:任意 pi P,p i 是一条可模糊路由;任意 pi,p j P(ij) ,与 pi
18、 和 pj 对应4 计 算 机 学 报的顶点集合分别是 Vi 和 Vj, 并且(Vi Vj)u,v =, 即 pi 和 pj 是两条除顶点 u、 v 外 , 顶点不相交的可模糊路由。则称 P 是顶点 u,v 之间的可模糊路由集合。如图 1 中,A,G,H,X,Y,Z,F,D ,A,X,Y,Z,E,D,A,B,C,D是顶点 a 和 d 之间的可模糊路由集合,除源顶点 a 和 d 外,它们分别与图 1 中顶点不相交路径a,g,h,v *,f,d、a,u*,e,d、 a,b,c,d对应。2.4 路由协议的安全定义定义 3:如果对任意构造 conf=(G(V, E), V* ,D)和任意攻击者 A,一
19、个节点不相交多路径源路由协议仅以可以忽略的概率返回非可模糊路由集合,则称该协议是一个节点不相交的多路径安全源路由协议。节点不相交多路径源路由协议的安全意味着,任何攻击者不能使路由发现的发起者以不可忽略的概率接受非可模糊路由集合。就是说,节点不相交多路径安全源路由协议仅以可以忽略的概率返回一个非可模糊路由集合,与这个“可以忽略概率”相关的事实是:攻击者伪造密码学原语(如签名机制,消息认证码)的可能是小概率事件。3 MNDP 协议概述假设源节点为 B, 目的节点为 E, MNDP协议主要步骤是:首次路由发现中,使用动态源路由协议 DSR8计算首条参考路径(Reference Path) ;第二次路
20、由发现中,基于流网络计算最大流的 Ford-Fulkerson 方法 9,中间节点根据首条参考路径和路由请求传播策略计算辅助路径(Auxiliary Path) ;节点 E生成路由应答并单播得到的辅助路径给源节点 B;节点 B 根据参考路径和新辅助路径,重组生成两条节点不相交路径。后续路由发现中,协议将前次获得的 k 条节点不相交路径作为参考路径,计算新辅助路径,直到某次路由发现找不到新的辅助路径为止。此时得到的节点不相交路径集合就是节点不相交的最大路径集合。再假设中间节点为 t,节点 p 是路由请求消息的发送者(p 有可能是源节点 B) ,t 是路由请求消息的接收者(t 有可能是目的节点E)
21、 ,当节点 t 接收到节点 p 的路由请求消息RREQ 时,根据节点 t 是否是属于参考路径rpi 上的节点,分别执行不同的消息传播策略。传播策略如下表 1,其中rpx( 1 x n, n 是参考路径集合中的路径条数)表示参考路径集合 rp 中的某条参考路径。4 SMNDP 协议及其安全分析消息发送者 p ,消息接收者 t t 策略策略序号节点 p, t与 rpx关系节点 p, t 在同一 rpx中的位置关系 传播 身份P,t rpip 是 t 后续 广播 追加 1p 是 t 前驱 不传播 不追加 2rpi 中非邻居 单播给 rpi 前驱 追加 3P rpi, t rpj 无 单播给 rpi
22、前驱 追加 4P rpi, t rpx无 广播 追加 5p rpx, t rpi 无 单播给 rpi 前驱 追加 6P,t rpx 无 广播 追加 7表 1 MNDP 协议辅助路径路由请求传播策略5冯涛 等: MANET 节点不相交多路径安全源路由协议4.1 SMNDP协议MNDP 协议没有采用任何安全机制和检错机制,主动攻击者可以通过攻陷中间节点违反计算辅助路径的路由请求传播策略,修改路由请求消息中的参考路径信息,修改路由应答消息中的辅助路径信息,使得MNDP 协议建立节点不相交多路径路由的协议需求难以实现。在此情况下得到的路径本文称为非辅助路径(nonauxiliary path) 。本文
23、提出的 SMNDP 协议与 MNDP 协议节点 lm-1, lm, lm+1 与 rp*关系 节点与 rpx关系节点在同一rpx 中的位置关系lm+1 策略消息接收者 lm+1ap 中后两节点lm-1, lm 传播 身份 编号lm+1 rp*lm-1 rp*,lm rp*无 无 广播 RREQ 追加 1lm-1 rp*,lm rp*lm-1 rpi; 无 广播 RREQ 追加 2lm-1 rp*,lm rp* lm rpi; 无 不传播(7) 不追加 3lm-1 rp*,lm rp*lm-1 rpi;lm rpj无 不传播(5) 不追加 4lm-1,lm rpilm-1 是 lm 后续 广播
24、RREQ 追加 5lm-1 是 lm 前驱 不传播(3) 不追加 6lm-1,l m 非邻居 不传播(4) 不追加 7lm+1 rp*lm-1 rp*,lm rp*lm+1 rpi; 无 单播给 rpi 上lm+1 前驱 追加 8lm-1 rp*,lm rp*lm+1 rpi 不需考虑 单播给 rpi 上lm+1 前驱 追加 9lm-1 rp*,lm rp* lm rpi;lm+1 rpj 无 不传播(7) 不追加 10lm, lm+1 rpi lm 是 lm+1 后续 广播 RREQ 追加 11lm 是 lm+1 前驱 不传播(7) 不追加 12lm, lm+1 非邻居 不传播(7) 不追加
25、 13lm-1 rp*,lm rp*lm-1,lm rpi ,lm+1 rpj lm-1 是 lm 后续 单播给 rpj 上lm+1 前驱 追加 14lm-1 是 lm 前驱 不传播(3) 不追加 15lm-1,l m 非邻居 不传播(4) 不追加 16lm-1 rpi ,lm,lm+1 rpj lm 是 lm+1 后续 广播 RREQ 追加 17lm 是 lm+1 前驱 不传播(5) 不追加 18lm, lm+1 非邻居 不传播(5) 不追加 19lm-1,lm+1 rpi ,lm rpj 不需考虑 不传播(5) 不追加 20lm-1,l m ,l m+1 rpilm-1 是 lm 后续lm
26、 是 lm+1 后续广播 RREQ 追加 21lm-1 是 lm 前驱或 lm 是 lm+1前驱不传播(3) 不追加 22lm-1,l m 非邻居或 lm,l m+1非邻居不传播(4) 不追加 23lm-1 rpi,l m rpj,lm+1 rpk无 不传播(5) 不追加 24表 2 SMNDP 协议辅助路径路由请求传播策略6 计 算 机 学 报不同的是:(1)基于第二节提出的网络拓扑模型,SMNDP 协议利用构造 conf 中攻陷顶点不相邻这一事实,计算辅助路径的路由请求算法中引入了检错机制;(2)SMNDP 协议的路由应答算法中引入了身份签名认证机制和消息认证码(MAC)防篡改机制。4.1
27、.1 SMNDP 协议路由请求算法SMNDP 协议路由请求算法包括首条参考路径路由请求算法和辅助路径路由请求算法。类似 MNDP,采用 DSR 协议路由请求算法计算首条参考路径,本文不作详述,重点讨论根据参考路径计算辅助路径的路由请求传播策略。假设源节点为 B, 目的节点为 E, 身份为 lm+1 的中间节点收到的路由请求包含ap=(l 1, , lm-1, lm)的辅助路径 , lm 有可能是源节点 B,l m+1 有可能是目的节点 E。当节点 lm+1 接收到该路由请求消息 RREQ 时,根据节点 lm-1, lm, lm+1 是否属于参考路径 rp*上的节点和它们在参考路径上的位置关系,
28、分别执行不同的消息传播策略,传播策略如上表 2。表 2 中 rp*表示参考路径集合中任意一条路径,传播策略括号中的编号表示,SMNDP 的检错机制检测到 lm 违背了MNDP 传播策略的某条规则。引理 1:基于攻陷的网络拓扑模型,如果消息认证机制(MAC)是安全的,那么SMNDP 协议返回 conf 上一条非辅助路径的概率是可以忽略的。证明:假设 ap 是 SMNDP 协议本次路由发现找到的非辅助路径,ap= ( li, li+1, , li+q, li+q+1, ) ,其中 li, li+q+1 是未攻陷节点的身份,分别分配给了 conf 中的顶点 u,w。l i+1, , li+q 是攻击
29、者 A 拥有的攻陷身份的任意一个序列,分配给了 conf 中的攻陷顶点 v*,为计算该辅助路径 ap 节点 li+q+1 收到的路由请求消息是:那么,在路由发现过程中,当节点 li+q+1收到该 RREQ 是,对每条参考路径rpxrp( 1xn, n 是参考路径条数) ,节点li+q+1 要做如下验证和处理: v* rpx( 1 x n) ,即 v*在某条参考路径rpx 上,根据 SMNDP 协议中辅助路径发现协议的传播策略 3-7 以及 10-24,节点li+q+1 能够检测出攻击者 A 在顶点 v*上是否遵循 SMNDP 协议中辅助路径路由请求传播策略的要求转发或删除路由请求消息RREQ。
30、如果攻击者 A 未按 SMNDP 协议要求转发路由请求,节点 li+q+1 将删除由攻击者 A 在顶点 v*上转发给它的路由请求RREQ,如表 2 中的传播策略 3,由于 v*在某条参考路径 rpx 上,u 和 w 都不在参考路径上,则攻击者 A 在顶点 v*上应把RREQ 单播给参考路径 rpx 上顶点 v*的前驱,因此当节点 li+q+1 在顶点 w 上收到来自顶点 v*的 RREQ 时删除该 RREQ 而不转发。也就是说,如果攻击者控制的攻陷节点在参考路径上,未攻陷节点 li+q+1 根据未攻陷顶点 u、 w 与攻陷顶点 v*在参考路径集合 rp 上的位置关系转发 RREQ,而没有直接根
31、据攻击者在 v*上转发的 RREQ 转发RREQ,这样,由于这种错误检测机制的引入,节点 li+q+1 能够检测出攻击者不按SMNDP 协议要求转发 RREQ 的错误行为并取消其转发的 RREQ。攻击者要使本次路由发现得到的 ap 是非辅助路由的唯一可能是修改参考路径集合 rp。然而,源节点 B 收到的来自目的节点E 的路由应答消息 RREP 中,包含目的节点 E 对收到的路由请求中参考路径集合 rp和路由发现标识符 ID 的消息认证码MAC,源节点 B 根据 MAC 和路由缓存表中已发现节点不相交路径集合,能够检测到攻击者在某攻陷节点上修改参考路径集合的攻击并删除该路由应答消息。因此,如果消
32、息认证机制是安全的,SMNDP 协议返回 conf 上一条非辅助路径的概率是可7冯涛 等: MANET 节点不相交多路径安全源路由协议以忽略的。 v* rpx( 1xn) , 即 v*不在任何参考路径上在这种情况下,当 RREQ 到达 w 时,根据未攻陷顶点 u、 w 和攻陷顶点 v*在参考路径上的位置关系(表 2 中的传播策略1,2,8,9) ,节点 li+q+1 无法判断攻击者是否按协议要求转发 RREQ,因为攻击者收到的 RREQ 可能是 u 的广播消息( u 不在任何参考路径上,或 u 在某条参考路径rpx( 1 x n) 上并且给 u 转发消息的顶点是路径 rpx 上顶点 u 的后继
33、) ,也可能是窃听到的 u 单播给它的直接前驱的单播消息(u 在某条参考路径 rpx( 1 x n) 上,但给 u 转发消息的顶点既不是路径rpx( 1 x n) 上顶点 u 的前驱,也不是 u的后继) ,需 ap 中的节点 li-1 协助才能做出正确判断。不过,如果顶点 v*不在参考路径上,即使攻击者不按照 SMNDP 协议执行,得到的 ap 与路由表中的可模糊路由集合在源节点重组不会出现相交路由。因此,出现这种情况得到的路由如果是可模糊路由,重组仅产生可模糊路由集合的要求仍能满足,我们把该 ap 仍当作辅助路径。4.1.2 SMNDP 协议路由应答算法SMNDP 协议在路由应答算法中引入了
34、节点身份认证机制(签名机制)和消息认证机制(MAC) 。身份认证机制是 SMNDP 协议返回可模糊路由的保证,消息认证机制是SMNDP 协议返回辅助路径的保证。假设当前参考路径集合为 rp ,SMNDP 协议的路由应答算法如下图 2 所示。引理 2 基于攻陷的网络拓扑模型,如果签名机制对选择消息攻击是安全的,那么SMNDP 协议返回 conf 上一条非可模糊路由的概率是可以忽略的。证明:假设 SMNDP 协议某次路由发现返回的路由 ap=(l B, l1, , ln, lE)是构造conf 中的一条非可模糊路由,并且源节点 B收到的与路由 ap 相对应的路由应答消息msg=,()BEKMACs
35、idrp, ElSignl1lSig(a)目的节点 E 处理路由请求 RREQ:目的节点 E 收到路由请求 RREQ目的节点 E 对源与目标节点的身份 lB, lE, 和 ap 生成签名 ,并且用与 B 协商的密ElSg钥 KB, E 生成对 ID, rp 的消息认证码 以及生成路由应答消息,()KMACIDrp,,BE, Eli随后,目的节点 E 把该 RREP 单播给 ap 中的最后一个节点 ln,并删除 RREQ 其他副本。(b)中间节点 i 处理路由应答消息 RREP:节点 i 收到路由应答消息 RREP 时,验证自己的身份 li 是否属于 ap,l i 的前驱(源节点在 ap 中没有
36、前驱)和后继(目的节点在 ap 中没有后继)是 li 的邻居以及验证 ap 中 li 后面的节点和目标节点的签名,如果验证失败,节点 i 删除该 RREP,否则节点 i 对 lB, lE, ap 生成签名 以及生成路由应答消息ilSg,()KMACIDrp, ElinlilSg(c) 源节点 B 收到如下 RREP 时,BE, ElSignli1li(1)rp= , 验证 ap 中第一个节点是否是它的邻居以及 RREP 中的所有签名,如果这些验证成功,B 接受 ap 作为第一条参考路径,否则删除 RREP;( 2)如果 rp , 除验证 ap 中第一个节点是否是它的邻居以及 RREP 中的所有
37、签名外,源节点 B 还根据当前参考路径集合 rp 验证消息认证码 是否正确,如果这些验证成功,B,()BEKMACIDrp,接受 ap 作为一条新的辅助路径,否则删除 RREP 并启动新的路由发现。图 2 SMNDP 协议路由应答算法8 计 算 机 学 报进一步假设在源节点 B 中 msg 通过了由SMNDP 协议路由应答算法要求的所有验证,这意味着 msg 中的所有签名都是正确的,攻击者没有伪造未攻陷节点的签名,源节点 B有一个身份为 l1 的邻居。由构造 conf 的定义,攻陷顶点不可能是邻居,每个未攻陷顶点有一个分配给它的未攻陷的唯一身份,那么包括(l B, l1, , ln, lE)
38、,每个路由都可以这样分割:每个未攻陷的身份形成一个分割,每个连续的攻陷身份序列形成一个分割。让P1, P2, , Pk 是路由(l B, l1, , ln, lE)的分割并且是唯一分割,身份序列(l B, l1, , ln, lE)是非可模糊路由意味着至少下面两种情况之一成立:1 存在两个相邻分割 Pi=lj和Pi+1=lj+1, lj 和 lj+1 是未攻陷的身份,但是与 lj 和 lj+1 相对应的未攻陷的顶点u, v 不相邻;2 存在三个相邻分割Pi=lj,P i+1=lj+1, , lj+q和Pi+2=lj+q+1,其中 lj 和 lj+q+1 是未攻陷身份,l j+1, , lj+q
39、 是攻陷身份,但是与身份 lj 和 lj+q+1 相对应的未攻陷顶点u,w 没有共同的相邻攻陷顶点。我们说明在以上两种情况中,攻击者肯定伪造了一个未攻陷节点的签名。第一种情况中,因为身份为 lj+1 的节点未被攻陷,并且它发现路由表中它前面身份为 lj 的节点不是它的邻居,因此身份为 lj+1的节点不会对路由应答消息签名。这样,攻击者肯定在 msg 中伪造了签名 。1jlSig+第二种情况中,假设攻击者没有伪造任何未攻陷节点的签名,那么身份为 lj 的节点肯定在顶点 u 上收到了攻击者 A 在攻陷顶点v*(v *与顶点 u 相邻)上转发给它的消息:msg=,()BEKMACsidrp, ElS
40、ignl1jlSig+又因为 lj+1 是已攻陷节点身份,这样未攻陷节点不可能发送具有签名 的路由应答消息1jli+msg。攻击者 A 要在攻陷顶点 v*上生成消息msg,它肯定收到了来自与攻陷顶点 v*相邻的另一顶点 (某攻陷或未攻陷的顶点)转xv发的消息msg=,()BEKMACsidrp, ElSignl1jqlSig+由假设,身份为 lj+q+1 的节点未攻陷,攻击者 A 不可能伪造身份为 lj+q+1 的节点签名,那么只有身份为 lj+q+1 的节点在与其对应的未攻陷顶点 w 上生成并转发消息 msg,即与攻陷顶点 v*相邻的顶点 就是未攻陷顶点 w,xv也就是说,攻陷顶点 v*是与
41、未攻陷顶点 u 和w 都相邻的攻陷顶点,这与第二种情况的假设矛盾。由以上两种情况说明, “攻击者没有伪造未攻陷节点签名”的假设不可能成立,攻击者 A 肯定伪造了一个未攻陷节点的签名。但是,如果 SMNDP 协议签名机制对选择消息攻击是安全的,攻击者 A 伪造一个未攻陷节点的签名的概率是可以忽略的,即 SMNDP协议返回一条非可模糊路由的概率是可以忽略的。4.2 SMNDP协议安全性分析SMNDP 协议的每次路由发现主要由四个步骤组成:(a)为启动一次路由发现过程,9冯涛 等: MANET 节点不相交多路径安全源路由协议源节点 B 广播路由请求:,其中 lB, lE 是源与目的节点身份,ID 是
42、路由请求标识符,rp 是节点 B 得到的节点不相交路径集合,ap为空;(b)中间节点 i 处理路由请求 RREQ:如果中间节点 i 已处理过该 RREQ,删除该RREQ;否则,如果 rp= ,按 DSR 的路由请求算法向目的节点转发 RREQ;如果rp , 如表 2 处理路由请求; (c)目的节点E 生成路由应答 RREP 和中间节点 i 处理路由应答 RREP:如图 2;(d)源节点处理路由应答 RREP(图 2)并重组:重组算法与MNDP 协议的重组算法类似,参见文献 1。定理 1:如果签名机制和消息认证机制是安全的,那么 SMNDP 协议是可证明安全的MANET 节点不相交多路径源路由协
43、议。证明:仅给出主要的证明思路。对任意构造 conf=(G(V,E),V*,D)和任意攻击者 A,说明路由发现过程启动者 B 收到非可模糊路由或非辅助路径的概率是可以忽略的即可,即说明:(1)某次路由发现得到的辅助路径 ap 是conf 上的一条非可模糊路由的概率是可以忽略的。见引理 2。(2 )某次路由发现得到的 ap 是 conf 上的一条非辅助路径的概率是可以忽略的;SMNDP 协议返回非辅助路径的唯一可能是攻击者修改参考路径集合 rp,见引理 1。SMNDP 协议路由应答算法中对参考路径集合 rp 使用了防篡改机制(消息认证码 MAC) ,路由发现的启动者 B 根据MAC 能够发现这种
44、攻击并删除包含非辅助路径的路由应答。因此,只要消息认证机制是安全的,本次路由发现得到的 ap是 conf 上的一条非辅助路径的概率是可以忽略的。由(1) 、 (2)可见,SMNDP 协议本次路由发现返回非辅助路径和非可模糊路由的概率是可以忽略的,因此,源节点 B 重组产生非可模糊路由集合的概率也是可以忽略的,SMNDP 协议是可证明安全的 MANET节点不相交多路径源路由协议。证毕5 总结建立节点不相交多路径是 MANET 的困难问题,基于 MNDP 协议本文提出了节点不相交多路径安全源路由协议 SMNDP 协议。与 MNDP 协议不同的是,该协议的路由发现算法中采用了检错机制和密码学机制,并
45、且证明 SMNDP 协议满足提出的安全定义。本文主要讨论了节点不相交多路径源路由协议的安全问题,以后将用类似方法讨论其他类型多路径路由协议(如距离适量多路径路由协议)的安全性。再者,以后将对 SMNDP协议的效率进行优化,如中间节点使用单一聚合签名(aggregate signature)机制降低网络开销等。参考文献1 Changwen Liu, Mark Yarvis, W. steven Conner, Xingang Guo.Guaranteed On-Demand Discory of 10 计 算 机 学 报Node-Disjoint Paths in Ad hoc Networks
46、. Computer communications, 2007, Vol 30:2917-2930.2 Y.-C. Hu and A. Perrig.A Survey of Secure Wireless Ad Hoc Routing. IEEE Security and Privacy Magazine, 2004, Vol 2(3): 28-39.3 Panayiotis Kotzanikolaou, Rosa Mavropodi, Christos Douligeris. Secure Multipath Routing for Mobile Ad hoc Networks. Ad ho
47、c networks, 2007,Vol 5(1): 87-994 P. Papadimitratos and Z. Haas. Secure Routing for Mobile Ad Hoc Networks. In Proceedings of Communication Networks and Distributed Systems Modeling and Simulation Conference, San Antonio, Texas, 2002, 2731.5 G. Acs, L. Buttyan, and I. Vajda. Provably secure on-deman
48、d source routing in mobile ad hoc networks. Technical Report 159, International Association for Cryptologic Research, 2004.6 Gergely Acs, Levente Buttyan, and Istvan Vajda. Provably secure on-demand source routing in mobile ad hoc networks. IEEE Transactions on Mobile Computing, 2006 , Vol 5(11):1533-1546. 7 FengTao, Ma Jianfeng, Universally Composable Security Concurrent Deniable Authentication Based on Witness Indistinguishable,Journal of Software,2007, Vol 18(11):2871-2881.8 David B. Johnson and David A. Maltz. Dynamic source routing in ad hoc wireless networks . Mobile Computing, 1996,