← 返回首页

HTTPS的加密流程?TLS握手阶段如何交换密钥?

HTTPS 完整加密流程 + TLS 握手密钥交换原理。

一、HTTPS 本质

HTTPS = HTTP + TLS

HTTP:明文传输(不安全)

TLS:加密层(负责加密、身份认证、防篡改)

二、一句话核心

TLS 用 非对称加密 安全交换对称密钥,再用 对称加密 高速传输数据。

三、TLS 1.3 握手流程(现代 HTTPS 主流)

  1. Client Hello(客户端 → 服务端)

支持的 TLS 版本

支持的加密套件

随机数 client_random

  1. Server Hello(服务端 → 客户端)

确定 TLS 版本

确定加密套件

随机数 server_random

服务端证书(含公钥)

  1. 客户端验证证书

验证证书是否由可信 CA 签发

确认域名、有效期、未被吊销

  1. 客户端生成 预主密钥 Pre-Master Secret

用服务端公钥加密后发给服务端

只有服务端有私钥能解开

  1. 双方算出 主密钥 Master Secret

双方都用这三个值计算:

client_random

server_random

pre-master secret

最终得到一组会话密钥(对称密钥)

  1. 加密通信开始

之后所有数据都用对称加密传输,速度快、安全。