CHAP验证过程如下:
(1)Challenge:验证方主动发起验证请求,验证方向被验证方发送一些随机产生的报文,并同时将本端的用户名附带上一起发送给被验证方;
(2)Response:若被验证方接到验证方的验证请求后,检查本端接口上是否配置了缺省的CHAP密码,如果配置了则被验证方利用报文ID、该缺省密码和MD5算法对该随机报文进行加密,将生成的密文和自己的用户名发回验证方;若被验证方检查发现本端接口上没有配置缺省的CHAP密码,则被验证方根据此报文中验证方的用户名在本端的用户表查找该用户对应的密码,如果在用户表找到了与验证方用户名相同的用户,便利用报文ID、此用户的密钥(密码)和MD5算法对该随机报文进行加密,将生成的密文和被验证方自己的用户名发回验证方;
(3)result:验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,根据比较结果返回不同的响应 。
图3-5 server发送到client的Challenge
文章插图
图3-5 client发送到server的Response
文章插图
图3-6 server发送到client的Success
文章插图
Step 3: IPCP(IP Control Protocol)阶段
图3-7 server发送到client的Configuration Request
文章插图
图3-8 client发送到server的Configuration Request
文章插图
图3-9 server发送到client的Configuration Nak
文章插图
图3-10 client发送到server的Configuration Ack
文章插图
图3-11 client发送到server的Configuration Request
文章插图
图3-12 server发送到client的Configuration Ack
文章插图
推荐阅读
- HTTP 报文详解
- 音视频流媒体开发WebRTC 基础知识 -- ICE 交互总结
- PPPOE拨号上网服务器端与客户端的完整配置
- 网络基本功:http报文及TCP拥塞控制机制
- 如何通过Python批量生成测试报文?
- 防火墙对TCP/UDP/ICMP协议报文处理方式
- 手机从路由器获取IP、光猫PPPOE拨号过程、IP/VLAN
- 用Python开发一个交互式网络和IP地址计算器
- SpringMVC:进阶
- Linux 下的交互式进程浏览器 htop 3.0.0 发布