文献标识码: A
DOI:10.16157/j.issn.0258-7998.2017.04.028
中文引用格式: 吴冬,魏艳鸣,吴方芳. 面向移动自组织网络的随机密钥构建策略研究[J].电子技术应用,2017,43(4):107-111,116.
英文引用格式: Wu Dong,Wei Yanming,Wu Fangfang. A random key construction strategy for mobile Ad hoc network[J].Application of Electronic Technique,2017,43(4):107-111,116.
0 引言
移动自组织网络(Mobile Ad-hoc Network,MANETs)的优点是各通信节点可以动态组网,不需要基础通信设施的配合,因此组网灵活方便,在资源匮乏的场合应用广泛,如应急救灾、军事侦察等[1-3]。但由于网络中的所有节点可以自由出入网络,在数据通信过程中,网络中侵入的恶意节点可能随时随地监听无线网络中的通信内容,这给移动自组织网络的数据通信带来很大安全隐患[4-6]。而且,经典的按需路由协议(AODV和DSR)都没有提供安全防范措施,不具备防范恶意节点攻击的能力,数据通信的安全性不高。为了增强数据通信的安全性,学者们近些年也提出了许多面向移动自组织网络的安全路由协议。如ARAN路由协议在AODV路由协议的基础上,引入了公共密钥体系,用于鉴别数据发送节点的身份,增强路由安全[7]。然而,引入公共密钥体系耗费资源较大。TARF路由协议也是基于AODV路由协议的改进协议,该协议计算每一个节点对其邻居节点的信任度,依据信任度排序来选择下一跳节点,目标是提高多跳通信过程中路由的安全性[8]。然而,该策略尽管可以检测和避开恶意节点,但无法防止恶意节点窃听路由信息。
针对移动自组织网络的通信安全性问题,本文在DSR路由协议[9]的基础上,提出一种随机密钥构建策略,不需要引入公共密钥体系即可为网络中的任意两个节点建立共享的随机密钥,并计算完整路由表示的比特数上下限,防止网络中的恶意节点通过监听方式获取数据通信的真实路由,增强路由的安全性。
1 本文策略
为了便于说明,本文假定节点A和B是网络中的任意两个正常节点,节点E是网络中的任意一个恶意节点,也可以称之为窃听者。本文算法设计的目的是在节点A和B的相互通信过程中,为节点A和B建立一个随机密钥,生成完整路由表示的比特数上下限,防止恶意节点E通过窃听节点A和B的通信内容来获取数据传输的真实路由,从而保护路由的安全性。本文通过3个环节来实现这一目的,分别为路由信息获取、信息协调和随机密钥构建及比特数上下限计算,详细描述如下。
1.1 路由信息获取
在路由信息获取阶段,本文为移动自组织网络中的每个节点建立一个路由信息表(Routing Information Table,RIT),节点在通信过程中需要对该数据表进行维护。路由信息表主要包括三部分内容:路由标识(Routing Flag,RF)、部分路由和完整路由。其中,RF是一个四元组,包含源节点IP、目的节点IP、路由请求ID、路由应答发送节点IP。
下面结合图1说明RIT的建立过程。如图1所示,节点S和D分别表示网络通信中的源节点和目的节点。由于初始状态下节点S没有任何通往节点D的路由,因此它需要产生和广播一个路由请求数据包,这个过程详见DSR路由协议[9]。假设此数据包的ID为5,这意味着该路由请求包是该节点S第5次尝试请求达到节点D的路由。假设路由请求数据包通过路径S→X→Y到达了节点Z,如图1(a)所示。假设节点Z在自身存储的路由列表中有到达目的节点D的路由,那么节点Z会发送路由应答给节点S。从节点Z到节点A的路由应答回传路径如图1(b)所示,即Z→Y→X→S,这和双向网络是一致的。每个接收路由应答的中间节点将此源路由插入自身的RIT中。RIT包含三个部分,分别是RF、部分路由和完整路由。在上述示例中,源节点IP为S,目标节点IP为D,路由请求ID为5,路由应答发送节点为Z。那么,RF可以记为{X,D,5,Z}。节点S、X、Y和Z都会在各自的RIT中记录该RF。中间节点(即节点X和Y)可以通过搜索其自身的路由请求表来获取路由请求ID。RIT的部分路由是指从源节点到路由应答发送节点之间的路由,即S→X→Y→Z。完整路由是指源节点到目的节点的整个路由,即S→X→Y→Z→D。这样,上述示例中节点S、X、Y和Z的RIT相同,如表1所示。
从上述示例可以看出,节点D没有直接监听到来自节点S的路由请求,因此它也无法确定RF中的路由请求ID。那么,对于共享这条路由的两个节点,再建立两者之间共享的随机密钥时,节点D可能作为一个恶意节点(窃听者)存在,因为该节点知道这条完整路由。需要指出的是,如果两个节点在其自身的RIT中拥有相同的RF,那么这两个节点的RIT中与RF相关联的完整路由也是相同的。但完整路由仅对网络中有限数量的节点有效,那些不在源路由上、但却偶然窃听到路由请求和路由应答的节点,不能让其窃听到完整路由,下面通过信息协调和随机密钥构建手段来增强两个节点通信的安全性。
1.2 信息协调
信息协调涉及信道编码和信源编码技术,实现过程通常比较复杂。信息协调可以为公共信道上传输的信息量设置一个约束性边界,该边界降低数据传输的不确定性,减少恶意节点窃听的信息量。在本文中,每一个完整路由都是用RF唯一标识的,从而使信息协调变得非常简单,仅需很少通信开销即可进行信息协调。详细描述如下。
对于移动自组织网络中的任意两个正常节点A和B,两个节点在其RIT中共享了许多路由。譬如,A可能会首先注意到B是其RIT中部分路由的一部分,可以让B来执行信息协调,其目的是最终生成一个共享的随机性密钥。B在尝试进行信息协调时,A会发送给它一个与A的RIT中的部分路由相对应的RF列表,其中包括B的地址。然后,B可以验证其RIT中是否接收到该RF,对于那些无法定位的RF,B再将其转发回A。这样,节点A和B即可完成信息协调工作,两者共享一组完整路由,可以用其构建两者共享的随机密钥。
这里存在一个安全问题,解释如下。RF四元组是与每一个路由请求和路由应答对相对应的,该四元组涉及3个节点,即源节点、目的节点和路由应答发送节点。另外,信息协调两端的节点A和B有可能既不是源节点也不是目的节点,还不是路由应答发送节点。那么,在信息协调过程中,通过公共通道转发RF可能会暴露路由中的5个节点,包括源节点、目的节点、路由应答发送节点、节点A和节点B。在实际应用中,可以通过限制信息数量来降低信息协调过程造成的信息泄露[10]。本文提出一种新的防泄露策略,具体是通过共享的随机密钥比特数的上下限来限制信息泄露。其中,比特数下限对应的是RF明文传输的情形,此时情形下泄露的信息最多,完整路由表示所需要用的比特数最少。比特数上限对应的是RF在传输过程中通过一些加密机制进行完全保护的情形,此时情形下泄露的信息最少,完整路由表示所需要用的比特数最多。下面详细介绍这两种情形下信息协调过程可能产生的信息泄露问题。
(1)RF明文传输情形
当RF采用明文方式进行传输时,窃听者可以从监听到的RF中获取完整路由的一些信息。至于信息会泄露多少,这与节点A和B、路由以及RF的属性相关。为了便于说明,将RF四元组细分为七种类型,然后再根据它们的信息泄露行为归纳为3个不同的组,如表2所示。
在表2中,A*和B*可以分别表示节点A和B,也可以分别表示节点B和A。而X、Y、Z用于表示与A和B不同的其他3个节点。在组1中,节点A和B分别是源节点、目的节点和路由应答发送节点三者中的两个,那么,通过窃听RF最多可能会泄露完整路由中3个节点的信息。在组2中,节点A或B是源节点、目的节点和路由应答发送节点三者中的一个。那么,通过窃听RF最多可能会泄露完整路由中4个节点的信息。在组3中,节点A和B既不是源节点,也不是目的节点,还不是路由应答发送节点,那么此时通过窃听RF最多可能会泄露完整路由中5个节点的信息。
(2)RF完全保护情形
在这种情形下,信息协调过程中可能泄露给窃听者的可能信息是A和B出现在每一个完整路由中的身份信息。
1.3 随机密钥构建及比特数上下限计算
本文用节点地址集合来表示一个完整路由。节点A和B在信息协调之后共享了一个完整路由列表,假设共享的完整路由数量为h,那么节点A和B可以构造一个数量为h的修剪路由集合M={mi|i=1,…,h}。其中,mi可以称为修剪路由,通过从完整路由ri中去除A和B的地址得到。这样,完整路由和修剪路由是一一对应的。
为了从每一个子集Mk中提取共享密钥,依据网络中所有节点商定的映射关系,节点A可以采用相同长度的二进制字符串来表示所有完整路由。假设移动自组织网络中节点总数为N,一个完整路由的节点数量上限为M,那么,可能包含节点A和B的完整路由的数量为:
用完整路由数量对应的比特数可以表示任意一个完整路由,譬如完整路由数量为128,则比特数的位数也为128,每一位代表一条完整路由,该位的数值为1时表示该比特位所对应的完整路由存在,数值为0时表示该比特位所对应的完整路由不存在。这样,表示完整路由所用的比特数可以看作一个二值比特序列,可以通过异或运算和随机运算[11]生成一个较短的比特串,该比特串即为本文所指的节点A和B之间共享的随机密钥,记为sk。文献[12]指出,从比特序列中提取的比特串数量应当有上限,其值非常接近于比特序列的平滑最小熵,平滑最小熵[12]定义为:
依据最小熵,即可计算随机密钥的比特数,再乘以修剪路由集合的数量,即可得到总的比特数。由于概率值的计算与RF的传输方式(即明文传输还是完全保护)相关,这样,在明文传输和完全保护两种极端模式下,可以通过最小熵推断出两节点共享的随机密钥比特数的上下限,用于限制信息泄露。
下面介绍明文传输和完全保护两种方式下概率值的详细计算方法。
1.3.1 RF明文传输方式
当RF采用明文传输方式在节点A和B之间传输时,窃听节点E能够推断出一些关于A和B约定的完整路由信息。另外,窃听节点E没有偷听到的完整路由也可能泄露一些信息。路由越长,越易被窃听节点E窃听。因此,主要关心概率分布p(r|ρE(r)=0,RF(r))。由表2可知,通过RF可以得知传输过程可能泄露给窃听节点E的信息,于是有:
在式(6)中,另一项p(G=i|Lr=l)可以表示为:
等式右边的3个概率都是相等的。
具体来看p(T=4|Lr=l),给定一个长度为lr的路由,假设路由上的所有节点按下列序号排序:1,2,…,lr,其中,序号1代表的节点为源节点,序号lr代表的节点为目的节点。节点A、B以及路由应答发送节点(简记为C)随机分布在这些节点中,且节点A和B不是同一个节点。于是:
窃听节点E是否窃听到一个确定的路由与路由中节点A和B的角色无关,与路由应答发送人的身份也无关,于是有:
其中,Stotal表示网络覆盖面积。Sshare表示路由中lr个节点所围成的最大通信区域面积,本文用lr个节点中两两节点之间距离的累加和乘以节点通信半径的两倍来计算。
1.3.2 RF完全保护方式
当RF完全被保护时,从窃听节点E的角度来看,一个确定路由的概率完全取决于它的长度。因为所有给定长度的未知路由对E而言都是相同的,于是有:
1.3.3 修剪路由集合划分
现在剩下的问题是完整路由集合需要划分为多少个修剪路由子集Mk。要解决这个问题,对于任意一组节点对,本文将所有可以选择的修剪路由组成一个选择矩阵M。在这个选择矩阵中,一行对应M中的一个修剪路由,一列对应一个节点地址。在移动自组织网络中,除了节点A和B,还有N-2个节点,也即矩阵M有N-2列。选择矩阵M可以表示为:
其中,aij表示节点j知道节点i的完整路由的概率。譬如,当节点j是修剪路由i所对应的完整路由的一部分时,有aij=1。否则,aij=p(ρj(i)=1|Li=li)。
划分算法用于构建不同数量的子集Mk,目标是对于一个有hk行组成的选择矩阵M,划分后的子集Mk中每一列各元素的乘积小于安全系数ε1(为便于后续描述,该条件简称为ε1安全条件)。本文划分算法的准则是,在满足ε1安全条件的前提下,划分的子集Mk的数量越多越好。具体描述如下。
(1)对于上限情形(也即RF被完全保护),划分步骤具体为:
①M1的构建。首先选取选择矩阵M的第一行,然后逐步累加选择矩阵M的下一行数据。假设到达第n行时不再满足ε1安全条件,那么前n-1行的行累加矩阵即为构建完成的M1。
②Mk的构建。仿照步骤①,依次构建Mk,k=2,3,…,具体为,首先选取选择矩阵M的第k行,然后逐步累加选择矩阵M的下一行数据,直至不满足ε1安全条件的前一行,所得到的行累加矩阵即为Mk。
③终止条件。在步骤②中,如果从选择矩阵M中选取的第K+1行已无法满足ε1安全条件,或者选择矩阵M总共只有K行,那么终止划分,最终得到的子集数量为K。
(2)对于下限情形(也即RF以明文方式发送),在前述的划分步骤基础上,还要多执行一步,具体为:为选择矩阵的每一行附加一个组号,用于指示相应RF属于表2中的哪一组。由于每个组的最小熵是不同的,且可提取的随机位的数量与最小熵是相关的,因此在进行划分之前,节点A和B需要将其路由按照组号从小到大的顺序进行排序。也就是说,在划分时先挑选同一组中最小熵值大的路由。
2 仿真
本文采用Network Simulator[13]软件进行算法仿真,仿真涉及的主要参数:网络覆盖面积为100×100 m2,移动节点数量为50个,恶意节点比例为5%~25%,节点移动速度为30 m/s,节点通信半径为200 m,固定码率为2 Mb/s,数据包尺寸为512 B,仿真时间为1 000 s。
2.1 比特数上下限测试结果
在仿真中,测试了RF明文传输和完全保护两种方式下的最大概率值、最小熵、分组总数以及比特数的上下限,详见表3和表4。与文献[10]一致,通过该上下限来控制信息传输量,降低信息协调过程造成的信息泄露。
2.2 性能对比分析
在经典的DSR路由协议上应用本文策略,并与两种常用的安全路由协议(ARAN[7]和TARF[8])进行对比,评价本文策略的性能。这里,主要对比恶意节点比例不同时的报文送达率指标,结果详见图2。
由图2可见,当恶意节点数量较少时,3种路由协议的报文送达率指标都在90%以上,而当恶意节点数量增多后,3种路由协议的报文送达率指标都会下降,但相对而言,本文路由协议的报文送达率指标下降较为缓慢,而且在恶意节点比例相同的情况下,本文方法的报文送达率指标高于其他方法。这说明,本文路由协议抵御恶意节点攻击的能力更强,路由的安全性更好。
3 结束语
本文提出了一种随机密钥构建策略,可以在网络通信过程中根据信息传输情况自动构建随机密钥,同时也给出了依据密钥计算完整路由表示所需的比特数上下限的方法,用于预防信息协调时造成的信息泄露。仿真结果表明,将本文策略应用于经典的DSR路由协议,可以获得更高的报文送达率。
参考文献
[1] JAIN S,AGRAWAL K.A survey on multicast routing protocols for mobile Ad Hoc networks[J].International Journal of Computer Applications,2014,96(1):27-32.
[2] 杨娟,李颖,张志军,等.移动Ad hoc网络容量非合作规划博弈模型的稳定性[J].电子与信息学报,2012,34(1):75-81.
[3] 武俊,王刚.移动自组织网中MP-QAODV协议的研究与性能评估[J].重庆邮电大学学报(自然科学版),2013,25(4):464-469.
[4] 吴大鹏,周之楠,张炎,等.消息内容保护的间断连接移动自组织网络转发机制[J].电子与信息学报,2015,37(6):1271-1278.
[5] ABDEL-HALIM I T,FAHMY H M A,BAHAA-ELDIN A M.Agent-based trusted on-demand routing protocol for mobile ad-hoc networks[J].Wireless Networks,2015,21(2):467-483.
[6] 钟远,郝建国,戴一奇.基于Hash链的移动自组织网匿名路由激励协议[J].清华大学学报(自然科学版),2012(3):390-394.
[7] LI H,SINGHAL M.A secure routing protocol for wireless Ad Hoc networks[C].System Sciences,2006.HICSS′06.Proceedings of the 39th Annual Hawaii International Conference on.IEEE,2006:225-235.
[8] ZHAN G,SHI W,DENG J.Design and implementation of TARF:A trust-aware routing framework for WSNs[J].IEEE Transactions on Dependable & Secure Computing,2012,9(2):184-197.
[9] POONIA R,SANGHI A K,SINGH D.DSR routing protocol in wireless Ad-hoc networks:Drop Analysis[J].International Journal of Computer Applications,2011,14(7):18-21.
[10] PACHER C,GRABENWEGER P,MARTINEZ-MATEO,et al.An information reconciliation protocol for secret-key agreement with small leakage[C].IEEE International Symposium on Information Theory.IEEE,2015:6027-6032.
[11] SHALTIEL R.An introduction to randomness extractors[M].Automata,Languages and Programming,2011.
[12] MOMEYA R H,SALAH Z B.The minimal entropy martingale measure(MEMM) for a Markov-modulated exponential Lévy model[J].Asia-Pacific Financial Markets,2012,19(1):63-98.
[13] The network simulator-ns-2[EB/OL].[2016-10-19].http://www.isi.edu/nsnam/ns/.
作者信息:
吴 冬1,魏艳鸣2,吴方芳3
(1.浙江长征职业技术学院 计算机与信息技术系,浙江 杭州310023;
2.河南经贸职业学院 信息管理系,河南 郑州450018;3.清华大学 电机工程与应用电力技术系,北京100084)