pub struct MlKem768;Expand description
MlKem768 is the parameter set for security category 3, corresponding to key search on a
block cipher with a 192-bit key.
Trait Implementations§
Source§impl AssociatedAlgorithmIdentifier for MlKem768
impl AssociatedAlgorithmIdentifier for MlKem768
Source§const ALGORITHM_IDENTIFIER: AlgorithmIdentifier<Self::Params>
const ALGORITHM_IDENTIFIER: AlgorithmIdentifier<Self::Params>
AlgorithmIdentifier for this structure.Source§impl AssociatedOid for MlKem768
impl AssociatedOid for MlKem768
Source§const OID: ObjectIdentifier = const_oid::db::fips203::ID_ALG_ML_KEM_768
const OID: ObjectIdentifier = const_oid::db::fips203::ID_ALG_ML_KEM_768
The OID associated with this type.
Source§impl Kem for MlKem768
impl Kem for MlKem768
Source§type DecapsulationKey = DecapsulationKey<MlKem768>
type DecapsulationKey = DecapsulationKey<MlKem768>
KEM decryption key (i.e. private key) which can decrypt encrypted shared secret ciphertexts
which were encrypted by
Kem::EncapsulationKey.Source§type EncapsulationKey = EncapsulationKey<MlKem768>
type EncapsulationKey = EncapsulationKey<MlKem768>
KEM encryption key (i.e. public key) which encrypts shared secrets into ciphertexts which
can be decrypted by
Kem::DecapsulationKey.Source§type CiphertextSize = <<<MlKem768 as ParameterSet>::Du as VectorEncodingSize<<MlKem768 as ParameterSet>::K>>::EncodedVectorSize as Add<<<MlKem768 as ParameterSet>::Dv as EncodingSize>::EncodedPolynomialSize>>::Output
type CiphertextSize = <<<MlKem768 as ParameterSet>::Du as VectorEncodingSize<<MlKem768 as ParameterSet>::K>>::EncodedVectorSize as Add<<<MlKem768 as ParameterSet>::Dv as EncodingSize>::EncodedPolynomialSize>>::Output
Size of the ciphertext (a.k.a. “encapsulated key”) produced by
Self::EncapsulationKey.Size of the shared key/secret returned by both encapsulation and decapsulation.
Source§fn generate_keypair_from_rng<R>(
rng: &mut R,
) -> (Self::DecapsulationKey, Self::EncapsulationKey)where
R: CryptoRng,
fn generate_keypair_from_rng<R>(
rng: &mut R,
) -> (Self::DecapsulationKey, Self::EncapsulationKey)where
R: CryptoRng,
Generate a random KEM keypair using the provided random number generator.
Source§fn generate_keypair() -> (Self::DecapsulationKey, Self::EncapsulationKey)
fn generate_keypair() -> (Self::DecapsulationKey, Self::EncapsulationKey)
Generate a random KEM keypair using the system’s secure RNG.
Source§impl Ord for MlKem768
impl Ord for MlKem768
Source§impl ParameterSet for MlKem768
impl ParameterSet for MlKem768
Source§type Eta1 = UInt<UInt<UTerm, B1>, B0>
type Eta1 = UInt<UInt<UTerm, B1>, B0>
The bit width of the centered binary distribution used when sampling random polynomials in
key generation and encryption.
Source§type Eta2 = UInt<UInt<UTerm, B1>, B0>
type Eta2 = UInt<UInt<UTerm, B1>, B0>
The bit width of the centered binary distribution used when sampling error vectors during
encryption.
Source§impl PartialOrd for MlKem768
impl PartialOrd for MlKem768
impl Copy for MlKem768
impl Eq for MlKem768
impl StructuralPartialEq for MlKem768
Auto Trait Implementations§
impl Freeze for MlKem768
impl RefUnwindSafe for MlKem768
impl Send for MlKem768
impl Sync for MlKem768
impl Unpin for MlKem768
impl UnsafeUnpin for MlKem768
impl UnwindSafe for MlKem768
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§impl<T> DynAssociatedAlgorithmIdentifier for Twhere
T: AssociatedAlgorithmIdentifier,
impl<T> DynAssociatedAlgorithmIdentifier for Twhere
T: AssociatedAlgorithmIdentifier,
Source§fn algorithm_identifier(&self) -> Result<AlgorithmIdentifier<Any>, Error>
fn algorithm_identifier(&self) -> Result<AlgorithmIdentifier<Any>, Error>
AlgorithmIdentifier for this structure. Read moreSource§impl<T> DynAssociatedOid for Twhere
T: AssociatedOid,
impl<T> DynAssociatedOid for Twhere
T: AssociatedOid,
Source§fn oid(&self) -> ObjectIdentifier
fn oid(&self) -> ObjectIdentifier
Get the OID associated with this value.
Source§impl<K> FromSeed for K
impl<K> FromSeed for K
Source§type SeedSize = <<K as Kem>::DecapsulationKey as KeySizeUser>::KeySize
type SeedSize = <<K as Kem>::DecapsulationKey as KeySizeUser>::KeySize
Size of the seed value in bytes.