HTTPS为了兼顾安全与效率,同时使用了对称加密和非对称加密。数据是被对称加密传输的。对称加密过程需要客户端的一个密钥,为了确保能把该密钥安全传输到服务器端,采用非对称加密对该密钥进行加密传输,总的来说,对数据进行对称加密,对称加密所要使用的密钥通过非对称加密后传输。
1、客户端向服务器发起HTTPS请求,连接到服务器的443端口,服务器端有一个密钥对,即公钥和私钥,给出数字证书,c端得到数字证书,验证有效性,如果无效给出风险提示并终止,
2、C随机出一个秘钥A,用公钥加密成加密后的秘钥A
3、用秘钥A加密原始数据,通过http传至服务端
4、服务端以私钥解出秘钥A,以秘钥A解出原始数据,处理返回数据时,还用秘钥A加密
5、客户端用秘钥A解密后,知道服务端的响应,完成
CA证书里面
主要包含证书发布机构,有效期,公钥,证书所有者、场景域名,证书签名使用的算法,签名(密文,证书机构(浏览器内置信任的机构和解密指纹的方法)的秘钥加密而成,)。数字证书可以保证里面的公钥一定是证书持有者的,切未被修改过。