因为,加密和解密使用的是同一个密钥。
所以,服务器生成密钥传给浏览器时容易被中间人劫持,之后就能用密钥解开双方传输的内容了。
而服务器有一对公钥和私钥,将公钥发送给客户端,客户端随机生成一个对称加密密钥 X,使用公钥加密将对称密钥传输给服务端,服务端使用私钥解密得到对称密钥 X,之后的内容都使用这个对称密钥 X 加密,这样就只需要使用一次非对称加密,接下来都使用对称加密。