1.实验原理
1.原理
加密原理
服务器和客户端协商出对称密钥,之后使用此对称密钥对通信的包进行加密,从而达到加密通信的目的
证书验证
站点证书,中间证书和根证书颁发机构证书
- 客户端获取到了站点证书,拿到了站点的公钥;
- 要验证站点可信后,才能使用其公钥,因此客户端找到其站点证书颁发者的信息;
- 站点证书的颁发者验证了服务端站点是可信的,但客户端依然不清楚该颁发者是否可信;
- 再往上回溯,找到了认证了中间证书商的源头证书颁发者。由于源头的证书颁发者非常少,我们浏览器之前就认识了,因此可以认为根证书颁发者是可信的;
- 一路倒推,证书颁发者可信,那么它所颁发的所有站点也是可信的,最终确定了我们所访问的服务端是可信的;
四次握手
clientHello
客户端向服务器提供信息
- 支持的加密协议版本 e.g : tls 1.3
- 一个随机数,用来生成密钥
- 支持的加密算法 e.g TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- 支持的压缩方法
serverHello