一种基于WLAN MESH网络中的EAP-TLS接入认证方案

2010-08-11 06:23王思涵郭渊博
通信技术 2010年2期
关键词:报文密钥客户端

王思涵, 郭渊博, 刘 伟

(解放军信息工程大学 电子技术学院,河南 郑州 450004)

0 引言

MESH是一种新型的无线网络技术,由于其自身具有多跳、自配置、自愈合、高带宽[1]等特点,弥补了传统无线局域网(WLAN)络在这些方面的不足,因此成为目前人们所关注的一项焦点无线技术。当前,WLAN MESH网络技术仍处于理论研究和验证阶段,相关技术尚未完全成熟。有关WLAN MESH网络的安全接入认证问题,一直没有很好的定义或规范。

WLAN MESH网络主要存在简单客户端(Simple Station ,STA)和MESH节点(Mesh Point, MP)两种网络实体。其中WLAN MESH网络的MP,是对WLAN网络节点(AP)功能的扩展。当客户端实施安全接入时,不管是前期的认证还是认证后的数据通信,都需要经由多跳,通过其它节点使用公开的、自由传播的无线信道来传输信号,因此对越权存取和窃听的行为更不容易防备,易遭受信息窃取和拒绝服务攻击。

IEEE802.11sMESH工作组提议利用IEEE802.11i机制下802.1x协议框架来实现WLAN MESH网络中的安全接入控制,但对此并没有给出详细规范。本文提出一种基于802.1x认证协议下的 EAP-TLS 认证方式来实现WLAN MESH网络的安全接入认证。首先对EAP可扩展协议下的TLS协议进行分析,然后对基于WLAN MESH网络中节点认证角色进行划分,在此基础之上研究了 EAP-TLS协议在 WLAN MESH网络中的接入认证过程,最后对EAP-TLS认证协议进行安全性分析。

1 EAP-TLS 协议

EAP-TLS是在TLS协议的基础上经过EAP封装得到的,它采用 TLS(传输层安全协议)的认证方法,实现了两个通信实体之间传输的保密性和数据完整性。

TLS协议包括TLS记录协议(TLS Record)和TLS握手协议(TLS Handshake) 两个协议层,其中记录协议建立在可靠的传输协议TCP之上,为较高层协议提供封装、压缩、加密等基本功能的支持;较高层握手协议建立在记录协议之上实现了数据传输开始前,通讯双方进行身份认证、协商加密算法-交换加密密钥等功能。

1.1 记录协议

记录协议为上层的握手协议服务。在发送端,它从高层协议接收到要发送的数据后,对它们进行数据分段、压缩、形成 MAC、加密,最后传输;在接收端,处理解密、校验MAC、解压缩、重组工作,最后传递给协议的高层客户。

记录协议是通过将数据流分割成一系列的片段并加以传输的,其中对每个片段单独进行保护和传输。在接收方,对每条记录单独进行解密和验证这种方案使得数据可以从连接的一端传送到另一端,并在接收后即刻加以处理。

在传输片段之前,为了防止所遭到的攻击可以通过计算数据的 MAC来提供完整性保护。MAC与片段一起进行传输,并由接收实现加以验证将MAC付加到片段的尾部,并对数据与MAC整合在一起的内容进行加密,形成经过加密的负载(Pay Load),最后给负载装上头信息,头信息与经过加密的负载的连结称作记录,记录是实际传输的内容。传输过程如图1所示。

1. 2 握手协议

握手协议位于记录协议之上,主要由3个子协议组构成--握手(Handshake)协议、警告(Alert)协议、改变密码规格(Change Cipher Spec)协议,允许对等双方在记录层的安全参数上达成一致、自我认证、初始化协商安全参数、互相报告错误条件。TLS握手协议用来使服务器与客户在传输应用层数据之前交换TLS协议版本信息、协商加密算法、进行身份认证并交换密钥。

TLS握手协议主要包括下面几个步骤:

① 交换问候(Hello)信息以协商密码一致性,交换随机值并检查会话是否可重用;

② 交换必要的加密参数供客户端和服务器端使用,协商Premaster Secret以达成预加密一致性;

③ 交换鉴权证书与加密信息,供客户端和服务器端互相鉴权认证使用;

④ 按指定的密钥交换协议产生 Premaster Secret,再通过密钥导出函数(KDF)计算客户端和服务器端相应的加密密钥、MAD密钥和IV;

⑤ 向记录层加密参数;

⑥ 允许客户端和服务器检查对方是否以相同的加密参数进行计算,以及确定认证过程是否成功。

2 基于802.1x 协议下的EAP-TLS扩展方案

