pub trait LmsOtsMode: Typecode {
type Hasher: Digest;
type NLen: ArrayLength<u8>;
type PLen: ArrayLength<Output<Self::Hasher>> + ArrayLength<u8>;
const N: usize;
const W: usize;
const U: usize;
const V: usize;
const P: usize;
const LS: usize;
const SIG_LEN: usize;
// Provided method
fn expand(message: &Output<Self::Hasher>) -> GenericArray<u8, Self::PLen> { ... }
}Expand description
The basic trait that must be implemented by any OTS mode.
Required Associated Constants§
Required Associated Types§
Sourcetype NLen: ArrayLength<u8>
type NLen: ArrayLength<u8>
The length of the hash function output as a type
Sourcetype PLen: ArrayLength<Output<Self::Hasher>> + ArrayLength<u8>
type PLen: ArrayLength<Output<Self::Hasher>> + ArrayLength<u8>
The value of P as a type
Provided Methods§
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.