pub enum SecurityLevel {
Cat3,
Cat5,
}Expand description
The bundled NIST security level for a namespace’s posture (#324 Q3).
Cat3 and Cat5 are the v0.1 menu; security_level is a forced explicit
choice at namespace creation (no default). The level selects the ML-DSA
parameter set for checkpoint signatures and, under the bundle, the
CommitmentHash strength.
Variants§
Cat3
NIST Category 3 (ML-DSA-65; ~AES-192). Bundles CommitmentHash::Sha3_256.
Cat5
NIST Category 5 (ML-DSA-87; ~AES-256). Bundles CommitmentHash::Sha3_512.
Implementations§
Source§impl SecurityLevel
impl SecurityLevel
Sourcepub fn signature_level(self) -> SignatureLevel
pub fn signature_level(self) -> SignatureLevel
The metamorphic-crypto SignatureLevel this level maps to for
declared == observed checkpoint-posture enforcement.
Sourcepub fn derived_commitment_hash(self) -> CommitmentHash
pub fn derived_commitment_hash(self) -> CommitmentHash
The CommitmentHash derived from this level under the v0.1 bundle.
Trait Implementations§
Source§impl Clone for SecurityLevel
impl Clone for SecurityLevel
Source§fn clone(&self) -> SecurityLevel
fn clone(&self) -> SecurityLevel
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for SecurityLevel
Source§impl Debug for SecurityLevel
impl Debug for SecurityLevel
impl Eq for SecurityLevel
Source§impl Hash for SecurityLevel
impl Hash for SecurityLevel
Source§impl PartialEq for SecurityLevel
impl PartialEq for SecurityLevel
Source§fn eq(&self, other: &SecurityLevel) -> bool
fn eq(&self, other: &SecurityLevel) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SecurityLevel
Auto Trait Implementations§
impl Freeze for SecurityLevel
impl RefUnwindSafe for SecurityLevel
impl Send for SecurityLevel
impl Sync for SecurityLevel
impl Unpin for SecurityLevel
impl UnsafeUnpin for SecurityLevel
impl UnwindSafe for SecurityLevel
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