WLAN MESH网络的多跳通信方式不可避免地面临着很多安全威胁,而安全接入认证是保护网络不被非法节点侵入的第一层防护。在 WLAN MESH网络中,客户端接入WLAN MESH网络可以看作是WLAN终端接入网络,WLAN MESH网络中的Mesh路由器可以充当WLAN的AP,来对客户端进行验证。不同之处在于客户端接入 WLAN MESH网络采用的是多跳形式,需经多跳节点之间的无线信道传输[2],节点的自私或恶意行为会严重导致网络性能和安全下降,要保证节点传输数据的安全和隐私不受外界攻击是一个巨大的安全挑战。

EAP-TLS协议提供通信实体之间的双向认证[3],又提供动态会话密钥分发,并且在通信双方都要求持有公钥证书,有效防止了窃听的被动攻击和中间人、会话劫持、重放、报文篡改等主动攻击, 保证了通信实体间数据传输的完整性和安全性。原有的EAP-TLS认证方式是基于WLAN的接入方法,在WLAN网络中只定义了STA、AP、AS三种角色,并且通过一些机制来强化这些节点的功能:安全的 STA-AS相互认证、安全的AP-AS信道都保证了整个认证过程的安全性。但这并不能满足WLAN MESH网络的安全接入认证需求,在WLAN MESH网络中则定义了更多角色的节点:MP、MAP、MPP、STA和AS。当一个MAP接入到WLAN MESH网络中时,首先需要和WLAN MESH网络中的一跳范围内的可信节点MP进行第一次认证后,该MAP就可作为可信节点,与其它要接入的客户进行认证。基于 WLAN MESH网络中接入认证所需的节点功能定义如下:

① Mesh Point(MP):在 Mesh网络中,使用 IEEE 802.11MAC和PHY协议进行无线通信,并且支持Mesh功能的节点。该节点支持自动拓扑、路由的自动发现、数据包的转发等功能;

② Mesh AP (MAP):任何支持 AP 功能的 Mesh Point;

③ MP/MAP with Mesh Portal(MPP):连接 WLAN Mesh和其它类型的网络并转发通信的MP/MAP节点。这个节点具有 Portal功能,通过这个节点,Mesh 内部的节点可以和外部网络通信;

④ 简单客户端(Simple Station,STA):即为802.11无线局域网中的客户端;

⑤ 认证服务器(AS):通常为 RADIUS 服务器,该服务器可以存储有关用户的信息. 当用户通过认证后,AS会把用户的相关信息传递给认证者,由认证者构建动态的访问控制列表,用户的后续数据流就将接受上述参数的监管。

在一个WLAN MESH 网络中,MP可以担任申请者和认证者两种角色,同时AS可以被绑定在一个MP中,也可以位于远端,和认证者MP之间建立安全连接。

2.1 基于WLAN MESH 网络的EAP-TLS安全接入认证机制

在WLAN MESH网络环境中,WLAN MESH作为EAP的传输网络,采用TLS认证方式,在客户端与认证者之间使用EAPOL协议[4]传送认证信息,认证者与认证服务器之间通过RASIUS协议[4]传送认证信息,EAPOL和RASIUS数据包中封装了 EAP-TLS协议,在客户端和认证服务器直接传递EAP-TLS协议。基于EAP-TLS的认证协议栈如图2所示。

EAP-TLS认证方案实现了客户端与认证服务器的双向认证并对认证双方采用了加密解密算法并对生成的密钥达成了共识。EAP-TLS认证方式要求客户端与认证服务器必须提供由认证中心CA签发的用于证明用户和公开密钥之间关联的证书,在提供证书的同时,必须提供有关能够让客户端与认证服务器双方对认证中心的权威性达成共识的证明材料,即在交换证书的同时,客户端与认证服务器要协商出一个会话基于会话的密钥,一旦认证通过,服务器将会话密钥传给认证者允许该客户端访问网络。

图3 基于WLAN MESH 网络的EAP-TLS 认证流程

基于WLAN MESH网络中EAP-TLS认证方式的具体过程如图3所示。

① MAP→MP :MAP向MP发送EAPOL-Start帧开始双向认证;

② MP→MAP:MP接受MAP发送的帧后通过EAP请求要求MAP提供身份标识;

③ MAP→MP→AS:MAP向 MP发送 EAP-Response/Identity帧,提供身份标识;MP将身份标识信息封装成RADIUS Access Repuest帧转发给服务器AS;

④ AS→MP→MAP:AS收到MP转发的信息后,将核查用户,找到匹配项,进行加密处理,在获知采用 EAP-TLS为认证协议后,向MAP发送一个启用TLS认证过程的EAP请求报文,并有MP传送;

