Files
Knowledge/sunyard/7 信安/SSL VPN/TLS 1.0 与 TLS 1.1 的主要区别.md
T

3.8 KiB
Raw Blame History

TLS 1.0 与 TLS 1.1 的主要区别在于,TLS 1.1 是对 TLS 1.0 已知安全漏洞的针对性修补版本。虽然它们现在都已过时,但了解其区别有助于理解安全协议的演进脉络。

下面的表格清晰地列出了它们的核心差异:

特性/方面 TLS 1.0 (RFC 2246, 1999年) TLS 1.1 (RFC 4346, 2006年) 区别的意义与影响
针对CBC攻击的防护 无。初始化向量(IV)是显式且可预测的,易受BEAST攻击。 有。规定必须使用显式的、不可预测的IV,并建议在记录中发送IV。 这是最重要的安全修补,直接封堵了TLS 1.0最危险的理论攻击路径之一。
应对填充预言攻击 无防护。对填充错误的处理方式,可能泄露信息,导致Lucky Thirteen等攻击。 有改进。规定必须统一所有错误的处理方式(统一返回“bad_record_mac”警报),但未根本解决。 提高了攻击难度,但真正的解决是在TLS 1.2中引入了HMAC等更健壮的验证方式。
IANA注册与扩展 未明确定义。对协议扩展和新算法的支持方式比较模糊。 明确定义。为算法参数等引入了IANA注册机制,为未来协议扩展铺平了道路。 提升了协议的灵活性和可维护性,是协议成熟化的标志。
其他调整 依赖MD5/SHA-1等较弱的哈希函数。 新增对 AES 密码套件的正式支持。 反映了当时密码学的发展,但未触及核心算法弱点。

🔍 核心区别详解

1. 对抗CBC攻击:从“可预测”到“显式IV” 这是最关键的改进。在TLS 1.0中,每条加密记录的初始向量(IV)是从前一条记录的密文中推导出来的,这使得攻击者有可能预测并构造恶意请求(BEAST攻击)。TLS 1.1强制要求每条记录的IV都必须是独立、显式且不可预测的,从根本上切断了这种攻击的可能性。

2. 错误处理:从“信息泄露”到“统一模糊” 在TLS 1.0中,服务器对接收到的错误数据包(如填充错误、MAC校验错误)可能会返回不同的错误警报。攻击者可以像“询问神谕”一样,通过观察这些细微的差异来逐步破解密文。TLS 1.1规定,对于这类错误必须统一返回完全相同的通用错误警报,使攻击者无法从服务器响应中获取有效信息。

💎 总结与定位

  • 关系:TLS 1.1本质上是TLS 1.0的安全补丁版。它修复了最紧迫的安全问题,但没有进行架构或算法上的重大革新。
  • 根本局限:两者都深度依赖已不安全的MD5和SHA-1哈希算法,且TLS 1.1未能完全解决填充预言攻击(直到TLS 1.2才彻底解决)。因此,它们的安全基线在当今看来仍然很低。
  • 现状:TLS 1.0和1.1均已遭全球淘汰。所有主流浏览器、操作系统和现代安全标准(如PCI DSS)都已默认禁用它们。目前的标准是TLS 1.2和1.3。

因此,虽然TLS 1.1比1.0更安全,但这只是“五十步”与“一百步”的区别。在现代应用中,两者都应被视为不安全协议而严格禁用。

如果你是在维护一个必须兼容古董设备的特殊系统,了解这些细节可能有用;但在任何新项目或安全审计中,正确的做法都是直接启用TLS 1.2/1.3,并明确禁用1.0和1.1。