CHAP PPP挑战握手身份验证协议


PPP挑战握手认证协议(CHAP)
(RFC1994——PPP Challenge Handshake Authentication Protocol (CHAP) )
此备忘录的状态
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 Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
摘要
PPP【1】提供了点到点链路传输多协议数据报的标准方* 。
 在PPP中也定义了一种可扩展的LCP,答应协商认证协议,从而可以在进行网络层
协议传输之前对对端进行认证 。
 本文定义了一种PPP认证方*,该方*利用随机“挑战”和依据“挑战”和密钥
计算出的加密哈希“应答”来完成认证 。
目录
1. 简介 2
1.1. 要求规范 2
1.2. 术语 3
2. 挑战握手认证协议 Challenge-Handshake Authentication Protocol 3
2.1. 优点 4
2.2. 缺点 4
2.3. 设计要求 4
3. 配置选项格式 5
4. 包格式 5
4.1. 挑战和应答 6
4.2. 成功与失败 8
安全考虑 9
鸣谢 10
参考文献 10
1. 简介
 为了在点到点链路上建立通信,PPP链路的每一端在链路建立阶段必须首先发送
LCP包进行数据链路配置 。链路建立之后,PPP提供可选的认证阶段,可以在进入
NLP阶段之前实行认证 。
 缺省情况下,认证并非是强制执行的,假如需要链路认证,PPP实现必须在链路
建立阶段指定“认证协议配置”选项 。
 这些认证协议主要用于主机和路由器,这些主机和路由器一般通过交换电路线
 或者拨号线连在PPP网络服务器上,但是也可以通过专线实现 。服务器可以用主
机或路由器的连接身份来作为网络层协商的选项 。
 本文定义了PPP认证协议,链路建立阶段和认证阶段以及认证协议配置选项都
已经在PPP【1】中定义 。
1.1. 要求规范
 在本文中,用以下几个词表示规范描述要求,这几个词用大写标明 。
MUST“必须”,也就是形容词“必需的”,意思是该项是本规范的绝对要求 。
MUST NOT“不得”,意思是该项是本规范所绝对禁止的 。
SHOULD“应该”,也就是形容词“推荐的”,意思是在某些场合可能由于某种原因忽
略该项,但是协议的完全实现必须能够理解该项,在决定其
他方式之前要经过仔细考虑 。
MAY “可以”,也就是形容词“可选的”,意思是该项可以作为可选集使
用,不包含该选项的协议实现必须能够和包含了该选项的实现交互协
作 。
1.2. 术语
本文频繁使用的术语包括以下几个:
Authenticator认证者
链路要求认证的一端,认证者在链路建立阶段的Configure-Request
中指定认证协议 。
peer对端
点到点链路的另一端;由认证者认证的一端 。
silently discard静静丢弃
协议实现直接丢弃数据包,不作进一步处理,实现应该提供记录错误
的能力——包括被静静丢弃的包的内容,还应该在统计计数器里记录
事件 。
2. 挑战握手认证协议 Challenge-Handshake
Authentication Protocol
 挑战握手认证协议(CHAP)通过三次握手周期性的认证对端的身份,在初始链路
建立时完成,可以在链路建立之后的任何时候重复进行 。
1.链路建立阶段结束之后,认证者向对端发送“挑战”消息 。
2.对端用经过单向哈希函数计算出来的值做应答 。
3.认证者根据它自己的预期哈希值的计算来检查应答,假如值匹配,认证得

推荐阅读