⑤ MAP→AS:MAP收到MP传送的信息后,并对信息进行加密解密处理,通过发送客户的Hello消息开始TLS认证过程,由MP转发AS;

⑥ AS→MAP:AS发送服务器Hello消息、密钥消息、服务器证书、证书请求,这些消息被封装在EAP报文中传输给MAP;

⑦ MAP→AS:MAP收到报文后,首先对AS提供的证书进行鉴别,然后发送客户证书消息、密钥消息、证书证明、密钥切换、结束消息;

⑧ AS→MAP:如果AS成功认证MAP,则解密预主密钥PMK,然后执行一系列步骤产生主密钥MK,向MAP发送密钥切换消息和结束消息,否则会话终止;

⑨ MAP→AS:MAP对收到服务器计算的主密钥进行求证,如果和自己计算的相同,认证过程正常结束,并向 AS发送EAP响应报文,否则终止认证;

⑩ AS→MAP:A向MP发送RADIUS允许接入报文,并在报文中给出MAP和AS确定的MK(主密钥),随后MP向MAP发送EAP成功报文,认证过程完成。

从上面的认证过程可以看出,MAP首先作为客户端访问WLAN MESH网络时,需要与网络中一跳范围内的邻近节点MP进行认证,并且在认证前作为客户端的MAP和服务器都需要生成各自的证书,然后通过MAP访问网络开始它与AS的EAP-TLS双向认证过程。如果认证成功,该MAP就可作为WLAN MESH网络中的可信节点同时也可作为认证者与STA进行认证。

2.2 EAP-TLS安全性分析

针对 WLAN MESH网络中存在的安全隐患可对EAP-TLS的认证过程做以下安全性分析:

① 客户和服务器双方都是基于公钥证书前提下进行双向认证[5],并且通信双方可以使用公钥密码RSA算法进行认证,该算法使得通信双方事先不需要通过保密信道交换密钥;

② 通信实体双方共享密钥的协商是保密、可靠的,即使攻击者能发起中间人攻击,协商的密钥也不可能被窃听者获得,也不能随意的篡改协商通信消息。因为 EAP-TLS协议实现客户和AS服务器的双向认证,有效保证通信双方身份的真实性;并且认证服务器和客户生成的共享会话密钥,传送时分别采用认证服务器和客户机的共享密钥、公钥相互加密传送,从而保证了会话密钥的机密性;

③ EAP-TLS双向认证可以防止中间人攻击和“流氓”服务器攻击[6]。EAP-TLS提供了客户和服务器双方双向认证使的中间人攻击无法得逞,因为当客户向认证服务器提出认证请求时,攻击者由于不知道预先共享密钥或会话密钥,所以无法假冒认证服务器。

同样的道理,“流氓”服务器攻击也只能对单向认证而言,即只有认证服务器对用户进行认证有效,对双向认证无效。

3 结语

WLAN MESH网络中的安全接入认证是WLAN MESH网络中需首要解决的安全问题。本文在分析 EAP-TLS协议的基础之上,提出一种基于EAP-TLS的WLAN MESH网络安全接入认证方案,针对WLAN MESH网络的特点对原有WLAN中EAP-TLS协议进行扩展,并分析了EAP-TLS在WLAN MESH网络中的应用流程, EAP-TLS协议为WLAN MESH网络中的两个通信实体之间提供了数据的保密性和完整性,该协议采取了数据加密、数字签名、报文验证等密码技术,较好地解决了在WLAN MESH网络接入认证过程中端到端的安全通信问题。

[1] 徐颖.无线Mesh网的接入控制和密钥管理[D].西安: 西安电子科技大学,2007.

[2] 李娜.802.11mesh网的研究及其安全分析[J].技术分析,2008, 28(02):48-50.

[3] 柳瑞芸,彭宇,张旭平.基于EAP的WLAN认证技术[J].电信技术,2004,3(02):56-58.

[4] 罗丹,陈常嘉. 802.1x协议及其应用[J].网络与信息安全,2007,22(01):49-52.

[5] 褚丽莉.无线局域网安全分析[J].通信技术,2009, 42(07):34-36.

[6] 张芳,蒋秦芹.无线局域网安全机制增强技术研究[J].通信技术,2008, 41(05):116-124.

猜你喜欢
报文密钥客户端
基于J1939 协议多包报文的时序研究及应用
幻中邂逅之金色密钥
密码系统中密钥的状态与保护*
CTCS-2级报文数据管理需求分析和实现
如何看待传统媒体新闻客户端的“断舍离”?
浅析反驳类报文要点
TPM 2.0密钥迁移协议研究
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路