第10章 传输层功能与协议.pptVIP

  1. 1、本文档共95页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* SSL握手协议包含四个阶段,第一个阶段建立安全能力;第二个阶段服务器鉴别和密钥交换;第三个阶段客户鉴别(可选的)和密钥交换;第四个阶段完成握手协议。 第*页 1. 建立安全能力 SSL握手协议第一个阶段建立安全能力,如图10-13所示。 第*页 ClientHello 客户发送CilentHello信息 (1)客户端可以支持的SSL最高版本号 (2)一个用于生成主秘密的32字节的随机数(32位时间戳+28字节随机序列)。 (3)一个确定会话的会话ID。 (4)一个客户端可以支持的密码套件列表(CipherSuite)。 (5)一个客户端可以支持的压缩算法列表。 第*页 ServerHello 服务器用ServerHello信息应答客户 (1)一个SSL版本号。取客户端支持的最高版本号和服务端支持的最高版本号中的较低者。 (2)一个用于生成主秘密的32字节的随机数。(客户端一个、服务端一个) (3)会话ID (4)从客户端的密码套件列表中选择的一个密码套件 (5)从客户端的压缩方法的列表中选择的压缩方法 第*页 客户端服务端知道了下列内容 (1)SSL版本 (2)密钥交换、信息验证和加密算法 (3)压缩方法 (4)有关密钥生成的两个随机数。 第*页 2. 服务器鉴别与密钥交换 服务器启动SSL握手第2阶段,是本阶段所有消息的唯一发送方,客户机是所有消息的唯一接收方,如图10-11所示。该阶段分为四个步骤。 (1)证书:服务器将数字证书和到根CA整个链发给客户端,使客户端能用服务器证书中的服务器公钥认证服务器。消息包含一个X.509证书,或者一条证书链。 (2)服务器密钥交换(可选):服务器发送server_key_exchange消息,此项目是可选的,有些情况下可以不需要,只有当服务器的证书没有包含必需的数据的时候才发送此消息。消息包含签名,被签名的内容包括两个随机数以及服务器参数,这里视密钥交换算法而定。 (3)证书请求:服务器发送certificate_request消息,服务端可能会要求客户自身进行验证。非匿名server可以向客户请求一个证书包含证书类型。 (4)服务器握手完成:服务器发送server_hello_done,然后等待应答,意味着第二阶段的结束,第三阶段开始的信号。 第*页 图10-11服务器鉴别与密钥交换 第*页 这个方法中,服务器在它的第一个信息中,发送了RSA加密/解密公钥证书。不过,因为预备主秘密是由客户端在下一个阶段生成并发送的,所以第二个信息是空的。注意,公钥证书会进行从服务器到客户端的验证。当服务器收到预备主秘密时,它使用私钥进行解密。服务端拥有私钥是一个证据,可以证明服务器是一个它在第一个信息发送的公钥证书中要求的实体。 第*页 3. 客户机鉴别与密钥交换 第*页 图10-13 客户机鉴别与密钥交换 第*页 客户收到server_done消息后,它根据需要检查服务器提供的证书,并判断server_hello的参数是否可以接受,如果都没有问题的话,发送一个或多个消息给服务器。客户机启动SSL握手第3阶段,是本阶段所有消息的唯一发送方,服务器是所有消息的唯一接收方。如图10-16所示,该阶段分为三个步骤。 (1)证书(可选):为了对服务器证明自身,客户要发送一个证书信息,这是可选的,在IIS中可以配置强制客户端证书认证。如果服务器请求证书的话,则客户首先发送一个certificate消息,若客户没有证书,则发送一个no_certificate警告 (2)客户机密钥交换(Pre-master-secret):这里客户端将预备主密钥发送给服务端,注意这里会使用服务端的公钥进行加密。 (3)证书验证(可选),对预备秘密和随机数进行签名,证明拥有(1)证书的公钥。客户发送一个certificate_verify消息,其中包含一个签名,对从第一条消息以来的所有握手消息的MAC值()进行签名。 第*页 图10-14加密预备主密钥 第*页 这种情况,除非服务器在阶段二明确请求,否则没有证书信息。客户端密钥交换方法包括阶段二收到的由RSA公钥加密的预备主密钥,如图10-17所示。阶段三之后,客户要有服务器进行验证,客户和服务器都知道预备主密钥。 第*页 4. 完成 客户机启动SSL握手第四阶段,使服务器结束,如图10-15所示。该阶段分为四个步骤,前2个消息来自客户机,后2个消息来自服务器。 第*页 图10-15建立起一个安全的连接 第*页 第四阶段建立起一个安全的连接。客户发送一个change_cipher_spec消息,并且把协商得到的CipherSuite拷贝到当前连接的状态之中。然后,客户用新的算法、密钥参数发送一个finished消息,这条消息可以检查密钥交换和鉴别过程是否已经成功。其中包括一个校

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档