APP下载

EAP-TTLS认证及其在WiMAX网络中的应用

2010-08-11郭旭东刘建伟

通信技术 2010年7期
关键词:密钥协商密码

郭旭东, 刘建伟

(北京航空航天大学 电子信息工程学院,北京100191)

0 引言

当前使用的基于口令的认证协议大部分基于这样的机制[1]:认证服务器随机生成一个挑战值发送给客户端,客户端将口令与挑战值进行 HASH运算,并将运算结果作为响应值回发给认证服务器,认证服务器从数据库中取出该用户的口令,随后进行相同的 HASH运算,将运算结果与客户端回传的响应值进行比对,来验证客户端身份的真实性。以上这一流程基本描述了 CHAP, MS-CHAP, MS-CHAP-V2, EAP/MD5-Challenge和EAP/One-Time Password等认证协议的工作机制。挑战应答机制的缺点是:如果窃听者窃取到挑战-响应值,就可以发起字典攻击。窃听者将口令字典中的口令与获得的挑战值进行 HASH来猜测用户口令。由于用户口令一般较短且具有一定特征,例如:生日,电话号码,车牌号等。所以字典攻击对于挑战应答机制是一种非常有效的攻击手段。在有线网络通信中,攻击者成功窃取挑战-响应值实际上是一件比较困难的事情。但是在无线网络中,由于其通信链路的天然开放性,并且无线网络通常作为接入网,处于边缘网络,所以非常容易遭受窃听攻击,中间人攻击等。EAP-TTLS协议可以将传统的基于挑战应答机制的认证方法应用于无线网络,并有效保护无线链路,防止窃听攻击。

1 EAP-TTLS认证协议

1.1 EAP-TTLS网络架构模型

图1描述了EAP-TTLS通用的网络拓扑图。在网络逻辑结构中,一般包含4个实体,各个实体间的安全关系为:①客户端与接入点AP/NAS之间在通信前不存在任何安全关联;② 网络接入点,TTLS服务器,AAA服务器在通信前与相连接的实体已存在安全关联。例如,无线接入点与 TTLS服务器之间,TTLS服务器与AAA服务器之间,事先存在一个共享的密钥。EAP-TTLS是 EAP-TLS认证方法的扩展。EAP-TTLS通信过程如图1所示,可以划分为两个阶段:第一阶段,TLS握手过程。该阶段实现客户端对服务器的单向认证(服务器同时也可以认证客户端,但一般放在第二阶段),同时在客户端与 TTLS服务器之间进行密码组件协商协商与密钥材料交换,建立一个安全隧道;第二阶段,隧道阶段。在安全隧道的保护下,服务器对客户端进行认证,认证成功后,进一步协商客户端与 AP之间进行安全的数据通信所使用的密码组件与密钥材料。最终实现在客户端与无线接入点 AP之间进行安全通信。

1.2 EAP-TTLS认证流程

笔者在研究EAP-TTLS协议时,查阅了国内相关的研究文献,发现有一个共同问题:即关于 EAP-TTLS的两次密码组件协商,密钥材料交换以及各级密钥的产生过程分析不明确,所以笔者在此主要对上述几个问题作了详细论述,关于EAP-TTLS认证流程的其他问题可参阅文献[2-4]或国内相关文献。图2是基于EAP-TTLS的CHAP的认证流程图。

①在客户端与访问节点AP之间使用链路层协议,如PPP,EAPOL等协议来承载EAP协议。在访问节点AP与TTLS服务器之间使用Radius协议或Diameter协议来封装EAP协议;

②存在两次密码组件协商与密钥材料交换。如图2中虚线方框所示,在第一阶段和第二阶段都存在密码组件协商与密钥材料交换过程,但两者目的不同。第一阶段的密码组件协商与密钥材料交换是为了在客户端与 EAP-TTLS服务器之间建立安全隧道。第二阶段的密码组件协商与密钥材料交换是为了在客户端与无线节点之间建立安全的通信链路。值得注意的是客户端与无线节点 AP之间所需的密码组件和密钥材料是由客户端与TTLS服务器之间进行协商,最后由TTLS服务器将协商结果转发给无线节点AP。目的是为了防止假冒节点攻击;

