第5章 协议安全技术.ppt

  1. 1、本文档共151页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用连接的当前状态中指定的MAC算法对TLSCompressed计算消息摘要。计算方法如下所示: HMAC_hash(MAC_write_secret, seq_num ||TLSCompressed.type || TLSCompressed.version||TLSCompressed.length|| TLSCompressed.fragment)) 其中,HMA_hash是当前状态规定的数字摘要算法,seq_num是本TTL分片的消息序列号,其它内容由TLSCompressed结构确定。 用加密算法加密压缩数据和消息摘要,形成密文结构TLSCiphertext。由于TLS支持分组加密和流密码加密,因此TLSCiphertext存在两个对应的结构stream-ciphered struct和block-ciphered struct。前者是流密码的密文结构,而后者是分组密码的密文结构,其定义如下所示: stream-ciphered struct { opaque content[TLSCompressed.length];//加密后的数据 opaque MAC[CipherSpec.hash_size];//第三步中计算所得消息摘要值 } GenericStreamCipher;//流密码的密文结构 block-ciphered struct { opaque IV[CipherSpec.block_length];//加密所用的初始化向量 opaque content[TLSCompressed.length]; //加密后的数据 opaque MAC[CipherSpec.hash_size]; //第三步中计算所得消息摘要值 uint8 padding[GenericBlockCipher.padding_length];//填充信息 uint8 padding_length;//填充长度 } GenericBlockCipher;//分组密码的密文结构 将加密后的数据封装为TLSCiphertext结构(即添加上TLS记录层协议头),并封装为TCP的数据包后通过网络发送给接收方。 struct { ContentType type;//与TLSCompressed.type相同 ProtocolVersion version;//与TLSCompressed.version相同 uint16 length;// TLSCiphertext.fragment的长度 select (CipherSpec.cipher_type) { case stream: GenericStreamCipher; case block: GenericBlockCipher; } fragment; } TLSCiphertext; 最后所得TLS记录层协议数据包的格式如下所示: 握手协议是TLS中最复杂的部分。握手协议在传递应用程序数据之前使用,其协议消息通过TLS记录层协议来封装转送。客户和服务器在开始传递应用程序数据之前,利用握手协议对使用的TLS协议版本号、准备使用的安全参数等达成一致,并可允许客户端和服务器相互认证。概括而言,握手协议提供的安全服务包括: (1)安全参数协商:完成会话状态信息的协商(包括会话标识、对等实体的证书、压缩算法、加密算法、共享主密钥等); (2)身份认证:使用数字签名算法(如RSA,DSS)实现双向认证。 enum { hello_request(0), client_hello(1), server_hello(2), certificate(11), server_key_exchange (12), certificate_request(13), server_hello_done(14), certificate_verify(15), client_key_exchange(16), finished(20), (255) } HandshakeType; struct { Ha

文档评论(0)

3344483cc + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档