基于TLS的EAP 认证方法

TLS: transport level security , 安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。

目前基于TLS的EAP认证方法主要有三种:

(1)EAP-TLS

使用TLS握手协议作为认证方法。

TLS认证是基于client和server双方互相验证数字证书的,是双向验证方法。首先由server提供自己的证书给client,client验证server证书通过后,提交自己的数字证书给server,交由server进行验证。

TLS的一个缺点就是TLS传送Identity时候是明文的,也就是说可以通过抓包看到。

TLS是基于PKT证书体系的,这是TLS的安全基础,也是其缺点所在,PKI太庞大,太复杂。

(2)EAP-TTLS  和(3) EAP-PEAP

由于TLS需要PKI的缺点,所以诞生了TTLS 和 PEAP,这两个协议不用建立PKI系统,而在TLS隧道内直接使用原有老的认证方法,这样保证了安全,也减小了复杂度。

它们两个都使用两段式认证,在第一阶段建立TLS安全隧道,通过server发送证书给client,client实现对server的认证(虽然TTLS和PEAP仍然使用证书,但是这里的证书都是服务器证书);当安全隧道一旦建立,第二阶段就是协商认证方法,对client进行认证。

TTLS利用TLS安全隧道交换类似RADIUS的AVPs(Attribute-Value-Pairs),实际上这些AVPs的封装和RADIUS都十分相似,TTLS这种AVPs有很好的扩展性,所以它几乎支持任何认证方法,这包括了所有EAP的认证方法,以及一些老的认证方法,比如PAP、CHAP、MS-CHAP、MS-CHAPv2等,TTLS的扩展性很好,通过新属性定义新的认证方法。
  
   PEAP之所以叫Protected EAP,就是它在建立好的TLS隧道之上支持EAP协商,并且只能使用EAP认证方法,这里为什么要保护 EAP,是因为EAP本身没有安全机制,比如EAP-Identity明文显示,EAP-Success、EAP-Failed容易仿冒等,所以EAP需要进行保护 ,EAP协商就在安全隧道内部来做,保证所有通信的数据安全性。其实PEAP最大的优点就是微软支持开发,微软在Windows系统内集成了客户端,微软和Cisco都支持PEAP,但是他们的实现有所区别。

原文地址:https://www.cnblogs.com/rohens-hbg/p/7611630.html