询问握手认证协议(Challenge-Handshake Authentication Protocol,CHAP)是一个用来验证用户或网络提供者的协议。
简介负责提供验证服务的机构,可以是互联网服务供应商,又或是其他的验证机构。通过三次握手周期性的校验对端的身份,可在初始链路建立时完成时,在链路建立之后重复进行。
RFC 1994详细定义了CHAP这个协议。
CHAP 用于使用3次握手周期性的验证对端身份。在链路建立初始化时这样做,也可以在链路建立后任何时间重复验证。
以下这个例子说明,如果 A 要向 B 进行验证,所需进行的步骤:
在连线建立之后,使用者 A 会发出一个“challenge”信息给使用者 B。
当 B 在收到这个讯息后,会使用 hash function,像是MD5来计算出杂凑值。
之后 B 会将这个杂凑值送回去给 A。
A 在收到之后,也会使用自身的 hash function 将原本的“challenge”信息运算,得到一组杂凑值。
此时 A 就可以比较:自己算出来的这组与收到(从B来)的杂凑值是否相同,如果相同,则通过验证。
之后 B 也可以彷照上述方法,向 A 进行验证。
CHAP通过增量改变标识和“challenge-value”的值避免“playback attack”攻击。验证的两端都需要知道“challenge”信息的明文,但不会在互联网上传播。1
互联网服务供应商互联网服务供应商(英语:InternetServiceProvider,简称ISP),又称因特网服务提供者、互联网服务提供商、网络服务供应商,即指提供互联网存取服务的公司。通常大型的电讯公司都会兼任互联网服务供应商,一些ISP则独立于电信公司之外。
互联网服务供应商透过固网早期的拨号连线、后来的ADSL(非对称数码用户线路)、数据专线、光纤或是移动网络等方式提供互联网存取服务予客户。一些供应商还提供域名登记、网页寄存和主机托管等服务。互联网服务供应商可以是商业营利性质的,也可以是由政府以公共财政支持,或是国有资产。2
密码认证协议密码认证协议(英语:Password authentication protocol,缩写为PAP)是一种使用密码的认证协议。
点对点协议(PPP)使用的 PAP 允许用户访问服务器资源之前使用 PAP 进行验证。几乎所有的网络操作系统远程服务器都支持PAP。
PAP在网络上传送未加密的ASCII密码,因此被认为是不安全的。当远程服务器不支持诸如CHAP或EAP(后者实际上是一种框架)这样的更强的认证协议时,PAP被作为最后的对策来使用。
基于密码的认证是这样一种协议,两个实体预先共享一个密码,并且使用此密码作为认证的基础。现存的密码认证方案可以被分为两类:弱密码认证方案和强密码认证方案。2
本词条内容贡献者为:
李嘉骞 - 博士 - 同济大学