#[non_exhaustive]pub enum HpkeKdf {
HKDF_SHA256,
HKDF_SHA384,
HKDF_SHA512,
Unknown(u16),
}
Expand description
The Key Derivation Function (Kdf
) type for HPKE operations.
Listed by IANA, as specified in RFC 9180 Section 7.2
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Implementations§
Trait Implementations§
source§impl Codec for HpkeKdf
impl Codec for HpkeKdf
source§fn encode(&self, bytes: &mut Vec<u8>)
fn encode(&self, bytes: &mut Vec<u8>)
Function for encoding itself by appending itself to
the provided vec of bytes.
source§fn read(r: &mut Reader<'_>) -> Result<Self, InvalidMessage>
fn read(r: &mut Reader<'_>) -> Result<Self, InvalidMessage>
Function for decoding itself from the provided reader
will return Some if the decoding was successful or
None if it was not.
source§fn get_encoding(&self) -> Vec<u8>
fn get_encoding(&self) -> Vec<u8>
Convenience function for encoding the implementation
into a vec and returning it
source§fn read_bytes(bytes: &[u8]) -> Result<Self, InvalidMessage>
fn read_bytes(bytes: &[u8]) -> Result<Self, InvalidMessage>
Function for wrapping a call to the read function in
a Reader for the slice of bytes provided
impl Copy for HpkeKdf
impl Eq for HpkeKdf
impl StructuralPartialEq for HpkeKdf
Auto Trait Implementations§
impl Freeze for HpkeKdf
impl RefUnwindSafe for HpkeKdf
impl Send for HpkeKdf
impl Sync for HpkeKdf
impl Unpin for HpkeKdf
impl UnwindSafe for HpkeKdf
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
Mutably borrows from an owned value. Read more
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)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)