SSL/TLS学习(三)

上述通信过程有两个问题:

1. A无法发送加密信息给B。因为嗅探攻击者有可能持有公钥,可以解密A用私钥加密的信息。

2. 非对称加密的CPU占用率高于对称加密。

为了解决上述两个问题,假想的改进后的通信过程如下:

1. B用明文发送消息给A请求通信。

2. A生成一对**。

3. A把公钥用明文发送给B。(因为目前无法加密。)

4. B生成一个用于对称加密的随机密码,用公钥加密,发送给A。

5. A用私钥解密A发来的消息,得到密码。

6. A和B用密码加密通信数据,无论A还是B都可以发送私密信息了。

SSL/TLS学习(三)

由于嗅探攻击者只有公钥,所以他无法解密步骤4中B发送给A的消息,也就无法得知密码。因此,就无法解密后续的所有通信数据了。

而且,由于后续数据的加密都是对称加密,也减轻了CPU的负担,提高了系统响应速度。