③相对于无线节点AP,TTLS优先考虑客户端的密码组件。TTLS隧道阶段结束后,将在客户端与无线节点AP之间建立起一个安全的通信链路。该通信链路所需的密码组件是由TTLS服务器在优先考虑客户端支持的密码组件的情况下,对客户端与无线节点提供的密码组件进行折中的一个结果。如图 2所示,无线节点通过虚线椭圆框所标注的 RADIUS Access-Request消息,将自己所支持的密码组件发送给TTLS服务器。客户端在隧道阶段,将密码组件与认证消息一同发送给TTLS服务器。EAP-TTLS协议要求,通信双方必须支持的密码组件为:TLS_RSA_WITH_3DES_EDE_CBC_SHA,可选择支持的有[5-6]:TLS_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_RC4_128_MD5,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_DH_DSS_WITH_DES_CBC_SHA,TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA等。每一组密码组件包括四个部分:密钥交换算法,加密算法,密钥长度,MAC算法;

④TTLS密钥体系。一个完整的TTLS会话会建立两套密钥材料:一套用于隧道通信;另一套用于客户端与无线节点AP之间安全的数据通信。两套密钥材料都是基于同一个 Master Secret。如图3所示,Master_Secret的产生过程如下:

Master_Secret=TLS-PRF-48(pre_master_secret,"master secret", client.random || server.random)TLS- PRF-X是TLS协议用于产生X bit的伪随机函数。client. random,server.random是分别在Client Hello消息和Server Hello消息中的 28 Bytes的随机数。Pre_master_ secret是 TTLS的预主密钥,在TLS握手阶段中产生。根据密码组件中指定的密钥交换算法不同,预主密钥的产生机制也不完全相同。当密钥交换算法为RSA时,则由客户端产生一个48Bytes的伪随机数作为Pre_master_secret,使用服务器证书中的RSA公钥加密,通过Client_Key_Exchange消息传递给TTLS服务器;当密钥交换算法为DH_DSS时,则客户端将自己的DH公钥传递给TTLS服务器,双方根据DH算法产生Pre_master_secret。

(1) 隧道通信所需要的密钥材料

MSK,EMSK,IV由Master_Secret导出,具体导出过程如下[3]:

(2)客户端与无线节点之间所需的密钥材料

MSK,EMSK也由Master_Secret导出,具体导出过程如下[2]:

MSK与EMSK在客户端与TTLS服务器端单独生成,当客户端认证通过后,由TTLS将MSK,EMSK等密钥材料传递给无线节点AP。

2 EAP-TTLS认证协议在WiMAX网络中的应用

2.1 EAP与EAP-TTLS比较

EAP是一个普遍使用的认证框架,而不是一个特殊的认证机制,经常被用于点到点的连接中。EAP提供一些公共的功能,并且允许协商所希望的认证机制。这些机制被叫做EAP方法。EAP作为一种认证框架,本身并不提供安全保证。例如EAP-CHAP,EAP-MD5等以明文的方式传递信任状等认证信息。对认证消息的保护完全依赖于EAP方法,例如EAP-TLS则提供了对认证消息的保护。

EAP-TTLS与EAP的功能非常相似,只是对认证消息作了更加完善的保护。EAP_TTLS的设计初衷就是将传统的认证方法应用于容易遭受窃听攻击的无线网络。EAP-TTLS协议分为两个阶段:①客户端认证 TTLS服务器,并在两者间建立一条安全隧道;②隧道认证,双方协商认证机制,如CHAP,MD5等,实现服务器对客户端的认证,在此基础上,进一步协商随后数据通信所需的密码组件和密钥材料。

2.2 WiMAX安全子层对EAP使用的建议

WiMAX是继WCDMA、CDMA2000和TD-SCDMA之后被国际电信联盟承认的第四个3 G标准。它通过安全子层对身份认证、密钥管理,数据安全传输进行管理。安全子层的具体实现协议为密钥管理协议(PKM)。PKMv1是密钥管理协议的第一个版本。该版本规定基站BS采用数字证书的形式对移动结点MS进行认证,其缺点在于仅支持单向认证,无法防止假冒基站攻击。关于WiMAX网络存在的安全漏洞,文献[9]作了较详细的讨论,在此不再赘述。PKMv2[7]针对PKMv1的单向认证漏洞作了修订,该版本要求移动节点与基站采用双向认证。具体有两种实现方案:①基于RSA的数字证书;②采用EAP协议。文献[8]中也阐述了PKMv2引入EAP协议的思想,但并未对EAP所采用的方法做规定,只是要求经过EAP认证后,在BS与MS之间建立一个64Bytes共享主密钥MSK。由MSK结合密钥导出算法逐级导出PMK/EIK、AK、KEK,CMAC/HMAC等密钥。由此可见,MSK的保密性是整个PKMv2协议安全的关键。

