一 pap认证方式:被认证端发送认证端所配置的用户名和密码,认证端收到后进行比对,若用户名和密码相同则认证通过,反之则认证失败。
特点:传递的的是用户名和密码,容易被截获破解,非常不安全。但配置较简单,原理简单容易理解。
二 chap认证方式:
1.由认证端发起“挑战报文”,包括了一个id,随机数,主机名;
2.被认证端收到报文后,核对报文中的主机名和本地数据库中的用户名,
若一致
则取出报文中的随机数,id,然后再加上本地数据库中的密码三者进行hash计算,得到一个md5值,接着将主机名,收到的随机数,id,以及该md5值一起发送给认证端;
3.认证端查看报文中的主机名和本地数据库中的用户名是否相同,
若相同,
则拿报文中的id,密码和原先发送的随机数(存在本地数据库中)再次进行hash运算,将得到的md5值和收到的md5值进行比对,若相同,则认证通过。
特点:只在线路上传送主机名(并不区分字母大小写),而不传递密码,而是由md5值作为双方密码是否相同的判定,这种不可逆的算法,可保证即使中途被截获,理论上也无法由此计算出密码,大大增强了安全性。
几个注意点:1.主机名并不用来进行hash值的计算;
2.id和随机数在来回的过程中没有发生改变,
3.采用随机数,这就更加确保了安全性。因为***者不可能使得id,随机数和密码同时被破解。
三 实验验证
被验证方 验证方
pap:
R1:
R1(config-if)#ppp pap sent-username R1 password cisco
R2:
R2(config)# username R1 password 0 cisco
R2(config-if)#ppp authentication pap
| |
\|/ \|/
“password”-->----<-------------------------
\|/
“md5值1”----------------
| |
\/ 比较是否相同,相同则认证通过。
“R1”“random”“ID”------------> |
| | "md5值2"-----
| | /\
\/ \/ |
---------------------------------<----"password"
此外chap还支持与aaa认证的结合,可修改发送的主机名和密码,该实验可另作研究。
转载于:https://blog.51cto.com/sharkxqz/601845