可扩展认证协定

可扩展认证协定

可扩展认证协定(Extensible authentication protocol,EAP)是一个第二层处理,允许网路对无线客户端进行认证的协定。

    • 中文名:可扩展认证协定
    • 外文名:Extensible authentication protocol,EAP
    • 性质:一个第二层处理过程
    • 特点:允许网路对无线客户端进行认证

简介

如今Internet用户都需要连线到ISP以取得网路服务,同时也有许多个人需要将家中的个人计算机互联起来,他们一般都有拨号电话线路或租用的电话专用线路。然而这些线路都只是提供了点到点之间的一条物理链路,要在物理链路上进行通信必须藉助于某种通信协定来对链路进行控制。因此出现了两种协定: SLIP和PPP。其中SLIP有以下一些缺陷:

  • 只支持IP;

  • 不允许IP位址的动态分配;

  • 不支持用户认证。

而PPP却为点到点数据链路上传输多协定数据报提供了一种通用方法。为了在点到点物理链路上建立通信,在链路建立阶段, PPP通信链路的每一端都必须首先传送LCP数据包来对该数据链路进行配置协商。在链路已经建立起来后,在进入网路层协定进行实际的数据通信之前,PPP提供了一个可选的认证阶段。预设时,认证并不是必需的。如果想要对通信链路进行认证,具体实现时必须在链路建立阶段指定认证协定配置选项来说明要进行认证。起初PPP上支持的认证方式主要是PAP和CHAP,然而它们都不能扩展。对此,PPP协定现在增加了一种新的可扩展认证协定(EAP),它是PPP , 认证的一个通用认证协定 在它上面可以支持多种认证机制,也就是说它提供了在PPP上进行多种认证的底层框架其它各种具体的认证机制都是建立在它之上的。 ,具体来讲, EAP在链路建立阶段并没有选定某一种特定的认证机制,只需说明要使用EAP , 认证即可 而把具体认证过程推迟到后面一个独立的认证阶段。在这一阶段进行认证方式的协商和具体认证过程,并由认证成功与失败的结果来决定是否进入网路层以使网路层数据能够在链路上进行传输。

可扩展认证协定(Extensible authentication protocol,EAP)是一个第二层处理过程,允许网路对无线客户端进行认证。有两种EAP:一种用于无线网路,另一种用于LAN连线,通常称为 EAP over LAN(EAPoL)。无线环境中的一个问题是要允许WLAN设备与AP 后面的设备进行通信。有3个标準定义了此过程:EAP,802.1x和远程认证拨入用户服务(Remote authentication dial in user service, RADIUS )。EAP定义了标準的认证信息封装方法,如AP用于对用户进行认证的用户名和密码和数字证书。EAP本质上是点对点协定(PPP)的扩展,第一种EAP是EAP-MD5,它使用挑战握手认证协定(challenge handshake authentication protocol, CHAP)进行认证,下面是一些EAP扩展(介绍其中EAP-MD5和EAP-TLS)。

EAP设计思想

设计思想:PPP主要作用于两层,数据链路层和物理层。PPP根据双方的选项协商、认证协商等来控制串列网路设备数据链路是否允许某些特定的网路层数据是否可以通过。网路层是建立在数据链路层之上的,当数据链路层有来自物理层的数据时,它将处理得到的数据,即根据数据帧协定域的不同而对网路协定数据进行分流,将不同协定的数据分别发往相应的上层网路协定输入伫列,并相应地给它们发一个软中断,以通知上层对输入伫列进行处理。只需通过检测认证过程的成功与否来决定是否将链路交给相应的上层网路使用,具体如图所示。

下面是具体的设计与实现:首先设计一个用于EAP认证配置信息档案,PPP用此档案来获得EAP认证的客户与伺服器的认证选项信息。有PPP一个从档案中获取各种认证选项信息的通用子程式,通过它可把与EAP认证有关的选项参数加入到的PPPLCP配置选项列表中。如果真的要进行EAP认证,则在LCP传送LCP配置包时,对方将知道要进行EAP认证。同时将EAP的通信认证过程设计为一个有限状态自动机。有限自动机的信息结构主要内容如下:

typedefstructeap_state{intes_unit;通信接口structeap_authclient;客户认证信息structeap_authserver;伺服器认证信息…}eap_state;

其中认证信息主要包括通信双方的名字、认证请求类型、请求序列号、逾时值等参数。它们是控制EAP有限自动机通信协商过程的依据。

EAP认证流程机制如下:首先在用PPP,向远程端点进行连线时在链路建立阶段表明要使用EAP认证之后当进行到认证阶段时就进,行EAP认证过程:

  • 认证一方向另一方首先传送一个身份请求并等待对方发来,相应的回响。

  • 对方在接到身份请求要求时,它应传送一个身份回响包,它们的ID必须相同。

  • ID认证方检查包类型是否是身份回响包,且是否与传送请求时一致,如不一致则看是否到达了最大次数,如果没到则重发身份认证请求同时可选择性地传送一,个notification来传递一些通知信息,如这样的例子:包括带一个逾时设定能(expiration)的口令,OTP0序列整数(接近),认证失败警告等。在大多数情况下,notification不是必要的。

  • 在接到身份回响时,认证方根据身份,检查通信实体资料库,以查找对应的认证方式如找到则开始传送相应的认证请求。

  • 对方在接到认证请求时,首先检查它自己是否支持认证者所要求的认证请求如不支,持,则要传送一个NAK,否认包携带自己允许的认证类型。如支持则传送认证回响。

  • NAK认证者检查回响包,如是否认包,则重发对方允许的认证请求。如是上一次的认证请求的回响,则检查它是否是它所期待的回响以决定认证成功与失败,从而决定链路的打开与关闭。

  • 如上一步成功,向对方传送认证确认包,以使对方把链路打开,通知上层网路控制协定进行网路通信协定参数的协商,随着各个网路控制协定打开之后,PPP就把数据链路交给通信网路协定,这时双方才可以进行实际的通信。

  • PPP当所有的上层协定都不再需要使用此数据链路时,将传送中止链路请求包来结束数据链路。

EAP-MD5

支持使用CHAP和静态密码进行认证;

EAP-TLS

支持使用x.509v3数字证书进行认证;

802.1x和 RADIUS 定义了如何打包EAP信息,从而在网路上传输这些信息。 下图中显示了所使用的3中标準。802.1x描述了客户端(通常称为请求者)如何将EAP信息传输到网路访问设备(认证者)。网路访问设备可以是AP,交换机,路由器,VPN网关等。认证者使用RADIUS 协定将这些信息传输到认证伺服器,改伺服器会确认此请求者是否可以访问网路。注意,认证者处通常没有本地定义的用户凭据,它通常在认证伺服器上查找此内容。

相关词条

相关搜索

其它词条