2.3 EAP-TTLS在WiMAX应用中的可行性分析

①由2.1节分析可知,EAP所支持的大多数方法EAP- TTLS都支持。例如,EAP-PAP,EAP-CHAP等。并且在客户端与服务器之间建立了安全的隧道,可以保证EAP认证在客户端与服务器之间产生的MSK的保密性。所以,在正真意义上体现了EAP可扩展性的优点,使传统的认证方法应用于无线网络认证;

②EAP-TTLS支持双向认证,满足WiMAX对安全性的要求。同时与PKMv2建议的基于RSA的数字证书的双向认证相比具有更大的灵活性,不仅减少了对 MS同时存储大量客户数字证书的要求,而且也增加了BS对MS认证方法的灵活性;

③由图1可知EAP-TTLS网络架构与WiMAX网络架构非常相似。AP相对于MS,TTLS与AAA服务器结合相对于WiMAX的后台服务器,不仅可以完成认证,授权,计费功能,而且可以实现漫游功能。

3 结语

从网络架构,认证流程等方面对EAP-TTLS协议进行了分析,特别是针对国内相关方面文献没有明确指出EAP-TTLS协议两次密码组件协商与密钥材料交换;或虽然指出TTLS两次密码组件协商、密钥材料交换,但是仅分析了其中用于建立隧道的密码组件协商、密钥材料交换的过程等情况,明确指出了TTLS两次密码组件协商、密钥材料交换过程,并从目的性及具体实现流程作了详细的论述。WiMAX网络的PKMv2协议提出了在其认证过程采用EAP方法的建议。通过对EAP与EAP-TTLS的比较,发现EAP-TTLS协议更加适用于WiMAX网络的认证过程,而且在真正意义上符合了EAP协议可扩展性的设计初衷,将传统的基于挑战应答机制的认证方法应用于无线网络认证。

[1] MADJID Nakhjiri, MASHA Nakhjiri. AAA and Network Security for Mobile Access[M].UK: John Wiley & Sons Ltd, 2005.

[2] FUNK P, BLALE W S. Extensible Authentication Protocol Tunneled Transport Layer Security Authenticated Protocol Version 0(EAP-TTLSv0)[S].[s.l.]:RFC,2008.

[3] Simon D, Aboba B, Hurst R. The EAP-TLS Authentication Protocol[S].[s.l.]:RFC,2008.

[4] IEEE Std. 802.16-2004. IEEE Standard for Local and Metropolitan Area Networks, part 16: Air Interface for Fixed Broadband Wireless Access Systems[S].USA:IEEE Press,2004.

[5] DIERKS T,RESCORLA E. The Transport Layer Security (TLS)Protocol Version 1.1[S].[s.l.]:RFC,2006.

[6] ABOBA B, BLUNK L, VOLLBRECHT J, et al. Extensible Authentication Protocol (EAP)[S].[s.l.]: RFC,2004.

[7] IEEE Std. 802.16e/D12. IEEE Standard for Local and Metropolitan Area Networks, part 16: Air Interface for Fixed and Mobile Broadband Wireless Access Systems[S].USA:IEEE Press,2005.

[8] 胡涛,薛质,李建华.WiMAX安全机制分析与研究[J].信息安全与通信保密,2008(06):75-77.

[9] 谢蕾.移动 WiMAX的安全性分析与改进[J].通信技术,2009,42(02):264-269.

猜你喜欢

密钥协商密码
密码里的爱
幻中邂逅之金色密钥
密码系统中密钥的状态与保护*
密码抗倭立奇功
TPM 2.0密钥迁移协议研究
一种对称密钥的密钥管理方法及系统
论协商实效与协商伦理、协商能力
Rheological Properties and Microstructure of Printed Circuit Boards Modifed Asphalt
密码藏在何处
以政协参与立法深化协商民主