HTTPS原理

HTTPS  = HTTP + SSL/TLS,现在一般都使用TLS.

HTTPS工作过程如下:

1. 浏览器向服务器发送HTTPS请求,该请求中包含一个密文族,该族即为浏览器所支持的加密算法清单;

2. 服务器从该清单中选择一种非对称加密算法,如RSA算法。

3. 服务器向客户端传送证书,该证书包含2中非对称加密算法的公钥,也包括颁发机构、有效期等信息。

服务器可以选择自己制作证书,也可以选择向第三方权威机构购买证书,区别是,第三方购买的权威证书在客户端可直接使用,而自己制作的证书浏览器会发出警告。

4. 浏览器生成一个随机的key,该key即为对称算法的私钥(如AES算法),后面用于加密通信数据;浏览器使用从服务器获得的公钥对该key加密,并发送给服务器。

5. 服务器使用非对称加密算法的私钥对4中的key进行解密。至此,通信双方都已拥有对称加密算法的key,非对称加密算法完全其自身使命,之后的通信加密任务交给对称算法完成。

6. 随后双方使用对称算法key加密数据,进行通信传输。


参考:

https://yq.aliyun.com/articles/14420

http://blog.csdn.net/sean_cd/article/details/6966130?spm=5176.100239.blogcont14420.3.AUEPox



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值