Enum CiphersuiteName
#[repr(u16)]pub enum CiphersuiteName {
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,
}
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
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 Display for Ciphersuite
impl Display for Ciphersuite
source§impl From<Ciphersuite> for MlsCiphersuite
impl From<Ciphersuite> for MlsCiphersuite
source§fn from(value: Ciphersuite) -> Self
fn from(value: Ciphersuite) -> Self
source§impl From<MlsCiphersuite> for Ciphersuite
impl From<MlsCiphersuite> for Ciphersuite
source§fn from(ciphersuite: MlsCiphersuite) -> Self
fn from(ciphersuite: MlsCiphersuite) -> Self
§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<VerifiableCiphersuite> for Ciphersuite
impl TryFrom<VerifiableCiphersuite> for Ciphersuite
§fn try_from(
value: VerifiableCiphersuite,
) -> Result<Ciphersuite, <Ciphersuite as TryFrom<VerifiableCiphersuite>>::Error>
fn try_from( value: VerifiableCiphersuite, ) -> Result<Ciphersuite, <Ciphersuite as TryFrom<VerifiableCiphersuite>>::Error>
§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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
Read moresource§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