当前位置:   article > 正文

TLS 1.2 握手过程_tls1.2握手过程

tls1.2握手过程

本文参考:HTTPS是什么?加密原理和证书。SSL/TLS握手过程_哔哩哔哩_bilibili

再结合本地抓包整理。

TLS 1.2 握手过程主要步骤如下图:

1.Client Hello(TLS版本,加密套件,Client随机数)

Client首先发送Hello,告诉Server支持的TLS版本以及支持的加密套件,再把Client随机数发给Server。

2.Server Hello

Server收到Client Hello也给Client发送Hello,并告知Server确认支持的TLS版本以及选择的加密算法。同样,也会把Server随机数发给Client。

3.Certificate

Server接着再发送自己的证书给Client,这样Client浏览器就可以对照自己的证书信任列表来确认这个服务器是否可信。

4.Server Key Exchange

发送完证书,Server就把公钥发送给Client。

5.Server Hello Done

最后,Server告诉Client响应发送完了。

6.Client Key Exchange, Change Cipher Spec, Encrypted Handshake Message

Client用刚刚收到的公钥加密pre-master预主密钥,并把这个加密后的随机数发送给Server。

Change Cipher Spec: 这一步就是告诉服务器往后的数据就用商议好的算法和密钥来加密。

Encrypted Handshake Message: 表示Client这边的TLS协商已经OK了。

Server收到加密后的预主密钥,会用自己的私钥进行解密从而得到预主密钥。

Client会用Client随机数、Server随机数和预主密钥计算出会话密钥。Server也同样计算出和Client一样的会话密钥。

之后,Client和Server就都只使用这个会话密钥对数据进行加密。

7.Change Cipher Spec, Encrypted Handshake Message

 这一步表示Server这边TLS协商也OK了,可以给数据进行加密交换了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/445831
推荐阅读
相关标签
  

闽ICP备14008679号