https协议原理过程

https协议原理过程

https概念

https是基于安全目的的Http通道,其安全基础由SSL层来保证。最初由netscape公司研发,主要提供了通讯双方的身份认证和加密通信方法。现在广泛应用于互联网上安全敏感通讯。

https原理说明

1)客户端发起HTTPS请求
客户端或者浏览器向服务器发送https请求

2)服务器本身保存私钥和证书
利用相应命令在服务端本地生成私钥文件;
利用私钥文件生成证书请求文件,向证书颁发机构申请证书。
也可以利用私钥文件,生成自签发证书,但不会通过客户端合法性验证。

3)服务器将公钥返回给客户端
HTTPS的服务器端都有一套证书,可以自己生成,可以向授信公司或者组织申请花钱购买,区别就是不花钱浏览会弹出来警告,添加信任或者例外就可以了。

4)浏览器接收到服务器公钥
浏览器收到公钥后会对公钥进行一系列的验证,如:颁发机构,过期时间等等。
认证失败会有警告,比如上面说的我们自己生成的证书。
成功的话,会生成一个随机值作为对称加密的密钥稍后还会提及到。
用服务器返回的公钥对这个随机值进行加密。

5)客户端公钥加密随机值传输
客户端会利用随机产生的值作为对称加密密钥,然后利用从服务端获取的公钥将对称密钥加密,传输给服务端。

6)服务器获取对称加密算法解密数据
服务器利用私钥解密客户端公钥加密的数据,获得随机值信息,利用随机值作为对称加密密钥,加密服务端响应给客户端的数据信息。

7)服务器传输加密响应报文数据
服务器利用随机值作为对称加密密钥,加密HTTP响应报文信息,并传输给客户端。

8)客户端解密数据完成访问
客户端利用随机值作为对称加密密钥解密响应报文数据,获取HTTP响应报文数据信息。
完成HTTPS访问网站流程

原文地址:https://www.cnblogs.com/yjiu1990/p/10508702.html