APP下载

一种WLAN Mesh 网络漫游接入认证协议*

2012-06-11范盛超章国安费洪海邱恭安

电信科学 2012年2期
关键词:会话密钥终端

范盛超,章国安,费洪海,邱恭安

(南通大学电子信息学院 南通 226019)

1 引言

无线Mesh网络是一种具有自组织、自配置和自恢复特点的高容量、高效率的分布式多跳网络。同时,WLAN Mesh网络具有较好的现实应用性,得到了快速、广泛的发展,并且有专门的IEEE 802.11s工作组为其制定相关的标准。为了保持与现有IEEE 802.11系列标准的兼容性,IEEE 802.11s标准草案中的安全接入部分仍采用IEEE 802.11i标准框架。但IEEE 802.11i标准框架中并没有考虑 WLAN Mesh网络中接入节点 (mesh access point,MAP)移动特性的漫游切换环境,因此为了满足话音、视频等实时业务的需求,必须研究移动终端安全快速的切换方案,用于减少切换过程中的接入时延,并保证切换过程的安全性。

目前针对WLAN Mesh网络的漫游切换环境,已经提出了一些快速切换认证方案。参考文献[1]中采用基于邻居图和矩阵的密钥预分配方法,克服了基于邻居图切换中由于接入节点的移动性造成的切换失败问题。参考文献[2]提出了基于身份保护和认证时延的接入认证协议,不仅具有可证明的安全性,而且有较高的通信效率,但必须要与本地域的MKD(mesh key distributor)节点进行信息交互,并且要进行复杂的加解密过程。参考文献[3]综合了 IEEE 802.11s和IEEE 802.11i技术,保持边缘节点的协议不变,将EMSA协议扩展到终端接入环境中,利用初始认证后形成的密钥体系结构实现快速切换认证。可此方案中同一密钥有3位持有者,增加了遭受攻击的风险。

在终端节点漫游切换认证过程中,不仅要考虑重新认证过程中的时延开销和认证成功率,还要对节点的身份信息进行隐藏保护。本文通过分析现有无线Mesh网络漫游接入认证协议的优缺点,在不改变原有的安全协议基础上,利用IEEE 802.11s标准草案中已建立的安全体系结构,设计了一种安全高效的漫游切换认证协议。

2 新的漫游切换接入方法

2.1 DH密钥交换算法

Diffie-Hellman密钥交换算法[4]的安全性依赖于这样一个事实:虽然计算以一个素数为模的指数相对容易,但计算离散对数却很困难。对于大的素数,计算出离散对数几乎是不可能的。在有限域GF(p)上,它的计算复杂性为:

此算法具有如下主要优点:

·当通信需要时才生成密钥,减小了长时间存储密钥而遭受攻击的风险;

·密钥交换过程不需要事先存在的基础结构,只需约定全局参数。

但也存在某些缺点:

·交换过程中没有提供双方身份的任何信息;·容易遭受中间人的攻击。

2.2 WLAN Mesh网漫游切换接入过程

当终端节点在同一MKD域中的不同接入节点MAP间切换时,可以执行 MSA(mesh security association)中的二次认证过程,快速安全地在MAP间进行切换。若终端节点移动到邻近MKD域中的MAP时,就要寻求一种高效的域间切换机制。本文所提出的域间安全切换接入方法的主要思想为:利用在初始认证过程中所建立的安全链接通路,传输终端节点中的敏感身份信息,在每个MKD节点中建立和维护一张预接入列表,用于动态地采集本地域及邻近域中终端节点信息。并基于DH密钥交换算法中节点私钥的隐匿性和密钥生成过程的独特性,将其作为节点身份认证的信息使用。利用消息认证码克服DH密钥交换算法本身易遭受中间人攻击的弱点。所提协议RADH(roaming authentication based Diffie Hellman key exchange)具体过程(如图1所示)描述如下。

