附录 C. 密码套件定义
本附录定义本规范中使用的密码套件。每个密码套件指定了密钥交换、加密、MAC 和 PRF 算法的组合。所有符合规范的实现必须支持 TLS_RSA_WITH_AES_128_CBC_SHA(见第 9 章)。
C.1. 密码套件命名约定
密码套件名称的格式为:
TLS_{KEY_EXCHANGE}_WITH_{CIPHER}_{MAC}
其中:
KEY_EXCHANGE:密钥交换算法(RSA、DHE_RSA、DH_RSA 等)。CIPHER:批量加密算法(AES_128_CBC、AES_256_GCM 等)。MAC:MAC 算法(SHA、SHA256、SHA384 等)。对于 AEAD 密码,MAC 字段表示认证标签使用的哈希。
C.2. HMAC 模式密码套件
| 密码套件 | 密钥交换 | 加密 | MAC |
|---|---|---|---|
| TLS_RSA_WITH_AES_128_CBC_SHA | RSA | AES-128-CBC | SHA-1 |
| TLS_RSA_WITH_AES_256_CBC_SHA | RSA | AES-256-CBC | SHA-1 |
| TLS_DHE_RSA_WITH_AES_128_CBC_SHA | DHE_RSA | AES-128-CBC | SHA-1 |
| TLS_DHE_RSA_WITH_AES_256_CBC_SHA | DHE_RSA | AES-256-CBC | SHA-1 |
| TLS_RSA_WITH_AES_128_CBC_SHA256 | RSA | AES-128-CBC | SHA-256 |
| TLS_RSA_WITH_AES_256_CBC_SHA256 | RSA | AES-256-CBC | SHA-256 |
C.3. AEAD 模式密码套件
| 密码套件 | 密钥交换 | 加密 | 认证标签 |
|---|---|---|---|
| TLS_RSA_WITH_AES_128_GCM_SHA256 | RSA | AES-128-GCM | SHA-256 |
| TLS_RSA_WITH_AES_256_GCM_SHA384 | RSA | AES-256-GCM | SHA-384 |
| TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | DHE_RSA | AES-128-GCM | SHA-256 |
C.4. 其他注意事项
- 在 TLS 1.2 中,AEAD 密码(如 AES-GCM)不需要单独的 MAC 算法,因为认证由密码本身提供。
TLS_NULL_WITH_NULL_NULL不得用于保护应用数据。它仅用于初始握手状态。
注意:本译文由 AI 翻译,可能包含错误。请参考 RFC 5246 官方英文原文进行核对。