Expand description
密钥交换组:SupportedKxGroup / ActiveKeyExchange 适配。
X25519 = 非批准;secp256r1/secp384r1 = 批准(但认证前 fips() 恒
false,见 lib.rs“fips() 语义”)。
私钥由 ferritls-core 的 OS 熵直读生成(批准模式的 DRBG 路径由
CryptoProvider::secure_random 与密钥生成入口的自检守卫覆盖;
ECDH 私钥生成熵需求为曲线阶长,风险敞口极小)。
Structs§
- Mlkem512
- MLKEM512(draft-ietf-tls-mlkem-key-agreement,codepoint 0x0200)纯 ML-KEM 密钥交换组(M8.4):Cat 1 参数集(k = 2,η₁ = 3)。
- Mlkem768
- MLKEM768(draft-ietf-tls-mlkem-key-agreement,codepoint 0x0201)纯 ML-KEM 密钥交换组(M8.4):Cat 3 参数集(k = 3)。
- Mlkem1024
- MLKEM1024(draft-ietf-tls-mlkem-key-agreement,codepoint 0x0202)纯 ML-KEM 密钥交换组(M8.4):Cat 5 参数集(k = 4,du = 11)。
- SecP256
R1 - secp256r1(NIST P-256)密钥交换组。
- SecP384
R1 - secp384r1(NIST P-384)密钥交换组。
- X25519
- X25519(RFC 7748)密钥交换组。
- X25519
Mlkem768 - X25519MLKEM768(draft-ietf-tls-ecdhe-mlkem,codepoint 0x11EC)混合 密钥交换组(M8.3)。
Statics§
- ALL_
KX_ GROUPS - 默认(非批准模式)密钥交换组清单;顺序即偏好——X25519MLKEM768
混合优先,其后纯 ML-KEM(768/1024/512)与经典组。注意 rustls 会
为清单内每个组在 ClientHello 里发 key share:全清单 share 约
4.8 KB(1216 + 1184 + 1568 + 800 + 32 B),只需子集的用户可自行
装配 provider(
CryptoProvider字段公开)。 - FIPS_
KX_ GROUPS - 批准模式密钥交换组清单:ML-KEM 全部三个参数集(FIPS 203 批准; 纯组与 X25519MLKEM768 混合——X25519 进批准模式的通道)+ 经典 P-256/P-384;无独立 X25519(SP 800-52r2 口径)。
- MLKE
M512_ GROUP - Mlkem512 组单例。
- MLKE
M768_ GROUP - Mlkem768 组单例。
- MLKE
M1024_ GROUP - Mlkem1024 组单例。
- SECP256
R1_ GROUP - P-256 组单例。
- SECP384
R1_ GROUP - P-384 组单例。
- X25519MLKE
M768_ GROUP - X25519MLKEM768 混合组单例(默认列表首项:PQ 优先,同主流 provider/浏览器实践;1216 B ClientHello share)。
- X25519_
GROUP - X25519 组单例。