首页 > 代码库 > ppp认证

ppp认证

ppp协议是在对等的单元上建立点到点连接的链路层协议,配置比较简单,下面我们简单介绍以下ppp的两种认证机制

假设R1和R2两台直连设备进行ppp认证,R1总是被验证放,R2总是主验证方

 

1.两次握手的pap协议:pap协议中有两次报文转发,R1发送的用户名密码由明文传输

第一次握手:

                    当链路UP后,R1意识到自己是被验证放,于是向R2发送用户名和密码

第二次握手:

                    当R2接受到R1发来的用户名和密码时,查询本地上的用户名列表及其密码,当匹配某一项后,向R1发送ACK报文确定,点到点连接建立

 

 

2.三次握手的chap:pap协议中有两次报文转发,R1发送的用户名密码由哈希算法加密传输

第一次握手:

                 主认证方发送挑战信息【01(此报文为认证请求)、id(此认证的序列号)、随机数据、主认证方认证用户名】,被认证方接收到挑战信息,根据接收到主认证方的认证用户名到自己本地的数据库中查找对应的密码(如果没有设密码就用默认的密码),查到密码再结合主认证方发来的id和随机数据根据MD5算法算出一个Hash值。

第二次握手:

                   被认证方回复认证请求,认证请求里面包括【02(此报文为CHAP认证响应报文)、id(与认证请求中的id相同)、Hash值、被认证方的认证用户名】,主认证方处理挑战的响应信息,根据被认证方发来的认证用户名,主认证方在本地数据库中查找被认证方对应的密码(口令)结合id找到先前保存的随机数据和id根据MD5算法算出一个Hash值,与被认证方得到的Hash值做比较,如果一致,则认证通过,如果不一致,则认证不通过。

第三次握手:

                   认证方告知被认证方认证是否通过。

ppp认证