什么是 SSL/TLS?
SSL/TLS(安全套接字层 / 传输层安全)是设计用于在计算机网络上提供安全通信的加密协议。TLS 是 SSL 的继任者,用于加密客户端和服务器之间传输的数据。
快速了解
| 全称 | 安全套接字层 / 传输层安全 |
|---|---|
| 创建时间 | SSL 1995 年由 Netscape 开发,TLS 1999 年由 IETF 开发 |
| 规范文档 | 官方规范 |
SSL/TLS 工作原理
SSL 由 Netscape 于 1995 年开发,SSL 3.0 是最广泛采用的版本。由于安全漏洞,SSL 已被弃用,取而代之的是 TLS。TLS 1.0(1999)本质上是 SSL 3.1,TLS 1.2(2008)和 TLS 1.3(2018)增加了重大安全改进。TLS 提供三种主要安全服务:加密(机密性)、认证(身份验证)和完整性(篡改检测)。它结合使用对称和非对称加密,使用证书进行身份验证。
主要特点
- 提供加密、认证和完整性
- TLS 1.3 是当前推荐版本
- 使用证书进行服务器认证
- 结合对称和非对称加密
- 握手协议建立安全连接
- SSL 因漏洞已被弃用
常见用途
- HTTPS 网站加密
- 电子邮件加密(SMTPS、IMAPS)
- VPN 连接
- 安全 API 通信
- 数据库连接加密
示例
TLS 版本历史:
版本 年份 状态
SSL 2.0 1995 已弃用(不安全)
SSL 3.0 1996 已弃用(POODLE 攻击)
TLS 1.0 1999 已弃用
TLS 1.1 2006 已弃用
TLS 1.2 2008 广泛使用
TLS 1.3 2018 推荐使用
TLS 1.3 握手(简化):
1. 客户端 Hello + 密钥共享
2. 服务器 Hello + 密钥共享 + 证书
3. 客户端完成
4. 应用数据(已加密)
密码套件示例(TLS 1.3):
TLS_AES_256_GCM_SHA384
- AES-256-GCM 用于加密
- SHA-384 用于 HMAC
OpenSSL 检查:
openssl s_client -connect example.com:443 -tls1_3