pub enum KeyExchangeGroup {
X25519,
X25519MlKem768,
Secp256r1,
Secp384r1,
Secp521r1,
X448,
Secp256r1MlKem768,
Secp384r1MlKem1024,
}Expand description
Key exchange group identifiers (RFC 8446 §4.2.7).
Variants§
X25519
X25519 (ECDHE with Curve25519)
X25519MlKem768
X25519MLKEM768 — post-quantum hybrid (X25519 ECDHE + ML-KEM-768 KEM). draft-ietf-tls-ecdhe-mlkem
Secp256r1
NIST P-256 (secp256r1) ECDHE
Secp384r1
NIST P-384 (secp384r1) ECDHE
Secp521r1
NIST P-521 (secp521r1) ECDHE
X448
X448 (ECDHE with Curve448)
Secp256r1MlKem768
SecP256r1MLKEM768 — post-quantum hybrid (secp256r1 ECDHE + ML-KEM-768 KEM). draft-ietf-tls-ecdhe-mlkem
Secp384r1MlKem1024
SecP384r1MLKEM1024 — post-quantum hybrid (secp384r1 ECDHE + ML-KEM-1024 KEM). draft-ietf-tls-ecdhe-mlkem
Implementations§
Source§impl KeyExchangeGroup
impl KeyExchangeGroup
Sourcepub const fn from_wire(bytes: [u8; 2]) -> Option<Self>
pub const fn from_wire(bytes: [u8; 2]) -> Option<Self>
Parse a key exchange group from its wire identifier.
Sourcepub const fn public_key_size_client(self) -> usize
pub const fn public_key_size_client(self) -> usize
Size of the client-side KeyShare entry for this group, in bytes.
Sourcepub const fn public_key_size_server(self) -> usize
pub const fn public_key_size_server(self) -> usize
Size of the server-side KeyShare entry for this group, in bytes.
For KEM-based groups the server returns a ciphertext (which may differ from the client’s public key size).
Trait Implementations§
Source§impl Clone for KeyExchangeGroup
impl Clone for KeyExchangeGroup
Source§fn clone(&self) -> KeyExchangeGroup
fn clone(&self) -> KeyExchangeGroup
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more