一种基于位置的动态网络安全认证机制

2014-02-28 10:27李萃王赜吴秀虹
计算机工程与应用 2014年13期
关键词:密钥消息运算

李萃,王赜,吴秀虹

天津工业大学计算机科学与软件学院,天津300387

1 引言

在以往的认证机制中,节点的身份信息是决定其是否可靠的基本条件。然而,在实际的应用中单纯的身份信息并不足以保证通信的安全性。例如,一旦无线网络中收集周围环境信息的某些节点脱离了目的地,即节点所处的位置无效了,那么这些节点所收集的信息就变得没有意义了。另外,对于进行通信的两个节点来说,如果其中的一个节点并不在另一个节点的通信范围内,那么这次通信很可能存在着恶意的攻击。所以,信息采集节点和通信节点的物理位置在一定程度上决定了其收集信息和通信的有效性。

要想使位置信息发挥其优势,前提是位置的准确性要有所保障。当前,已经有许多的安全定位机制被提出[1-2],其中的信标节点被认为是完全可信的,普通节点的位置由信标节点来确定。而刘等人提出的检测并移除受害信标节点的技术[3]使节点的定位机制更加完善。相对来说,检验节点声明位置信息的准确性与定位节点位置信息又是不同的研究方向。前者注重的是已知位置的检测,而后者是对未知位置的确认。也有一些研究者已经把位置信息作为安全认证的重要因素。

张等人利用位置信息与身份信息相结合建立密钥的方式实现了传感网络中节点间的安全认证[4]。与此相类似,文献[5]利用邻近节点的身份作为位置信息建立了相关的认证机制。针对文献[4]存在的密钥受害伪造(KCI)攻击,文献[6]又建立了一种新的基于位置的认证机制。这些方法均利用节点的位置信息作为认证机制中的一个检测因素,并且结果证明他们能够很好地抵抗某些恶意的攻击。然而这些机制均基于节点位置的不变性,在节点移动的动态网络中这些机制就不能再发挥作用了。

不同于前面提到的安全定位技术和静态传感器网络中基于位置的认证机制,重点在于:使位置信息在动态网络的安全认证中也能发挥重要的作用。本文主要贡献:在动态网络中建立了基于位置的安全认证机制;证明了机制对普遍攻击的抵抗性及有关性能上的优势。

2 相关工作

2.1 对的概念

对的特性概述如下:p、q是两个大素数;G1是加法群的q-阶子群,G2是乘法群的q-阶子群。假定在G1和G2中计算离散对数问题是困难的。对于一个映射ê: G1× G1→G2,具有三个特性。

(1)双线性:ê(aP,bQ)=ê(P,Q)ab,∀P,Q∈G1,∀a,b∈Zq;

(2)非退化性:如果∃P,Q∈G1且都不是G1的单位元,则 ê(P,Q)≠1;

(3)可计算性:如果∃P,Q∈G1,则ê(P,Q)可以在多项式时间内有效计算。

双线性映射ê可以由Weil映射和Tate映射得到。

2.2 网络模型

网络中涉及的参与者包括:权威机构(TA)、节点、锚节点(AN)、基站(BS)。

权威机构:主要完成部署阶段的工作。

节点:通信范围为R,具有定位能力,但是能量有限。

锚节点:为可信节点,通信范围为r,r>R且整体性能优于普通节点,具有定位能力,可以对普通节点进行位置检测;设定节点附近有足够的锚节点来进行位置的检测。

基站:携带主密钥k,为节点提供密钥更新。完备的硬件设备可以保证其安全性。

3 基于位置的安全认证机制

3.1 预部署阶段

节点i的相关信息表示如下:身份信息IDi,当前位置Li,以及参与建立私钥的位置信息li,移动速度范围[0,vmax]。锚节点AN的身份为IDAN,当前位置LAN。网络部署前,TA进行下面的操作:

(1)根据2.1节,生成对参数(p,q,E/Fp,G1,G2,ê),并选择G1中的一个生成元W。

(2)选择两个加密hash函数:H,字符串映射到G1中的非零元素;h,任意的输入映射到固定长度的输出。

(4)为每个节点i计算基于身份的密钥,IKi=kH(IDi)∈G1;锚节点AN的密钥IKAN=kH(IDAN)∈G1。

每个节点预先携带公共系统参数:(p,q,E/Fp,G1,G2,,H,h,W,Wpub)以及基于身份的私钥。由于在G1中解决DLP是困难的,所以由(W,Wpub)或是(ID,IKA)推断k是不可行的。因此,即使节点受害,敌手也不能推断出其他节点的私钥。

