有关于https

流程理解如下:

  1. 向CA权威证书机构,申请ssl证书(绑定信息,如域名公司信息等)
  2. 在服务器上使用ssl证书(nginx 443端口使用证书)
server {
        listen 443;
        server_name  xxxx.com;
        index index.php index.htm index.html;
        ssl on;
        ssl_certificate /xxxx/21460427.pem;
        ssl_certificate_key /xxxx/21457.key;

接下来通讯开始:

  1. 浏览器A向服务器S 发请求
  2. 服务器将ssl证书公钥,传给浏览器
  3. 浏览器将证书向CA请求,认证证书是否是正版,服务器是否是本人
  4. 认证成功后,浏览器生成对称加密的密码,把请求信息和密码公钥用服务器发来的证书公钥加密,传给服务器
  5. 服务器用私钥解开浏览器传来的信息,得到数据和浏览器发来的公钥密码
    6.接下来服务器开始返回信息,用浏览器的公钥密码加密数据,传给浏览器
  6. 浏览器用自己的私钥解密,得到数据
  7. 开始重复6、7操作
有关于https_第1张图片
image.png

HTTPS 原理详解

你可能感兴趣的:(有关于https)