SSL
| 中文名 | 安全套接层[1] |
|---|---|
| 外文名 | Secure Sockets Layer[1] |
| 英文缩写 | SSL[1] |
| 开发方 | 网景通信公司(Netscape Communications)[2][3] |
| 首次发布 | SSL 2.0 / 1995年[4][5] |
| 最新版本 | SSL 3.0 / 1996年[4][6] |
| 后继协议 | 传输层安全协议(TLS)[3] |
| 协议状态 | 已废弃(所有版本均已弃用)[5] |
| 相关标准 | RFC 6101(SSL 3.0历史记录)[6] |
安全套接层(英语:Secure Sockets Layer,缩写:SSL)是一种安全协议,由网景通信公司(Netscape)在1990年代中期开发,旨在为互联网通信提供保密性和数据完整性保障[2][3]。SSL协议位于TCP/IP协议栈的传输层与应用层之间,为诸如HTTP(即HTTPS)、FTP、SMTP等高层应用协议提供加密通信服务[7][1]。SSL 3.0于1996年发布,是SSL协议的最终版本[4][6]。由于存在严重的安全漏洞,SSL协议的所有版本均已被其继任者传输层安全协议(TLS)取代,并被IETF正式废弃[5][6]。尽管如此,“SSL”一词仍被广泛用于指代其数字证书(即SSL证书),尽管这些证书目前实际使用的是TLS协议[8]。
SSL协议由网景通信公司开发,旨在保障其网景导航者(Netscape Navigator)浏览器与Web服务器之间的通信安全。
网景于1994年设计了SSL协议的1.0版本,但由于存在严重的安全缺陷,该版本从未公开发布[4][9]。
1995年,网景发布了SSL 2.0版[4][5]。这是第一个公开发行的版本,但很快被发现存在多个严重漏洞,并于2011年通过RFC 6176被正式弃用[9][5]。
1996年,网景与密码学家保罗·科赫(Paul Kocher)合作设计了SSL 3.0版[4][6]。该版本解决了SSL 2.0的诸多安全问题,获得了广泛认可和应用[4]。2011年,IETF将SSL 3.0的规范整理为RFC 6101发布,作为该协议的历史记录[6]。然而,SSL 3.0随后被发现存在POODLE等安全漏洞,于2015年被正式弃用[4][5]。
SSL被设计为一种两层协议,建立在可靠的传输层协议(如TCP)之上[1]:
- SSL记录层(SSL Record Layer):位于底层,负责对来自上层的数据进行分块、压缩、加密和封装,并添加消息认证码(MAC)以保证数据的完整性和机密性[1][3]。
- SSL握手协议(SSL Handshake Protocol):位于记录层之上,是SSL协议的核心。它允许客户端和服务器在传输应用数据之前,相互验证身份、协商加密算法和会话密钥[1][3]。
- 信息保密(Confidentiality):通过使用公开密钥和对称密钥技术,对客户端和服务器之间传输的所有数据进行加密,防止被第三方窃听[1]。
- 信息完整性(Data Integrity):通过使用共享密钥和哈希函数,确保传输的信息在传递过程中不被篡改或破坏[1]。
- 双向认证(Authentication):允许客户端和服务器在握手阶段交换数字证书,以验证彼此的身份,防止冒名顶替[1]。
传输层安全协议(TLS)是SSL协议的继任者,其设计基于SSL 3.0[9][8]。
- 继承与演进:TLS 1.0于1999年由IETF发布,可被视为SSL 3.1[9][3]。此后,IETF继续发布了TLS 1.1(2006年)、TLS 1.2(2008年)和TLS 1.3(2018年)[9][5]。
- 核心差异:与SSL相比,TLS提供了更强的安全性、更现代的加密算法,并修复了SSL协议中存在的诸多已知漏洞[8][5]。
- 现状:截至2022年,所有版本的SSL协议均已被废弃,TLS 1.2和TLS 1.3是当前推荐使用的安全协议版本[5]。
SSL协议是互联网上最早被广泛采用的通信安全协议,为电子商务、网上银行等应用的兴起奠定了基础[7]。尽管SSL本身已被淘汰,但其核心设计思想被TLS协议完整继承。同时,“SSL”这一术语作为安全套接层技术的代名词被保留下来,“SSL证书”的称呼沿用至今,尽管这些证书实际提供的是TLS加密[8]。
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 安全套接层 — 百度百科
- ↑ 2.0 2.1 OpenSSL — 百度百科
- ↑ 3.0 3.1 3.2 3.3 3.4 3.5 传输层安全协议 — 百度百科
- ↑ 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 SSL协议版本历史
- ↑ 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 SSL 与 TLS 协议的区别详解 — Baeldung
- ↑ 6.0 6.1 6.2 6.3 6.4 6.5 RFC 6101: The Secure Sockets Layer (SSL) Protocol Version 3.0 — IETF
- ↑ 7.0 7.1 7.2 安全套接层协议(SSL)简介 — IT168
- ↑ 8.0 8.1 8.2 8.3 SSL和TLS到底啥区别? — GlobalSign
- ↑ 9.0 9.1 9.2 9.3 9.4 SSL/TLS协议安全系列:SSL/TLS概述 — Seebug