二、SSL记录协议
SSL
在
记录协议为SSL连接提供两种服务:机密性和报文完整性。SSL协议中,所有的传输数据都被封装在记录中。记录是由记录头和长度不为0的记录数据组成的。所有的SSL通信都使用SSL记录层,记录协议封装上层的握手协议、警告协议、改变密码格式协议和应用数据协议。SSL记录协议包括了记录头和记录数据格式的规定。
SSL
主要的操作见图

图13.3 SSL记录协议的操作
(
每个上层应用数据被分成
(
压缩是可选的,并且是无损压缩,压缩后内容长度的增加不能超过
(
(
(
记录协议字段包括:
内容类型(
主要版本(
次要版本(
压缩长度(
1)分段214字节或更小的数据块。记录中包含类型、版本号、长度和数据字段。2)压缩1024字节。3)在压缩数据上计算消息认证MAC。4)对压缩数据及MAC进行加密。5)增加SSL记录头。8位):封装的高层协议。8位):使用的SSL主要版本。对于SSLv3.0,值为3。8位):使用的SSL次要版本。对于SSLv3.0,值为0。16位):明文数据(如果选用压缩则是压缩数据)以字节为单位的长度。
内容类型
|
主要版本
|
次要版本
|
压缩长度
|
明文(压缩可选) |
MAC
(0,16 或20位) |
图13.4 SSL记录协议字段
已经定义的内容类型是握手协议、警告协议、改变密码格式协议和应用数据协议。其中改变密码格式协议是最简单的协议,这个协议由值为
1的单字节报文组成,用于改变连接使用的密文族。警告协议用来将SSL有关的警告传送给对方。警告协议的每个报文由两个字节组成,第一字节指明级别(1警告或2致命),第二字节指明特定警告的代码。记录协议定义了要传输数据的格式,它位于一些可靠的的传输协议之上(如TCP),用于各种更高层协议的封装,记录协议主要完成分组和组合,压缩和解压缩,以及消息认证和加密等功能。13.3。