Enum Ciphersuite
#[repr(u16)]pub enum Ciphersuite {
MLS_128_DHKEMX25519_AES128GCM_SHA256_Ed25519 = 1,
MLS_128_DHKEMP256_AES128GCM_SHA256_P256 = 2,
MLS_128_DHKEMX25519_CHACHA20POLY1305_SHA256_Ed25519 = 3,
MLS_256_DHKEMX448_AES256GCM_SHA512_Ed448 = 4,
MLS_256_DHKEMP521_AES256GCM_SHA512_P521 = 5,
MLS_256_DHKEMX448_CHACHA20POLY1305_SHA512_Ed448 = 6,
MLS_256_DHKEMP384_AES256GCM_SHA384_P384 = 7,
MLS_256_XWING_CHACHA20POLY1305_SHA256_Ed25519 = 77,
}
Expand description
MLS ciphersuites.
Variants§
MLS_128_DHKEMX25519_AES128GCM_SHA256_Ed25519 = 1
DH KEM x25519 | AES-GCM 128 | SHA2-256 | Ed25519
MLS_128_DHKEMP256_AES128GCM_SHA256_P256 = 2
DH KEM P256 | AES-GCM 128 | SHA2-256 | EcDSA P256
MLS_128_DHKEMX25519_CHACHA20POLY1305_SHA256_Ed25519 = 3
DH KEM x25519 | Chacha20Poly1305 | SHA2-256 | Ed25519
MLS_256_DHKEMX448_AES256GCM_SHA512_Ed448 = 4
DH KEM x448 | AES-GCM 256 | SHA2-512 | Ed448
MLS_256_DHKEMP521_AES256GCM_SHA512_P521 = 5
DH KEM P521 | AES-GCM 256 | SHA2-512 | EcDSA P521
MLS_256_DHKEMX448_CHACHA20POLY1305_SHA512_Ed448 = 6
DH KEM x448 | Chacha20Poly1305 | SHA2-512 | Ed448
MLS_256_DHKEMP384_AES256GCM_SHA384_P384 = 7
DH KEM P384 | AES-GCM 256 | SHA2-384 | EcDSA P384
MLS_256_XWING_CHACHA20POLY1305_SHA256_Ed25519 = 77
X-WING KEM draft-01 | Chacha20Poly1305 | SHA2-256 | Ed25519
Implementations§
§impl Ciphersuite
impl Ciphersuite
pub const fn hash_algorithm(&self) -> HashType
pub const fn hash_algorithm(&self) -> HashType
Get the HashType
for this Ciphersuite
pub const fn signature_algorithm(&self) -> SignatureScheme
pub const fn signature_algorithm(&self) -> SignatureScheme
Get the SignatureScheme
for this Ciphersuite
.
pub const fn aead_algorithm(&self) -> AeadType
pub const fn aead_algorithm(&self) -> AeadType
Get the AeadType
for this Ciphersuite
.
pub const fn hpke_kdf_algorithm(&self) -> HpkeKdfType
pub const fn hpke_kdf_algorithm(&self) -> HpkeKdfType
Get the HpkeKdfType
for this Ciphersuite
.
pub const fn hpke_kem_algorithm(&self) -> HpkeKemType
pub const fn hpke_kem_algorithm(&self) -> HpkeKemType
Get the HpkeKemType
for this Ciphersuite
.
pub const fn hpke_aead_algorithm(&self) -> HpkeAeadType
pub const fn hpke_aead_algorithm(&self) -> HpkeAeadType
Get the HpkeAeadType
for this Ciphersuite
.
pub const fn hpke_config(&self) -> HpkeConfig
pub const fn hpke_config(&self) -> HpkeConfig
Get the HpkeConfig
for this Ciphersuite
.
pub const fn hash_length(&self) -> usize
pub const fn hash_length(&self) -> usize
Get the length of the used hash algorithm.
pub const fn mac_length(&self) -> usize
pub const fn mac_length(&self) -> usize
Get the length of the AEAD tag.
pub const fn aead_key_length(&self) -> usize
pub const fn aead_key_length(&self) -> usize
Returns the key size of the used AEAD.
pub const fn aead_nonce_length(&self) -> usize
pub const fn aead_nonce_length(&self) -> usize
Returns the length of the nonce of the AEAD.
Trait Implementations§
§impl Clone for Ciphersuite
impl Clone for Ciphersuite
§fn clone(&self) -> Ciphersuite
fn clone(&self) -> Ciphersuite
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for Ciphersuite
impl Debug for Ciphersuite
§impl<'de> Deserialize<'de> for Ciphersuite
impl<'de> Deserialize<'de> for Ciphersuite
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Ciphersuite, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Ciphersuite, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl Deserialize for Ciphersuite
impl Deserialize for Ciphersuite
§fn tls_deserialize<R>(bytes: &mut R) -> Result<Ciphersuite, Error>where
R: Read,
fn tls_deserialize<R>(bytes: &mut R) -> Result<Ciphersuite, Error>where
R: Read,
bytes
from the provided a std::io::Read
and returns the populated struct. Read more§impl DeserializeBytes for Ciphersuite
impl DeserializeBytes for Ciphersuite
§fn tls_deserialize_bytes(bytes: &[u8]) -> Result<(Ciphersuite, &[u8]), Error>
fn tls_deserialize_bytes(bytes: &[u8]) -> Result<(Ciphersuite, &[u8]), Error>
bytes
from the provided a &[u8]
and returns the populated struct, as well as the remaining slice. Read more§impl Display for Ciphersuite
impl Display for Ciphersuite
§impl From<Ciphersuite> for AeadType
impl From<Ciphersuite> for AeadType
§fn from(ciphersuite_name: Ciphersuite) -> AeadType
fn from(ciphersuite_name: Ciphersuite) -> AeadType
§impl From<Ciphersuite> for HashType
impl From<Ciphersuite> for HashType
§fn from(ciphersuite_name: Ciphersuite) -> HashType
fn from(ciphersuite_name: Ciphersuite) -> HashType
§impl From<Ciphersuite> for HpkeAeadType
impl From<Ciphersuite> for HpkeAeadType
§fn from(ciphersuite_name: Ciphersuite) -> HpkeAeadType
fn from(ciphersuite_name: Ciphersuite) -> HpkeAeadType
§impl From<Ciphersuite> for HpkeKdfType
impl From<Ciphersuite> for HpkeKdfType
§fn from(ciphersuite_name: Ciphersuite) -> HpkeKdfType
fn from(ciphersuite_name: Ciphersuite) -> HpkeKdfType
§impl From<Ciphersuite> for HpkeKemType
impl From<Ciphersuite> for HpkeKemType
§fn from(ciphersuite_name: Ciphersuite) -> HpkeKemType
fn from(ciphersuite_name: Ciphersuite) -> HpkeKemType
§impl From<Ciphersuite> for SignatureScheme
impl From<Ciphersuite> for SignatureScheme
§fn from(ciphersuite_name: Ciphersuite) -> SignatureScheme
fn from(ciphersuite_name: Ciphersuite) -> SignatureScheme
§impl From<Ciphersuite> for VerifiableCiphersuite
impl From<Ciphersuite> for VerifiableCiphersuite
§fn from(value: Ciphersuite) -> VerifiableCiphersuite
fn from(value: Ciphersuite) -> VerifiableCiphersuite
§impl Hash for Ciphersuite
impl Hash for Ciphersuite
§impl Ord for Ciphersuite
impl Ord for Ciphersuite
§impl PartialEq for Ciphersuite
impl PartialEq for Ciphersuite
§impl PartialOrd for Ciphersuite
impl PartialOrd for Ciphersuite
§impl Serialize for &Ciphersuite
impl Serialize for &Ciphersuite
§impl Serialize for Ciphersuite
impl Serialize for Ciphersuite
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
§impl Serialize for Ciphersuite
impl Serialize for Ciphersuite
§impl Size for &Ciphersuite
impl Size for &Ciphersuite
fn tls_serialized_len(&self) -> usize
§impl Size for Ciphersuite
impl Size for Ciphersuite
fn tls_serialized_len(&self) -> usize
§impl TryFrom<u16> for Ciphersuite
impl TryFrom<u16> for Ciphersuite
impl Copy for Ciphersuite
impl Eq for Ciphersuite
impl StructuralPartialEq for Ciphersuite
Auto Trait Implementations§
impl Freeze for Ciphersuite
impl RefUnwindSafe for Ciphersuite
impl Send for Ciphersuite
impl Sync for Ciphersuite
impl Unpin for Ciphersuite
impl UnwindSafe for Ciphersuite
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more