ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:24.61KB ,
资源ID:23121639      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23121639.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(RFC2284PPP可扩展认证协议.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

RFC2284PPP可扩展认证协议.docx

1、RFC2284PPP可扩展认证协议组织:中国互动出版网(http:/www.china-RFC文档中文翻译计划(http:/www.china-E-mail:ouyangchina-译者:Hlp(hlp,huangliuqi)译文发布时间:2001-4-26版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须保留本文档的翻译及版权信息。Network Working Group L. BlunkRequest for Comments: 2284 J. VollbrechtCategory: Standards Track Merit Network, Inc. M

2、arch 1998 PPP可扩展认证协议(RFC 2284 PPP Extensible Authentication Protocol,EAP)本文档现状 This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the Internet Official Protocol Stan

3、dards (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.版权通告 Copyright (C) The Internet Society (1998). All Rights Reserved.摘要 点到点协议(PPP,参考文献1)提供了一种在点到点链路上传输多协议数据包的标准的方法。 PPP还定义了可扩展的链路控制协议(Link Control Protocol,简称LCP),允许该链路在进入网络层协议之前协商为通信对方进行身份

4、认证所使用的认证协议(Authentication Protocol)。 本文档定义了PPP可扩展的认证协议(Authentication Protocol)。This document defines the PPP Extensible Authentication Protocol.目录 1. 简介 . 2 1.1 规范的条件. 2 1.2 术语. 2 2. PPP可扩展认证协议(EAP) . . 3 2.1 配置选项格式 . 4 2.2 数据包格式 . 6 2.2.1 Request和Response . . 6 2.2.2 Success和Failure . . 7 3. 初始EAP

5、 Request/Response类型. 8 3.1 Identity . 9 3.2 Notification . 10 3.3 Nak . 10 3.4 MD5-Challenge . 11 3.5 One-Time Password (OTP) . 11 3.6 Generic Token Card . 12 参考文献. 13 致谢 . 14 主席地址 . 14 作者地址 . 14 完整的版权通告 . 151. 简介 为了在点到点链路上建立通信,在链路建立阶段PPP链路的每一端都必须首先发送LCP数据包来对该数据链路进行配置。在链路已经建立起来后,在进入网络层协议之前,PPP提供一个可选

6、的认证阶段。 缺省认为,认证不是必需的。如果想要对链路进行认证,实现必须在链路建立阶段指定认证协议配置选项(Authentication-Protocol Configuration)。 这些认证协议主要是由通过交换电路(switched circuits)或者拨号链路(也适用于专用链路)连接到PPP网络服务器上的主机或者路由器使用。服务器可以使用这些主机或路由器的身份(identification)来选择网络层协商的选项。 本文档定义了PPP可扩展认证协议(EAP)。链路建立阶段、认证阶段以及认证协议配置选项在点到点协议(PPP,参考文献1)中定义。1.1. 本规范的条件 本文档中出现的关键

7、词必须(MUST),不允许(MUST NOT),必需(REQUIRED),应该(SHALL),不应(SHALL NOT),应该(SHOULD),不应该(SHOULD NOT),推荐(RECOMMENDED),可以(可能,MAY),以及可选(OPTIONAL),按RFC 2119(参考文献6)解释。中译版本将对这些关键词加粗并加上红色突出显示。1.2. 术语 本文档频繁使用下面的术语: 认证者(authenticator)链路要求进行认证的一端。在链路建立阶段的Configure-Request中认证者指定了将要使用的认证协议。 对方(peer) 点到点链路的另一端;被认证者进行认证的那一端。

8、悄悄地丢弃(silently discard)意味着实现不对数据包进行进一步处理而把它丢掉。实现应该提供对错误包括被丢弃数据包的内容进行登记的能力,并且应该在一个统计计数器中记录下该事件。 可显示的消息(displayable message) 解释为人类可读的字符串,并且不允许影响本协议的操作。消息的编码必须符合UTF-8转换格式(参考文献5)。2. PPP可扩展认证协议(EAP) PPP可扩展认证协议(EAP)是PPP认证的一个通用协议,支持多种认证机制。EAP在链路控制(LCP)阶段没有选择好一种认证机制,而把这一步推迟到认证(Authentication)阶段。这样就允许认证者在确定某

9、种特定认证机制之前请求更多的信息。这样做还允许使用一个“后端”服务器来实际实现各种认证机制,PPP的认证者仅仅需要传送认证(pass through)认证信息。 1. 在链路建立阶段完成后,认证者发送一个或多个Request来对对方进行认证。Request中有一个type域表明请求的类型。Request中type的实例包括,Identity, MD5-challenge, One-Time Passwords, Generic Token Card等等。MD5-challenge类型与CHAP认证协议紧紧对应。典型情况下,认证者将发送一个最初的Identity请求,然后是一个或多个请求认证信息

10、的Request。但是,最初的Identity Request并不是必需的,在identity能被事先假定(租借链路,专用拨号线路等等)的情况下可以跳过(bypass)。 2. 对方发送一个Response数据包对每一个Request做出应答。对应于每一个Request数据包,Response数据包包含一个type域,与Request中的type域对应。 3. 认证者发送一个Success或Failure数据包结束认证阶段。优点 EAP协议可以支持多种认证机制,而不必在LCP阶段预先协商好某种特定认证机制。 特定设备(例如,网络访问服务器NAS)不一定要理解每一种请求类型,而可以简单的作为某个

11、主机上的“后端”服务器的透传(passthrough)代理。设备仅仅需要检查success/failure的code来结束认证阶段。缺点 EAP要求给LCP增加新的认证类型(机制),这就要求修改PPP实现以使用EAP。它也与在LCP阶段就协商好特定认证机制的传统的PPP认证模式相背离。2.1. 认证选项格式 协商EAP认证协议的“认证协议配置选项”(Authentication-Protocol Configuration Option)的格式如下所示。传输时各域从左到右依次进行。 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3

12、4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Authentication-Protocol | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type 3 Length 4 Authentication-Protocol C227 (十六进制) EAP2.2. 数据包格式 档PPP帧中的protocol域表明协议类型为C227(PPP EAP)时,在PPP

13、数据链路层帧的Information域中封装且仅封装一个PPP EAP数据包。EAP数据包的格式如下所示,传输时各域从左到右依次进行。 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Code | Identifier | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

14、-+ | Data . +-+-+-+-+ CodeCode域为一个字节,标识了EAP数据包的类型。EAP的code值指定如下: 1 Request 2 Response 3 Success 4 Failure Identifier Identifier域为一个字节,辅助进行response和request的匹配。 Length Length域为两个字节,表明了EAP数据包的长度,包括Code,Identifier,Length 以及Data等各域。超出Length域范围的字节应该视为数据链路层填充(padding),在接收时应该被忽略掉。 Data Data域为0个或更多个字节。Data域的

15、格式由Code域决定。2.2.1. Request和 Response描述 Request数据包由认证者发送给对方。每一个Request有一个type域来表明正在请求的类型。认证者必须发送一个Code域为1的EAP数据包(即Request)。在收到有效的Response数据包之前,或者在可选的重发计数器计数满(expires)之前,必须发送另外的Request数据包。重新发送的Request必须保持Identifier的值不变以区别于新的Request。Data域的内容依赖于Request的Type。对方必须发送一个Response作为对Request的应答。Response必须仅在对接收到的

16、Request作出应答时发送,从不根据定时器重发。Response中的Identifier域必须与Request中的Identifier域匹配。 实现须知:因为认证过程经常涉及到用户输入,在决定重发策略和认证超时设定(timeout)时要谨慎。建议使用重发定时器为6秒,最大重传次数为10次作为缺省值。人们可能希望某些特定情况下(例如,涉及到Token Cards的时候)超时设定能更长些。另外,对方必须准备好在等待用户输入时悄悄丢弃所收到的重传数据包。 Request和Response数据包的格式如下所示,传输时各域从左到右依次进行。 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0

17、1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Code | Identifier | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Type-Data . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Code 1 for Request; 2 for Response. I

18、dentifierIdentifier域为一个字节。在等待Response时根据timeout而重发的Request的Identifier域必须相同。任何新的(非重发的)Request必须修改Identifier域。如果对方收到了重复的Request,并且已经发送了对该Request的Response,则对方必须重发该Response。如果对方在给最初的Request发送Response之前收到重复的Request(也就是说,它在等待用户输入),它必须悄悄的丢弃重复的Request。 Length Length域为两个字节,表明EAP数据包的长度,包括Code,Identifier,Lengt

19、h,Type以及Type-Data等各域。超出Length域的字节应视为数据链路层填充(padding),在接收时应该被忽略掉。 TypeType域为一个字节,该域表明了Request或Response的类型。在EAP的Request或Response中必须出现且仅出现一个Type。通常,Response中的Type域和Request中的Type域相同。但是,Response可以有一个Nak类型,表明Request中的Type不能被对方接受。当对方发送Nak来响应一个Request时,它可以暗示它所希望使用并且支持的认证类型。各种Type的原始定义在本文档后面的章节中给出。 Type-Data

20、 Type-Data域随Request和相对应的Response的Type的不同而不同。2.2.2. Success和Failure描述 Success数据包由认证者发送给对方,以确认认证成功。认证者必须发送一个Code域为3的EAP数据包(即Success)。 如果认证者不能为对方进行认证(给一个或多个Request发送“不可接受”Response),则实现必须发送一个Code域为4的EAP数据包(即Failure)。认证者可能希望在发送Failure之前发送几个Request以顾及到人为地打字错误。 实现须知:因为Success和Failure数据包不被确认,所以它们有可能丢失。对方必须顾

21、及到这种情况。对方可以用一个网络协议数据包(Network Protocol packet)来作为可选的Success的暗示。同样,收到LCP Terminate-Request可以视为收到Failure。 Success和Failure数据包的格式如下所示。传输时各域从左到右依次进行。 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Code | Identifi

22、er | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Code 3 Success; 4 Failure. IdentifierIdentifier域为一个字节,辅助匹配Response应答。Identifier域必须与其正在应答的Response域中的Identifier域相匹配。 Length 43.最初Request/Respons中的Type类型 本章定义了用于Request/Response中的各种EAP Type的最初集合。更多的类型在以后的文档中可以定义。Type域为一个字节

23、,标识了EAP Request或Response数据包的结构。头3种Type被认为特殊情形的Type,其余的Type定义了认证的交换流量。Nak类型仅对Response数据包有效,不允许把它放在Request中发送。Nak类型必须仅在对使用认证Type的Request作出响应时才发送。所有的EAP实现必须支持类型1-4,这些类型和类型5-6在本文档中定义,以后的RFC将定义其它的类型。Blunk & Vollbrecht Standards Track Page 8RFC 2284 EAP March 1998 1 Identity 2 Notification 3 Nak (Response

24、 only) 4 MD5-Challenge 5 One-Time Password (OTP) (RFC 1938) 6 Generic Token Card3.1. Identity描述 Identify类型用来查询对方的身份。通常,认证者发送该类型作为最初的Request。在期望与用户进行交互的场合还可以包括一条可选的可显示的消息以给对方作出提示。必须对包含Type 1(Identity)的Request发送Response以作出响应。 实现须知:对方可以通过用户输入获得Identity。建议在Identity无效或者认证失败时认证者重发(retry)Identity Request以顾

25、及到用户的打字错误。建议在发送Failure应答来结束认证阶段之前最少重发Identity Request 3次。在发送新的Identity Request之前可以发送一个Notification Request来暗示认证无效(可选地,失败可以通过新的Identity中的消息来暗示)。 Type 1 Type-Data 该域可以包含一条可显示的消息。Response用该域来返回Identity。如果Identity未知,该域长度应该为0。该域不允许以null作为终结符。该域的长度由Request/Response中的Length域来决定,所以null是不必要的。Blunk & Vollbrec

26、ht Standards Track Page 9RFC 2284 EAP March 19983.2. Notification描述 Notification Type可选地由认证者用来给对方传递一条可显示的消息。对方应该把这条消息显示给用户,如果无法显示则纪录(log)该消息。使用它的目的是在某些紧急情况下(imperative nature)提供一条确认通知(acknowledged notification)。这样的例子包括带一个超时设定(expiration)的口令,OTP序列整数(接近0),认证失败警告等等。在大多数情况下,notification不应该是必要的。 Type 2 T

27、ype-DataType-Data域包含一条长度大于0字节的可显示的消息。消息的长度由Request数据包中的Length域决定,消息不允许以null作为终结符。必须对带有Type域为2(Notification)的Request发送一个Response。Response中的Type-Data域长度为0字节,Response应该立即发送(与消息显示或纪录的方法无关)。3.3. Nak描述Nak 仅对Response有效,当Request中希望(desired)的认证类型不可接受时,发送Nak作为对Request的响应。Authentication Type的值为大于等于4。Response中包

28、含了对方所希望使用的认证类型。 Type 3 Type-Data该域必须包含一个唯一的字节,表明希望的认证类型。Blunk & Vollbrecht Standards Track Page 10RFC 2284 EAP March 19983.4. MD5-Challenge描述MD5-Challenge Type与PPP CHAP协议(参考文献3,制定了MD5算法)类似。更多的实现细节应该参考PPP挑战握手认证协议RFC(参考文献3)。Request包含一个对对方进行“挑战”的消息,必须对这样的Request发送一个Response以作出应答。Response可以为Type 4(MD5-C

29、hallenge)或者Type 3(Nak)。Nak应答表明对方希望的认证机制类型。所有的EAP实现必须支持MD5-Challenge机制。 Type 4 Type-Data Type-Data域的内容如下所示。这些域的用法请参考PPP 挑战握手认证协议(参考文献3)。 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Value-Size | Value . +-+-+-+-

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1