对称加密和非对称加密
-
对称加密
是指加密和解密时使用的是同一个密钥,是对称的。常用的对称加密算法有 AES、ChaCha20.
对称加密的缺点是无法保证密钥交换时的安全性,因为密钥也需要传输给对方。
-
非对称加密
非对称加密又称为公钥加密算法。
它有两个密钥:公钥(public key)和私钥(private key)。公钥是公开的,私钥必须严格保密。
公钥和私钥是单向性的,公钥加密后只能用私钥解密,私钥加密后只能用公钥解密。
常用的非对称加密算法有RSA、ECC。
非对称加密的算法是速度慢,且占内存,因为非对称加密算法都是基于复杂的数学难题,运算速度慢。
-
因此TLS中使用的是混合加密的方式:即用非对称加密的方式传递对称加密的密钥,然后使用对称加密的方式传递数据。如图: