HTTPS 采用混合的加密机制,使用非对称密钥加密用于传输对称密钥来保证传输过程的安全性,之后使 用对称密钥加密进行通信来保证通信过程的效率。
确保传输安全过程(其实就是rsa原理):
1. Client给出协议版本号、一个客户端生成的随机数(Client random),以及客户端支持的加密方法。
2. Server确认双方使用的加密方法,并给出数字证书、以及一个服务器生成的随机数(Server random)。
3. Client确认数字证书有效,然后生成呀一个新的随机数(Premaster secret),并使用数字证书中的公钥,加密这个随机数,发给Server。
4. Server使用自己的私钥,获取Client发来的随机数(Premaster secret)。
5. Client和Server根据约定的加密方法,使用前面的三个随机数,生成”对话密钥”(session key),用来加密接下来的整个对话过程。