pub trait ParameterSet:
Default
+ Clone
+ Debug
+ PartialEq {
type K: ArraySize;
type Eta1: CbdSamplingSize;
type Eta2: CbdSamplingSize;
type Du: VectorEncodingSize<Self::K>;
type Dv: EncodingSize;
}Expand description
A ParameterSet captures the parameters that describe a particular instance of ML-KEM. There
are three variants, corresponding to three different security levels.
Required Associated Types§
Sourcetype Eta1: CbdSamplingSize
type Eta1: CbdSamplingSize
The bit width of the centered binary distribution used when sampling random polynomials in key generation and encryption.
Sourcetype Eta2: CbdSamplingSize
type Eta2: CbdSamplingSize
The bit width of the centered binary distribution used when sampling error vectors during encryption.
Sourcetype Du: VectorEncodingSize<Self::K>
type Du: VectorEncodingSize<Self::K>
The bit width of encoded integers in the u vector in a ciphertext
Sourcetype Dv: EncodingSize
type Dv: EncodingSize
The bit width of encoded integers in the v polynomial in a ciphertext
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.