HTTPS 是如何保证传输安全的?

2023-08-22 15:55:40 浏览数 (1)

HTTPS 是一种基于 SSL/TLS 加密协议的安全传输协议,用于保护在互联网上传输的数据的机密性、完整性和身份验证。HTTPS 可以有效地保护客户端与服务器之间的通信,是现代网络应用程序中广泛使用的一种安全协议。

在 HTTPS 中,SSL/TLS 协议负责加密握手过程,并创建客户端和服务器之间的安全连接。以下是 SSL/TLS 协议确保通信安全的一些主要机制:

  1. 1、握手过程(协商算法)

在 SSL/TLS 协议中,服务器首先通过与客户端进行握手来确定应该使用哪个加密算法和密钥长度。这个过程被称为协商算法。客户端与服务器之间交换数据以决定将使用哪个共同协议版本、密码各项参数等等。具体流程包括:

  • (1)、客户端向服务器发起连接请求,并指明需要使用加密传输。
  • (2)、服务器返回数字证书,其中包含公钥,并说明支持哪些加密算法。
  • (3)、客户端使用之前浏览器内置的 CA 根证书检查服务器的数字证书是否可信,如果可信则提取服务器公钥。
  • (4)、客户端随机生成一个对称密钥并使用服务器的公钥加密后发送给服务器。
  • (5)、服务器使用私钥解密客户端发送的信息,并得到对称密钥。
  • 同时,服务器和客户端也需要生成用于加密数据传输的会话密钥。
  1. 2、对称加密

在握手过程中,协商出一个用于加密数据的对称密钥。在之后的通信过程中,这个密钥将被用来加密和解密所有数据。由于对称加密算法可以提供高效的数据加密和解密,因此在 HTTPS 中广泛使用的共同协议包括 AES、RC4 和 ChaCha20 等等。

  1. 3、非对称加密

在 SSL/TLS 协议的握手过程中,通过公钥加密进行数据加密传输,这个过程就称为非对称加密。非对称加密算法是一种公开密钥加密技术,其中 Sender 将消息加密并发送到接收者 Receiver。只有 Receiver 可以使用其私钥解密消息,并且 Sender 无法访问该私钥。常见的非对称加密算法包括 RSA、Diffie-Hellman 和椭圆曲线加密等等。

  1. 4、消息认证码 (MAC)

在握手过程中,另一个重要的操作是生成消息认证码(MAC),用于检查消息的完整性和验证它们的真实性。MAC 是通过数据摘要和密钥生成的,旨在防止未经授权的更改或篡改,并验证该数据是从所述计算机到达的,而不是第三方出现的恶意代码。

  1. 5、数字证书

SSL/TLS 协议还涉及数字证书。数字证书是由受信任的第三方认证机构(CA)颁发的,在 SSL/TLS 握手期间用于验证身份。数字证书包含服务器“所有者”的信息,这些信息通过基于公钥密码学的签名进行保护。客户端会对服务器的数字证书进行检查,并使用它来验证服务器的身份是否存在问题。

综上所述 HTTPS 运用了多种机制确保通信安全性:

  • (1)、协商算法确定加密和解密的方式。
  • (2)、对称加密算法提供高效的数据加密传输;
  • (3)、非对称加密算法为消息和公钥加密提供技术支持;
  • (4)、消息认证码确保消息完整性、真实性以及避免篡改;
  • (5)、应用数字证书极大程度上避免伪造;

总之,HTTPS 利用 SSL/TLS 等协议借助加密、认证和完整性检查等各种加固措施保护网络中敏感信息的隐私和完整性。

0 人点赞