#[repr(i32)]pub enum KemAlgorithm {
MlKem512 = 0,
MlKem768 = 1,
MlKem1024 = 2,
}Expand description
Key Encapsulation Mechanism algorithms.
Variants§
MlKem512 = 0
ML-KEM-512 (128-bit security)
MlKem768 = 1
ML-KEM-768 (192-bit security)
MlKem1024 = 2
ML-KEM-1024 (256-bit security)
Implementations§
Source§impl KemAlgorithm
impl KemAlgorithm
Sourcepub const KYBER_1024: Self = Self::MlKem1024
pub const KYBER_1024: Self = Self::MlKem1024
Alias for ML-KEM-1024 (NIST naming)
Sourcepub const fn public_key_size(self) -> usize
pub const fn public_key_size(self) -> usize
Get public key size in bytes.
Sourcepub const fn secret_key_size(self) -> usize
pub const fn secret_key_size(self) -> usize
Get secret key size in bytes.
Sourcepub const fn ciphertext_size(self) -> usize
pub const fn ciphertext_size(self) -> usize
Get ciphertext size in bytes.
Get shared secret size in bytes (always 32).
Trait Implementations§
Source§impl Clone for KemAlgorithm
impl Clone for KemAlgorithm
Source§fn clone(&self) -> KemAlgorithm
fn clone(&self) -> KemAlgorithm
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for KemAlgorithm
impl Debug for KemAlgorithm
Source§impl Display for KemAlgorithm
impl Display for KemAlgorithm
Source§impl Hash for KemAlgorithm
impl Hash for KemAlgorithm
Source§impl PartialEq for KemAlgorithm
impl PartialEq for KemAlgorithm
impl Copy for KemAlgorithm
impl Eq for KemAlgorithm
impl StructuralPartialEq for KemAlgorithm
Auto Trait Implementations§
impl Freeze for KemAlgorithm
impl RefUnwindSafe for KemAlgorithm
impl Send for KemAlgorithm
impl Sync for KemAlgorithm
impl Unpin for KemAlgorithm
impl UnwindSafe for KemAlgorithm
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)