HTTPS是怎么工作的?

HTTPS是怎么工作的?

 title=

今天我们来聊聊 HTTPS 的工作机制。


HTTPS 是超文本传输协议(HTTP)的扩展。HTTPS 使用传输层安全(TLS)传输加密数据。

如果数据在网上被劫持,劫持者得到的只是二进制代码,并不能看到数据。


那么数据如何加密和解密的呢?我们来看看下图的流程。

HTTPS是怎么工作的?_第1张图片

第 1 步

客户端(浏览器)和服务器先建立 TCP 连接。

第 2 步

客户端向服务器发送 "Client Hello"信息。该信息包含一套加密算法和它能支持的最新 TLS 版本。服务器回应一个 "Server Hello",以便浏览器知道它是否支持这些算法和 TLS 版本。

然后,服务器向客户端发送 SSL 证书。证书包含公钥、主机名、有效期等信息。客户端验证证书。

第 3 步

验证 SSL 证书后,客户端生成会话密钥 (Session Key),并使用公钥对其进行加密。服务器收到加密的会话密钥后,用私钥解密。这里使用的是非对称加密

第 4 步

既然客户端和服务器都持有相同的会话密钥,加密数据就会在安全的双向通道中传输。从这时开始,HTTPS使用的是对称加密

对称加密是指加密和解密使用相同密钥的加密算法。它要求发送方和接收方在安全通信之前,商定一个密钥。

HTTPS 为什么要在数据传输过程中切换到对称加密?主要有两个原因:

  1. 提高安全性: 非对称加密只能单向传输,服务器不能将加密数据回传给客户端,因为任何人都可以使用公钥在客户端解密数据。
  2. 节省服务器资源: 非对称加密会增加大量数学计算开销。它不适合长时间的数据传输。

你可能感兴趣的:(后端)