节点i和锚节点AN在网络中部署后,利用预先加载的网络主密钥k生成基于位置的密钥LBK(Location-Based Key)LKi=kH(IDi||li),LKAN=kH(IDAN||lAN)之后将主密钥擦出。

3.2 邻近节点认证

邻近节点间的认证过程和文献[4]中基于位置的邻居认证过程是类似的。不同的是动态网络中的节点持有两个位置信息:一个为当前位置;另一个为建立密钥对应的位置。

节点A和B的邻近认证过程如下所示。

消息(1)A→*,消息内容:IDA,lA,nA

节点A广播认证请求消息,包括身份信息IDA,与LBK相关的位置lA,随机数nA。

消息(2)B→A,消息内容:IDB,lB,nB,hKB,A(nA||nB||1)

节点B接收到A的认证请求后,首先检测不等式||lA-LB||≤R是否成立。如果不等式不成立,节点B认为节点A不在通信范围内,放弃此次通信。而节点A  在某个时间段没收到回复的话,将认为基于位置的私钥需要更新,发出密钥更新的请求(3.3节中进行讨论)。如果不等式成立,节点B计算共享密钥KB,A,接着将包括身份信息IDB、位置信息lB、随机数nB和消息认证码hKB,A(nA||nB||1)的信息发送给A 。其中:

消息(3)A→B,消息内容:hKA,B(nA||nB||2)

A 接收到B的回复后,首先检测不等式||LA-lB||≤R是否成立。如果不等式不成立,A 将放弃通信,暗示B需要更新密钥。反之,A 将利用共享密钥KA,B检测消息认证码。根据2.1节中对的性质,如果KA,B=KB,A,A 计算的消息认证码和B发出的认证码将保持一致,那么认定B为一个认证的邻近节点。其中:

KA,B=ê(LKA,H(IDB,lB))

节点A 确定B为认证的邻近节点后回复消息hKA,B(nA||nB||2)。B收到回复后,使用与A 相同的认证过程检测A 是否为认证邻近节点。

3.3 密钥更新

3.3.1 密钥更新的必要性

在3.2节邻近节点的认证过程中,如果节点A广播消息后,在某个时间段内没有收到其他节点的回复,A将认为基于位置的私钥不再满足通信的要求,需要进行基于位置的密钥更新。

如图1所示:实心圆处表示节点A建立LBK的位置;空心圆表示节点A移动后的位置;五角星表示节点B;箭头指向的范围为通信范围R。在图1中,节点A移动前的信息为:IDA,lA,LA,LKA,其中lA=LA,移动后的信息为:IDA,lA,L(A),LKA。当节点A与节点B进行相互认证时,节点B首先验证不等式||lA-LB||≤R,其中lA为节点A建立LKA的位置,LB为节点B的当前位置。而节点A检测的是B发送的建立LKB的lB与其当前位置LA之间的距离。从图1可以看出,当节点A移动到空心圆处时,利用原来的信息IDA,lA,LKA是仍然可以和节点B进行通信的。也就是说与节点A移动前和移动后交叉的通信区域内的节点通信时,节点A不需要更新密钥。而一旦交叉的范围内没有节点或是没有交叉范围时,节点A只能通过密钥更新才能和其他节点再次通信。

图1 利用原来的LBK通信示意图(节点A移动后)

3.3.2 密钥更新过程

节点A移动后想要发起新的通信,首先要计算一下最近一次建立LBK的位置信息lA与当前位置信息L(A)的距离,根据距离的不同将密钥更新的时机分为两种情况。

(1)当||lA-L(A)||<2R时:节点A在一段时间内没有收到回复信息,将发起密钥更新请求。

(2)当||lA-L(A)||≥2R时:节点A确定距离后直接发起密钥更新请求。

节点A密钥更新过程如下:

消息(1)A→AN,消息内容: IDA,lA,L(A),nA

节点A向锚节点发出密钥更新请求信息,包括身份信息IDA、建立密钥的位置信息lA、当前位置信息L(A)以及随机数nA。

消息(2)AN→BS,消息内容: IDA,LA,T

利用相关定位技术[7]或检测技术[8],锚节点确定节点A当前位置L(A)的准确性。如果L(A)可靠,锚节点则记录时间T,并将节点的相关信息发给BS;反之,则放弃更新请求。

消息(3)BS→A,消息内容: LKA

接收到更新请求后,BS利用携带的主密钥k为请求更新的节点A生成新的基于位置的密钥LKA=kH(IDA||L(A)),然后经加密后发送给节点A。

4 安全性分析与性能分析

4.1 安全性分析

4.1.1 虫洞攻击

