Https 公钥私钥交换过程

记录一下Https 公钥私钥加密过程

对称加密:编/解码使用相同密钥的算法,一般是共享密钥

非对称加密:非对称加密算法需要两个密钥,公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。 公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。 因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法

1、客户端向服务端发送请求

2、服务端收到客户端请求之后,根据RSA算法,生成公钥和私钥(PubKey1和PriKey1)

3、服务端将生成的公钥PubKey1返回给客户端

4、客户端收到服务端发送的PubKey1,根据RSA算法,生成公钥和私钥(PubKey2和PriKey2)

5、PubKey2通过PubKey1加密后传输给服务端

6、服务端拿到密文后,根据PriKey1进行解密,得到客户端的PubKey2

7、服务端根据AES对称加密得到Key,然后将Key通过PubKey2加密,返回给客户端

8、客户端通过PriKey2进行解密,拿到最终的Key,最后用加密key进行数据传输的加密

附上用Visio画的图(有点丑哈哈哈)

经验分享 程序员 微信小程序 职场和发展