对称加密
客户端和服务端都用相同的密钥进行加密通信。
优点:性能好,简洁迅速。
缺点:但是首次通信如何将密钥传输给客户端而不被截获。
非对称加密
私钥只能用公钥解密,公钥只能用私钥解密
服务端有自己的私钥,将公钥传输给客户端,客户端的信息通过公钥加密传给服务端,服务端解密回复。
优点:客户端的信息不会被他人读取。
缺点:服务端的信息人人可以截获,并且可以伪装成服务端。
数字证书
服务端用自己的私钥生成公钥,并且在权威机构认证,证书中包含了公钥和所有者
客户端在权威机构下载了之后,可以确定这个公钥和所有者是否对应,将这个公钥加密自己的公钥和私钥,传给服务端,
服务端得到客户端公钥和私钥后,将自己的私钥通过客户端的公钥加密,传送给客户端
这样,客户端和服务端都有了各自的公钥私钥,通信时都用对方的公钥加密,保证了安全性。
缺点:性能不如对称加密好。
HTTPS工作模式
公钥和私钥用于传输对称加密的密钥,以后都是用这个对称密钥。