SSL协议由SSL记录协议和SSL握手协议两部分组成。
——①SSL记录协议
——在SSL协议中,所有的传输数据都被封装在记录中。记录是由记录头和记录数据组成的。所有的SSL通信包括握手消息、安全空白记录和应用数据都使用SSL记录层。
——②SSL握手协议
——SSL握手协议包含两个阶段,第一个阶段用于建立私密性通信信道,第二个阶段用于客户认证。
——第一阶段是通信的初始化阶段,首先SSL要求服务器向浏览器出示证书。证书包含有一个公钥,这个公钥是由一家可信证书授权机构签发的。通过内置的一些基础公共密钥,客户的浏览器可以判断服务器证书正确与否。然后,浏览器中的SSL软件发给服务器一个随机产生的传输密钥,此密钥由已验证过的公钥加密。由于传输密钥只能由对应的私有密钥来解密,这证实了该服务器属于一个认证过的公司。随机产生的传输密钥是核心机密,只有客户的浏览器和此公司的Web服务器知道这个数字序列。这个两方共享密钥的密文可以通过浏览器安全地抵达Web服务器,Internet上的其他人无法解开它。
—— 第二阶段的主要任务是对客户进行认证,此时服务器已经被认证了。服务器方向客户发出认证请求消息。客户收到服务器方的认证请求消息后,发出自己的证书,并 且监听对方回送的认证结果。而当服务器收到客户的证书后,给客户回送认证成功消息,否则返回错误消息。到此为止,握手协议全部结束。
SSL协议提供的安全信道有以下三种特性:
——·私密性:在握手协议定义了会话密钥后,所有的消息都被加密。
——·确认性:尽管会话的客户端认证是可选的,但是服务器端始终是被认证的。
——·可靠性:传送的消息包括消息完整性检查。