HTTP、HTTPS、SSL 与 TLS,到底是什么关系?
作为开发者或网站运维者,你一定听过“请把网站升级到 HTTPS”“SSL 证书过期了”“TLS 1.3 更安全”这类说法。但 HTTP、HTTPS、SSL、TLS 这几个词究竟指什么?它们之间是替代关系,还是层层包裹?本文用“信使与信封”的比喻,帮你一次理清。
1. HTTP:明文传递的信使
HTTP(HyperText Transfer Protocol)是互联网上最基础的应用层协议,用于浏览器与服务器之间传输网页内容。
数据以明文传输(就像寄一张没封口的明信片);
端口默认为
80
;速度快,但不安全——中间人可窃听、篡改内容(如插入广告、盗取 Cookie)。
📌 在 HTTP 世界里,你输入的密码、银行卡号,都可能被路过的人看见。
2. HTTPS:给信使穿上加密盔甲
HTTPS(HTTP Secure)并不是新协议,而是 HTTP + 安全层 的组合。
它的本质是:在 HTTP 之下,加入一层加密通道,确保数据在传输过程中不被窥探或篡改。
URL 以
https://
开头;默认端口为
443
;浏览器地址栏会显示 🔒 锁图标;
现代浏览器对 HTTP 网站标记为“不安全”。
那么,这个“加密通道”是谁提供的?答案是:SSL/TLS。
3. SSL 与 TLS:加密通道的“两代工程师”
很多人说“装个 SSL 证书”,其实现在用的几乎都是 TLS(Transport Layer Security)。它们的关系如下:
SSL(Secure Sockets Layer):由 Netscape 在 1990 年代开发,版本包括 SSL 2.0、SSL 3.0;
TLS:是 SSL 的继任者,由 IETF 标准化,从 TLS 1.0(1999)发展到如今的 TLS 1.3(2018);
SSL 3.0 及更早版本已被证明存在严重漏洞(如 POODLE),早已废弃;
但“SSL 证书”这个叫法沿用至今,实际签发的都是支持 TLS 的证书。
📌 就像“胶卷相机”早已被数码取代,但我们仍说“拍张照”——“SSL 证书”是历史遗留的称呼,本质是 TLS 证书。
4. 一张图看懂层级关系
应用层: HTTP → 传输内容(HTML、JSON 等) ↓ 安全层: TLS → 加密、身份验证、完整性校验 ↓ 传输层: TCP → 可靠传输(端口 443)
所以,HTTPS = HTTP over TLS(过去是 over SSL,现已淘汰)。
5. 开发者需要注意什么?
✅ 所有生产环境网站必须启用 HTTPS;
✅ 从正规 CA(如 Let's Encrypt、DigiCert、阿里云)申请免费或付费证书;
✅ 服务器配置时,禁用 SSLv3、TLS 1.0/1.1,仅启用 TLS 1.2+;
✅ 使用 SSL Labs 测试工具 检查配置安全性;
❌ 不要使用自签名证书上线(除非内网测试)。
结语
HTTP 是信使,TLS 是信封,HTTPS 是一封被密封、签名、防拆的信。 在这个数据即资产的时代,加密不是选项,而是底线。
愿你的每一次请求,都穿越安全的云层,抵达可信的彼岸。