在虫洞攻击中,攻击者并不危害任何节点而是与远距离的攻击者相勾结建立一条虫洞链路。这条链路一般是建立在网络中两个远距离位置间的超带宽、低延时信道。通过扰乱路由选择操作达到最终的攻击目的。虽然有很多方案能抵抗这种攻击,但是这些方案不是受限于严格的时间同步,需要强大的硬件支持[2],就是需要复杂的计算验证。而基于位置的认证机制要相对简单得多,只接收来自认证节点的路由选择消息就能排除攻击的危害。

4.1.2 节点复制攻击

当一个良性节点被攻陷后,攻击者很可能会发起节点复制攻击。如果网络不具有抵抗节点复制攻击的能力,大量的复制节点部署到网络中,必定会使整个网络瘫痪。因为攻击者持有节点全部的私钥信息,所以节点复制攻击的危害是非常严重的。

文献[9]从时间域和空间域两个角度建立了抵抗节点复制攻击的机制SDD和TDD,在正确的参数设置后能够有效地检测出节点复制攻击是否存在的。但是SDD和TDD机制要求节点必须记录移动过程中遇到的所有邻近节点的信息,并且每次将记录加入到表之前都要验证是否存在矛盾信息。这势必会给能量有限的节点带来不小的开销。而在基于位置的安全认证机制中,将节点复制攻击的检测任务转移给了BS,节省了节点在这方面的开销。根据3.3.1小节密钥更新的必要性,网络中的节点在移动一段距离后必定要提交密钥更新请求,BS在对其进行密钥更新前根据表1中记录的信息判断出节点复制攻击是否存在。如果节点复制攻击存在就会放弃此次节点的更新请求。

假设对节点A进行节点复制攻击的检测,方法即是判断表1中节点A的记录信息是否存在矛盾。这里遵循的准则是:节点A两次更新密钥时两个位置间的距离不可能大于以最大速度vmax在这个对应时间段内通过的距离。用不等式表示为:

BS对每个需要密钥更新的节点进行信息的记录,如表1所示。

表1 BS对请求密钥更新的节点记录表

4.1.3 位置伪造攻击和女巫攻击

为了和网络中的某个节点通信,攻击者可能会伪造一个在节点通信范围内的位置希望能够通过验证。虽然攻击者声称的位置能够通过不等式的验证,但是缺少位置对应的LBK就没有办法通过后面的认证了。

女巫攻击表现为一个节点伪装成多个节点或是简单的声明多个假身份。它会严重影响网络的很多方面,如路由选择、资源分配、数据聚合还有分布式存储等。然而在此机制中女巫攻击并不会带来威胁,因为恶意节点在企图伪造合法节点时并不会拥有基于节点的身份信息和位置信息建立的LBK,也就不能通过与合法节点间的相互认证。因此,女巫攻击在此机制中能够很容易地被抵抗。

4.2 性能分析

4.2.1 有效性分析

大部分基于对的加密系统需要满足的条件如下[10]:一个椭圆曲线E(Fq)的子群,具有足够大的素数阶p;一个足够大的有限域Fqk,其中q是定义椭圆曲线的域的大小,k是阶。为了确保DLP在G1和G2的难解性,需要满足p>2160并且qk>21024。

认证阶段:由于基站和锚节点具有更完备的硬件设施,因此本文主要考虑最底层的节点在基于位置的认证机制中的计算开销。在邻近节点认证阶段,节点主要的计算开销是1个对运算和1个映射到点的哈希运算。采用M IRACL库中的Tate对,在配置为主频1.60 GHz,内存1 GB的计算机上,对512 bit的数据进行对运算和映射到点的哈希运算的时间分别为20.766 m s和2.65 ms。这对于实时的操作来说是完全可以接受的。

密钥更新阶段:从节点发出密钥更新请求到获得新的密钥需要经过4个阶段,分别是AN对节点位置信息的检测;AN转发请求消息到BS;BS为节点生成新的密钥,并进行加密发送给节点;节点解密获得新的密钥。这里认为网络具有足够大的带宽,忽略通信延迟对密钥更新过程的影响。针对不同的方法,对节点位置信息准确检测需要的时间也会有所不同。为了简单起见,设想检测方法为:判断两点之间的距离是否满足要求。相对于密码学中大数的计算,这将占用很少的时间。在AN对节点进行位置检测前需要对节点进行认证,因此需要1个对运算和1个映射到点的哈希运算。BS为节点生成新的密钥,需要进行1个映射到点的哈希运算和1个点乘运算,加密过程中需要进行1个点乘,1个SHA-1,1个映射到点的哈希,1个异或运算。节点解密的过程中需要进行1个点乘运算,1个SHA-1,1个异或运算。按照前面的实验环境,密钥更新的过程大约需要48.46m s。这对需要通信的节点并不会造成困扰。

