https加密解密过程详解

要点: 

 https协议对传输内容进行加密,具有更强的安全性,防止被抓包后解析出请求内容。

 https是建立在ssl之上的http协议。

 服务器支持https协议必须安装一套数字证书,所谓数字证书就是一对公钥和私钥,公钥用来加密,私钥用来解密。为了与下文中的私钥进行区分,这里的公钥和私钥称为公钥1和私钥1。

数字证书可以自己制作或者向组织申请,自己制作的会在客户端弹出提示框,手动验证通过,而申请的就无需客户端手动验证了。

请求过程:

  1.客户端访问 https开头的url

  2.服务端返回公钥1,客户端验证通过(如果不通过,则访问终断)。

  3.客户端根据公钥1生成一个私钥2,这个私钥2用来加密和解密请求信息。使用公钥1对私钥2进行加密,回传给服务端。服务端用私钥1对该信息解密,得到私钥2。至此,客户端和服务端都已经有了私钥2。

  4.客户端和服务端之间使用私钥2对信息进行加密后通信,这样即使第三方抓包,也无法轻易获取通信内容了。

https的服务端部署:

1.搞定公钥1和私钥1(申请或者自己造一个)。

2.在nginx配置文件的server域中,配置公钥1和私钥1。

 

  

上一篇:HTTPS详解二:SSL / TLS 工作原理和详细握手过程


下一篇:pika详解(二) BlockingConnection