https原理-明文、对称加密、非对称加密、CA

发布时间 2023-03-25 17:16:07作者: zhenjingcool

1 明文

使用明文传输,请求和响应过程都会遭到黑客攻击。

2 对称加密

使用对称加密,黑客同样可以伪装成良民请求密钥,使用该密钥在请求和响应的过程中对数据进行窃听和篡改。

3 非对称加密

服务端有一对公钥和私钥,

公钥加密,私钥解密;私钥加密,公钥解密。

3.1 请求的过程

(1)首先,客户端请求公钥。

(2)然后使用公钥加密,传输数据,

(3)服务端使用私钥解密,获取到原文。

3.2 响应的过程

(1)首先,服务端使用私钥加密,返回数据。

(2)客户端使用公钥解密,获取响应报文。

3.3 存在的问题

黑客同样可以获取到公钥,在响应阶段,黑客介入,使用公钥对密文解密;

但是请求阶段,因为是公钥加密,公钥不能解密,所以请求是安全的。响应是不安全的。

4 对称加密+非对称加密

4.1 过程

首先,使用非对称加密的方式获取到公钥pk

其次,客户端生成随机串num1,使用公钥加密后生成X传给服务器,

然后,服务器使用私钥解密X得到num1

然后,服务器返回客户端OK

然后后续的通信都使用num1对数据进行对称加密。

4.2 解决了什么问题

这种方式解决了3中使用非对称加密,响应报文,黑客可以使用公钥解密的问题。

4.3 存在的问题

中间人攻击问题。

(1)在客户端请求服务端获取公钥时,黑客就介入。伪装成服务器和客户端通信。客户端得到的公钥是黑客的公钥pk1。而同时,黑客伪装成客户端和服务器通信,获取公钥pk。

(2)客户端发送num1到黑客,黑客发送num1到服务端。后续通信使用num1对数据进行对称加密通信。

(3)整个过程中,客户端觉察不到黑客的存在,客户端以为和它通信的是真正的服务端。为了解决这个问题引入可信认证机构(CA)见下面分析。

5 对称加密+非对称加密+CA

5.1 过程

(1)CA机构使用cpk对pk加密,生成证书,颁发给服务端。

(2)客户端请求服务端证书

(3)服务端返回客户端证书

(4)客户端操作系统中查找该CA机构根证书,找不到则弹出浏览器提示“不安全的访问连接是否继续”。找到CA根证书(主要根证书和服务端证书不一样)。在根证书中得到cpk,然后用cpk对服务端证书携带的加密的pk进行解密,解密得到pk

(5)客户端使用pk对随机串num1进行加密得到密文X

(6)服务端使用sk对X解密得到随机串num1

(7)服务端发送确认ok

(8)后续的通信,使用num1对数据进行对称加密,进行通信。

下图是操作系统自带的CA机构的根证书

5.2 解决了什么问题

CA机构采用把自己根证书写到操作系统的方式,能够保证服务端pk的正确性,也就是说CA机构能够保证我们访问的服务端是真正的服务端,不是黑客。