因此,基于位置的安全认证机制在保证网络中节点有效通信的前提下,实现了位置信息在动态网络认证中的优势。

4.2.2 对比分析

如表2所示,在认证阶段节点的计算开销和文献[4-5]是一样的,虽然文献[6]中解决了文献[4]存在的密钥受害伪造(KCI)攻击,并且利用标量乘法代替对和哈希函数的计算达到了计算开销的减少,但是它对动态节点并不适用。而本机制中的密钥更新使得KCI攻击变得没有意义。因为,即使基于位置的密钥泄露,密钥更新后也不会威胁到以后的通信。

表2 计算比较

与其他的动态网络机制相比,本机制的优势在于引入了基于位置的认证机制,使得网络更加安全可靠,正如4.1安全分析中所示。例如:与动态网络[9]中的机制相比,达到成功检测攻击的同时并将节点的计算开销和存储开销转移给了BS。这对于能量有限的节点来说减少了很大的负担。对于虫洞攻击,本机制避免了通常安全机制所依靠的时间同步。只要节点只与邻近节点通信就能自然避免虫洞攻击的威胁。因为机制建立的密钥是与位置绑定的,位置伪造攻击与女巫攻击也不能对网络产生攻击。由此可以看出位置信息在网络安全中所表现出的突出贡献。

由于移动网络中节点位置信息的可变性,将位置信息作为认证条件变得很困难,文中基于位置的动态网络安全认证机制弥补了这方面的不足。此机制不仅适用于节点移动的网络,也可以应用到静态的网络,并且具有良好的可扩展性。当然,动态网络的安全认证机制中表现出的优势也是需要代价的。从硬件方面来说,节点需要具有定位的能力;从网络部署上来说,引入了可信的锚节点和集中式的BS。在今后的工作中,将会对这些方面进行更深入的分析。

5 结论

首次提出了基于位置的动态网络安全认证机制,发挥出了动态节点位置信息的优势。分析了认证机制对虫洞攻击、节点复制攻击、位置伪造攻击以及女巫攻击的抵抗能力,并说明了本文认证机制的良好性能。

[1]He D,Cui L,Huang H.Design and verification of enhanced secure localization scheme in wireless sensor networks[J].IEEE Transactions on Parallel and Distributed Systems,2009,20(7):1050-1058.

[2]Zhang Y,Liu W,Fang Y,et al.Secure localization and authentication in ultra-wide band sensor networks[J].IEEE JSelected Areas in Communications,2006,24(4):829-835.

[3]Liu D,Ning P,Du W.Detecting malicious beacon nodes for secure location discovery in wireless sensor networks[C]//Proc the 25th Int’l Conf on Distributed Computing Systems(ICDCS’05),2005:609-619.

[4]Zhang Y,Liu W,Fang Y.Location-based compromise-tolerant security mechanisms for wireless sensor networks[J].IEEE Journal on Selected Areas in Communications,2006,24(2):247-260.

[5]Xue K,Xiong W,Hong P,et al.NBK:A novel neighborhood based key distribution scheme for wireless sensor networks[C]//Proceedings of International Conference on Networking and Services,2009.

[6]Duan M,Xu J.An efficient location-based com promise tolerant key manament scheme for sensor networks[J].Information Processing Letters,2011,111(11):503-507.

[7]叶阿勇,马建峰,裴庆祺.无线传感器网络节点定位安全研究进展[J].通信学报,2009,30(10A):76-84.

[8]Chiang J,Haas J,Hu Y.Secure and precise location verification using distance bounding and simultaneous multilateration[C]//Proceedings of ACM Conference on Wireless Network Security Supersedes Wise and SASN,2009.

[9]Xing K,Cheng X.From time domain to space domain:detecting replica attacks in mobile ad hoc networks[C]//Proceedings of Technical Program at IEEE INFOCOM,2010.

[10]Sun J,Zhang C,Zhang Y,et al.SAT:a security architecture achieving anonymity and traceability in wireless mesh networks[J].IEEE Transactions on Dependable And Secure Computing,2011,8(2):295-307.

猜你喜欢
密钥消息运算
重视运算与推理,解决数列求和题
密码系统中密钥的状态与保护*
有趣的运算
一张图看5G消息
一种对称密钥的密钥管理方法及系统
基于ECC的智能家居密钥管理机制的实现
“整式的乘法与因式分解”知识归纳
消息
消息
消息