pub trait KemParams: PkeParams {
type DecapsulationKeySize: ArraySize;
// Required methods
fn concat_dk(
dk: Array<u8, <Self as PkeParams>::NttVectorSize>,
ek: Array<u8, <Self as PkeParams>::EncryptionKeySize>,
h: B32,
z: B32,
) -> Array<u8, <Self as KemParams>::DecapsulationKeySize>;
fn split_dk(
enc: &Array<u8, <Self as KemParams>::DecapsulationKeySize>,
) -> (&Array<u8, <Self as PkeParams>::NttVectorSize>, &Array<u8, <Self as PkeParams>::EncryptionKeySize>, &B32, &B32);
}Expand description
Derived parameters relevant to ML-KEM
Required Associated Types§
Required Methods§
fn concat_dk( dk: Array<u8, <Self as PkeParams>::NttVectorSize>, ek: Array<u8, <Self as PkeParams>::EncryptionKeySize>, h: B32, z: B32, ) -> Array<u8, <Self as KemParams>::DecapsulationKeySize>
fn split_dk( enc: &Array<u8, <Self as KemParams>::DecapsulationKeySize>, ) -> (&Array<u8, <Self as PkeParams>::NttVectorSize>, &Array<u8, <Self as PkeParams>::EncryptionKeySize>, &B32, &B32)
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.