文章目录
SSL协议原理
SSL(Security Socket Layer)是一个安全协议,为基于TCP的应用层协议提供安全连接,SSL介于TCP/IP协议栈第四层和第七层之间。SSL可以为HTTP协议提供安全例案件。SSL为网络上数据的传输提供安全性保障。
SSL协议结构
SSL协议结构分为两层:
-
底层为SSL记录协议(SSL record protocol)
- 主要负责对上层数据进行分块、压缩、计算并添加MAC(Message Authenticate Code ,散列算法计算消息认证代码)、加密,最后把记录块传输给对方
-
上层:SSL握手协议(SSLhandshake protocol)、SSL密码变化协议(SSL change cipher spec protocol)、SSL警告协议(SSL alert protocol)
- SSL握手协议:客户端和服务器通过握手协议建立一个会话。会话包含一组参数,主要有会话ID、对方的证书、加密算法列表(包括密钥交换算法、数据加密算法和MAC算法)、压缩算法以及主密钥。SSL会话可以被多个连接共享,以减少会话协商开销。
- SSL密码变化协议:客户端和服务器端通过密码变化协议通知接收方,随后的报文都将使用新协商的加密算法列表和密钥进行保护和传输。
- SSL警告协议:用来允许一方向另一方报告告警信息。消息中包含告警的严重级别和描述。