(1)在终端节点完成初始认证过程,并生成MKD域中的密钥层次结构和建立安全的传输链路体系后,终端节点已取得合法身份,此时,终端节点STA随机选取随机数XSTA并计算YSTA=gXSTAmod p(XSTA

(2)当终端节点STA与当前接入节点之间的信号强度减弱时,触发切换过程。STA扫描到一个合适的邻域目标接入节点MAP后,发送包含YSTA信息的关联请求帧给目标MAP。

(3)目标 MAP缓存 YSTA,并转发给目标 MAP所在域的MKD节点。

(4)目标MAP所在域的MKD节点收到YSTA后,查询预接入列表PAL中是否存在对应的YSTA信息,若存在则找出与YSTA对应的p和g,通过安全通道将p和g发送给目标MAP。

(5)目标 MAP 收到 p和g后,选取随机数 XMAP(XMAP

图1 漫游切换接入认证过程

(6)终端节点STA收到YMAP后,开始计算 K=(YMAP)XSTAmod p,利用K验证TMAP,用于检验消息来源的真实性,并用K解密目标MAP信息。利用伪随机函数PRF及双方一轮信息交互完成后共享的K计算密钥PTK=PRFK(YMAP,YSTA,MAP-IP,STA-ID),取PTK中用于消息认证码加密部分的加密密钥 MK(MAC key)计算 TSTA=MACMK(sid,ENC(K,STA-ID))。将用K加密的终端节点STA信息以及标识符sid和消息认证码TSTA发送给目标MAP。

(7)目标MAP利用解密终端节点STA信息,计算PTK=PRFK(YMAP,YSTA,MAP-IP,STA-ID),利用 MK验证 TSTA检验消息来源的真实性。验证通过后接入认证成功。发送成功接入信息给终端节点MAP,并装载PTK。

3 安全性分析

RADH协议可克服DH密钥交换算法的先天易遭受中间人攻击的弱点。假如有一攻击节点MP(a),由于p和g不是全局公布的参数,而是通过初始接入建立的安全链路传输的,则 MP(a)无法得出与p、g参数相对应的 YMP(a)信息,用消息认证码验证消息来源的真实性,从而不能发起中间人攻击。以下将利用CK模型对所提协议进行安全性分析。

3.1 安全性定义

CK(Canetti-Krawczyk)模型[5]作为用于形式化分析协议安全性的工具,利用会话密钥安全和多项式时间不可区分性的概念证明协议在密钥交换过程中的安全性。

定义1 如果对于UM(unauthenticated-links adversarial model)或 AM(authenticated-links adversarial model)中的任何密钥交换协议(KE)对手A,协议能够满足下列两条性质,称该协议在UM或AM中是会话密钥安全(SK secure)的[6]。

(1)如果两个未被攻陷的参与者完成了协议中匹配的会话,它们将输出相同的会话密钥。

DDH(decision Diffie-Hellman)假设[7]设k为安全参数,p和q为素数,其中q的长度为k位比特,且q|p-1,g是一个随机选择的阶为q的生成元。则对于任何的多项式时间算法 D,Q0={:α,β Zq}与 Q1={:α,β,γ Zq}的概率分布是计算上不可区分的。

定理1 如果π是AM中的SK安全的密钥交换协议,λ 是一个 MT(message transmission)认证器,那么 π′=Cλ(π)在UM中是SK安全的密钥交换协议[6]。

3.2 分析过程

对新协议RADH进行形式化描述,将其转化成CK模型所能理解的形式,消除冗余的信息后,在UM模型下协议RADHUM可如下表述。

(1)发起方 Pi选择随机数 XSTA{0,1}k(k 为协议的安全参数),计算YSTA=gXSTAmod p,把消息(sid,YSTA)发送给响应方 Pj(p,g不是全局公开的参数,只在两参与者之间共享)。

(2)响应方 Pj收到(sid,YSTA)后,选择随机数 XSTA{0,1}k(XMAP≠XSTA)计 算 YMAP=gXMAP mod p,K=(YSTA)XMAPmod p,Ej=ENC(K,Pj),Tj=MACK(sid,YMAP,Ej),然后把消息(sid,YMAP,Ej,Tj)发 送 给 Pi。

(3)Pj收到(sid,YMAP,Ei,Ti)后,计算 K=(YMAP)XSTAmod p,然后验证Ti,验证通过后解密Pj=DEC(K,Ei),计算PTK=PRFK(YMAP,YSTA,Pi,Pj),Ei=ENC(K,Pi),TSTA=MACMK(sid,Ei),然后把消息(sid,Ei,Tj)发送给Pj,同时输出密钥PTK。

(4)收到消息(sid,Ei,Tj)后,计算 Pi=DEC(K,Ei),PTK=PRFK(YMAP,YSTA,Pi,Pj),然后验证Ti,验证通过后输出密钥PTK。

具体证明思路如下:首先构造AM模型下协议RADHAM,并证明协议在AM中是SK安全的,然后选择合适的认证器,最后利用所选认证器是MT认证器的特点,可证明协议RADHUM在UM中是SK安全的。

在AM模型下协议RADHAM的描述如下。

(1)发起方 Pi选择随机数 XSTA{0,1}k(k 为安全参数),把消息(sid,YSTA=gXSTAmod p)发 送 给 Pj。

(2)响应方 Pj收到(sid,YSTA)后,选择随机数 XMAP{0,1}k(XMAP≠XSTA)计算 K=(YSTA)XMAP mod p,然后把消息(sid,YMAP=gXMAPmod p)发送给 Pi,并输出会话密钥 PRFK(YSTA,YMAP)。

(3)Pi收到(sid,YMAP)后,计算 K=(YMAP)XSTA mod p,并输出会话密钥PRFK(YSTA,YMAP)。

定理2 在DDH假设下,如果伪随机函数是安全的,则协议RADHAM在AM模型中是SK安全的。

证明 由于协议RADHAM中通信双方通过一方已存储相关密钥信息的修改的DH密钥交换过程获得了相同的预共享密钥K,根据DDH假设成立的条件可知,预共享密钥K具有前向保密性。根据前面的模型,设定会话不会过期。

在DDH假设下,根据协议的运行过程及AM的定义,当两个参与者Pi和Pj未被攻陷且都完成了协议时,他们都得到了未被篡改的YSTA和YMAP,因此他们建立了相同的会话密钥PRFK(YSTA,YMAP),可推知协议RADHAM满足定义1的性质1。

以下将用反证法证明协议RADHAM满足定义1的性质2。假设存在一个KE对手在AM中进行测试会话查询时能以不可忽略的优势δ猜中b,则就可以构造一个算法D能够以不可忽略的优势δ区分伪随机函数和随机函数。

设:

Q0={YSTA,YMAP,PRFK(YSTA,YMAP)},Q1={YSTA,YMAP,random()}

D 的输入是三元组(x,y,z),该三元组是 Q0或 Q1的概率均为。KE对手A作为算法D的子过程,算法D的描述如下。

(1)设L是在A任何交互过程中所能激发的会话的上限,选择m {1,…,L}。激活A和在AM中运行协议RADHAM的n个参与者P1,…,Pn,进行仿真交互。

(2)当A激活某个参与者建立一个新的会话 t(t≠m)或者参与者接收到某条消息时,D代表此参与者执行协议RADHAM。

(3)若 t=m,则 D 让 Pi把消息(Sm,x)发送给 Pj,当收到消息(Sm,x)时,D 让 Pj把消息(Sm,y)发送给 Pi。

(4)当会话过期时,参与者将内存中的会话密钥擦除。

(5)当某个参与者被攻陷或某个会话 t(t≠m)暴露时,D把此参与者或会话的相关信息交给A。

(6)如果未暴露的第m个会话被选中进行测试会话查询,则D把z作为查询的响应给A。

(7)如果第m个会话暴露或者A选中了其他的会话作为测试会话,再或者A没有选择测试会话就停止,则D输出b′ {0,1},然后停止。

(8)如果A输出b′并终止,则D终止并输出和A相同的 b′。

由上述过程可以看出,算法D所激发的A的运行(直到A停止或D终止A的执行)和KE对手A对抗协议RADHAM的正常运行是一致的。

算法D仿真协议的执行过程中,A对测试的会话t有以下两种可能。

(1)当会话 t=m时,如果Q0作为D的输入,则D返回一个真实的密钥信息作为A的值。如果Q1作为D的输入,则D返回一个随机数作为A的值。因为D的输入是分别以的概率来自Q0或Q1。根据算法D的构造原理,A成功猜中得到的值是真实密钥信息还是随机数的概率等同于猜中D的输入是来自Q0还是Q1的概率。由于A猜中的概率为,其中δ是不可忽略的,通过输出和A相同的b′,则D猜中的概率也为,其中δ是不可忽略的。

(2)当会话t≠m时,D输出一个随机数,在这种情况下,D猜中Q0或Q1的概率为

综上所述可知,协议RADHAM在AM中是SK安全的。

作为一种比较通用的形式化分析模型,CK模型中已给出了几类经过安全证明的标准的认证器,选用参考文献[8]中的基于消息认证码和伪随机函数的消息传输认证器λprf。

定理3 假设对称加密算法ENC是理想密码模型,且伪随机函数PRF和消息认证码算法MAC是安全的,则认证器λprf可以模仿UM环境下的消息传输协议。

具体证明过程参见参考文献[8,9]。

定理4 若DDH假设成立,对称加密算法是理想密码模型,伪随机函数和消息认证码算法是安全的,则协议RADHUM在UM中是SK安全的。

证明 在协议RADHAM是SK安全的情况下,利用λprf是MT认证器的性质,把AM下的协议RADHAM转化为UM下的协议RADHUM。通信双方使用YSTA和YMAP作为挑战,把λprf应用到AM下协议RADHAM的每个消息,并结合piggy-backing技术及定理 1、2、3,可得到 UM下的协议RADHUM是SK安全的。

4 性能分析

在漫游节点重新接入的过程中,接入时延是一个首当考虑的参数指标,它决定了通信中是否具有良好的业务连续性。目前,IEEE 802.11s草案中没有提及节点漫游到临近域时的切换接入认证过程。因此,当节点漫游到非归属域时,需采用EMSA来重新认证。表1中对EMSA和本文所提协议RADH的计算量进行了统计。其中,E为模指数运算,M为消息认证码计算,F为签名运算,K为对称加密运算。由于EMSA中用到的签名是非对称加密运算,相对于新协议RADH中的对称加密运算需要具有更长的运算时间,从表1中可以看出新协议RADH的计算时延明显低于EMSA的计算时延。

表1 运算量性能对比

除以上所具有的低时延特性外,所提协议RADH还具有如下的特性。

·利用MKD节点所维护的预接入列表,克服基于邻居图切换方法在MAP节点变化移动的情况下所造成的切换失败问题。按网络规模设置合适的存储容量,并通过先进先出的队列存储方式,在一定时间内实现预接入列表的动态更新。终端节点信息只存储在本地域及邻近域的MKD节点中,具有移动特性的MAP节点不参与对终端节点的信息维护,只在终端节点接入时才通过MKD节点发送给相关MAP节点的终端节点信息,使其更能适应Mesh网络拓扑结构变化的特性。

·终端节点在初始认证后已成为合法成员,并且在网络中传输的是YSTA信息,可以极好地隐藏终端节点的身份,并且在一定的时间内对XSTA和YSTA进行更新,可以抵御攻击者对信息流长时间的分析处理而获得终端节点身份信息的缺点。

·在接入认证的过程中同时实现了通信双方的密钥交换,减少了信息交互轮数。并使用对称的加解密方式实现信息传输,与基于公钥体制的加解密方式相比进一步降低了计算开销。

·实现双向认证。当终端节点发送请求切换开始信息后,MKD通过查询预接入列表中YSTA的合法性,验证终端节点是通过初始认证后接入网络的合法节点。MKD通过建立的安全通道将p、g传送给新的目标MAP,终端节点通过消息认证码验证该目标MAP的真实性。

5 结束语

针对WLAN Mesh网络的漫游接入认证过程,新协议RADH利用EMSA初始认证过程中所建立的安全链路,在此基础上利用修改后的DH密钥交换过程,避免在漫游接入过程中终端节点与旧的归属域的重复认证,只需与新的归属域进行较少的交互次数完成接入认证过程。通过形式化分析方法中的CK模型,证明了所提方案具有基本的SK安全属性。与基于邻居图的切换接入方案相比,新方案更能适应Mesh网络拓扑变化较快的特性,且能较好地隐藏终端节点的身份信息。在完成双向接入认证过程的同时,完成了密钥的生成,并在接入时延上优于EMSA协议。虽然终端节点中选择的XSTA在全网中可能发生碰撞,但是这种几率是非常小的,不会影响正常的网络通信。为进一步提高切换接入的成功率,研究不重复选择随机数算法将是下一步的研究工作。

1 彭清泉,裴庆祺,庞辽军等.一种WLAN Mesh网络快速切换认证.江苏大学学报(自然科学版),2010,31(4):458~463

2 杨超,曹春杰,王巍等.一种新的Mesh网络漫游接入协议.吉林大学学报(工学版),2008,38(2):423~428

3 Chi Kuang-hui,Shih Yung-chien,Liu Ho-han,et al.Fast handoff in secure IEEE 802.11s mesh networks.IEEE Transactions on Vehicular Technology,2011,60(1):219~232

4 Li Nan.Research on Diffie-Hellman key exchange protocol.Proceedings of the 2nd International Conference on Computer Engineering and Technology,Chengdu,China,2010:634~637

5 Bellare M,Canetti R,Klawczyk H.A modular approach to the design and analysis of authentication and key-exchange protocols.Proceedings of the 30th Annual Symposium on the Theory of Computing,New York,USA,1998:419~428

6 彭华熹.一种基于身份的多信任域认证模型.计算机学报,2006,29(8):1 271~1 281

7 Boneh D.The decision Diffie-Hellman problem.Lecture Notes in Computer Science,1998(1423):48~63

8 Zhang Fan,Ma Jianfeng,Moon S J,et al.The security proof of a 4-way handshake protocol in IEEE 802.11i.Lecture Notes in Computer Science,2005(3802):488~493

9 朱辉,李晖,杨加喜等.一种可证明安全的通用多信任域认证协议.武汉大学学报(信息科学版),2008,33(10):1 051~1 054

猜你喜欢

会话密钥终端
幻中邂逅之金色密钥
密码系统中密钥的状态与保护*
QQ和微信会话话轮及话轮转换特点浅析
X美术馆首届三年展:“终端〉_How Do We Begin?”
通信控制服务器(CCS)维护终端的设计与实现
TPM 2.0密钥迁移协议研究
一种对称密钥的密钥管理方法及系统
基于集群节点间即时拷贝的会话同步技术研究①
汉语教材中的会话结构特征及其语用功能呈现——基于85个会话片段的个案研究
多功能北斗船载终端的开发应用