概念|TLS 握手与 HTTPS

HTTPS 不是新协议,而是”HTTP + TLS 加密”。理解握手,才懂”为什么中间人看不懂”。

① 是什么

TLS 在 HTTP 之下加一层加密,保证机密性(防窃听)、完整性(防篡改)、身份验证(防冒充)握手是客户端与服务器协商密钥、验证证书的过程。

② 为什么重要

  • 不加密,账号密码、Cookie、业务数据在链路上裸奔,公共 WiFi 下尤甚。
  • 配置不当(弱协议、无效证书)会让”加密”形同虚设。

③ 核心概念拆解(带片段)

  • 握手步骤(简化,TLS 1.3)
ClientHello  →  支持的版本/套件/随机数
            ←  ServerHello + 证书 + 服务端随机数
ClientKeyExchange → 用证书公钥加密的预主密钥
            ←  用协商出的对称密钥加密的 Finished

之后双方用对称会话密钥加密通信;证书用于证明”你是你要连的服务器”。

  • 证书链:由 CA 签发,浏览器校验域名与链完整性。
  • 前向保密(PFS):每次会话独立密钥,单次泄露不影响历史流量。
  • 配置要点:禁用 SSLv3/TLS1.0/1.1 与弱套件,启用 HSTS(见①组安全头篇)。

④ 常见误区

  • 有锁图标=安全?证书可能无效/被诈,仍要校验证书链。
  • TLS1.2 一定安全?弱套件/无 PFS 仍有风险,优先 TLS1.3。
  • 内网不用 HTTPS?内网也可能被嗅探,应全链路加密。

⑤ 一句话小结

HTTPS = HTTP + TLS;握手用非对称协商出对称会话密钥,配合可信证书实现加密与身份验证——这是所有 Web 安全的传输底座。

下一篇:Web 缓存与缓存投毒

参考来源:https://www.cloudflare.com/learning/ssl/what-happens-in-a-tls-handshake/


This site uses Just the Docs, a documentation theme for Jekyll.