HTTPS原理
- 客户端向服务器发送请求
- 服务器向客户端发送自己的证书
- 客户端验证证书的有效性(是否是可信用机构CA颁发的证书,如果不是则提出警告)并对比里面信息是否正确,不通过则立刻断开连接
- 向服务器端发送自己的证书及支持的加密算法列表
- 服务器端验证客户证书的有效性,并选择加密程度最高的加密算法,用客户的公钥加密后发给客户端
- 客户端用自己的私钥解密得到要使用的加密算法,然后随机产生主密码key在用服务器端的公钥对其加密并发送
- 服务器用自己的私钥解密获取主密码
- 以后发送的信息都通过对称加密进行加密通信