密码套件:密码,算法和协商安全设置
字数 956 2025-08-10 08:28:00

TLS 1.2密码套件详解

加密类型概述

对称加密

  • 使用两个相同的密钥进行加密和解密
  • 用于实际通信加密
  • 常见算法:AES(高级加密标准)
  • 密钥大小:128位到256位
  • 特点:计算效率高,安全性好

非对称加密

  • 使用一对不同的密钥(公钥和私钥)
  • 用于身份验证和密钥交换
  • 常见算法:RSA
  • 密钥大小:2048位、3072位或4096位
  • 特点:计算成本高,增加握手延迟

密码套件的四个组件

1. 密钥交换机制

决定如何传输对称会话密钥

RSA密钥交换

  1. 客户端使用服务器公钥加密预主密钥并传输
  2. 服务器使用私钥解密预主密钥
  3. 双方使用PRF、随机数和预主密钥导出主密钥
  4. 使用主密钥和更多PRF计算会话密钥

缺点

  • 已从TLS 1.3中移除
  • 容易遭受填充攻击
  • 不支持完美前向保密(PFS)

Diffie-Hellman (DH)密钥交换

  1. 交换随机数(g和p)
  2. 双方选择自己的主控机密(a和b)
  3. 计算:g^a mod p = A,g^b mod p = B
  4. 交换A和B
  5. 双方独立计算共享密钥:B^a mod p = A^b mod p

特点

  • 不需要非对称加密
  • 双方独立推导出共享密钥

椭圆曲线Diffie-Hellman (ECDH)

  • DH的现代迭代
  • 使用椭圆曲线密码学
  • 计算基于椭圆曲线上的点

临时版本(ECDHE)

  • TLS 1.3中的标准
  • 支持完美前向保密
  • 消除了静态密钥的安全隐患

PSK (预共享密钥)

  • 使用预先交换的对称密钥
  • 不常见于商业用途
  • 未包含在TLS 1.3中

2. 认证机制

验证通信双方的身份

3. 批量加密算法

用于实际数据传输的对称加密算法

4. 消息认证码(MAC)

确保消息完整性和真实性

TLS 1.2与TLS 1.3的主要区别

  1. 密钥交换

    • TLS 1.3移除了静态密钥交换机制(RSA, 静态DH)
    • 仅支持短暂密钥交换(如ECDHE)
  2. 完美前向保密

    • TLS 1.3强制要求PFS
    • 即使私钥泄露,历史会话也不会被解密
  3. 密码套件简化

    • TLS 1.3简化了密码套件结构
    • 移除了不安全的旧算法

安全建议

  1. 优先使用TLS 1.3
  2. 如果必须使用TLS 1.2:
    • 选择ECDHE密钥交换
    • 使用AES-256等强对称加密
    • 禁用不安全的密码套件
  3. 避免使用静态密钥交换机制
  4. 确保实现完美前向保密
TLS 1.2密码套件详解 加密类型概述 对称加密 使用两个相同的密钥进行加密和解密 用于实际通信加密 常见算法:AES(高级加密标准) 密钥大小:128位到256位 特点:计算效率高,安全性好 非对称加密 使用一对不同的密钥(公钥和私钥) 用于身份验证和密钥交换 常见算法:RSA 密钥大小:2048位、3072位或4096位 特点:计算成本高,增加握手延迟 密码套件的四个组件 1. 密钥交换机制 决定如何传输对称会话密钥 RSA密钥交换 客户端使用服务器公钥加密预主密钥并传输 服务器使用私钥解密预主密钥 双方使用PRF、随机数和预主密钥导出主密钥 使用主密钥和更多PRF计算会话密钥 缺点 : 已从TLS 1.3中移除 容易遭受填充攻击 不支持完美前向保密(PFS) Diffie-Hellman (DH)密钥交换 交换随机数(g和p) 双方选择自己的主控机密(a和b) 计算:g^a mod p = A,g^b mod p = B 交换A和B 双方独立计算共享密钥:B^a mod p = A^b mod p 特点 : 不需要非对称加密 双方独立推导出共享密钥 椭圆曲线Diffie-Hellman (ECDH) DH的现代迭代 使用椭圆曲线密码学 计算基于椭圆曲线上的点 临时版本(ECDHE) : TLS 1.3中的标准 支持完美前向保密 消除了静态密钥的安全隐患 PSK (预共享密钥) 使用预先交换的对称密钥 不常见于商业用途 未包含在TLS 1.3中 2. 认证机制 验证通信双方的身份 3. 批量加密算法 用于实际数据传输的对称加密算法 4. 消息认证码(MAC) 确保消息完整性和真实性 TLS 1.2与TLS 1.3的主要区别 密钥交换 : TLS 1.3移除了静态密钥交换机制(RSA, 静态DH) 仅支持短暂密钥交换(如ECDHE) 完美前向保密 : TLS 1.3强制要求PFS 即使私钥泄露,历史会话也不会被解密 密码套件简化 : TLS 1.3简化了密码套件结构 移除了不安全的旧算法 安全建议 优先使用TLS 1.3 如果必须使用TLS 1.2: 选择ECDHE密钥交换 使用AES-256等强对称加密 禁用不安全的密码套件 避免使用静态密钥交换机制 确保实现完美前向保密