pub enum Authenticity {
Verified,
IntegrityOnly,
}Expand description
What is known about the config’s authenticity.
Three states, and the third is the point: an EMPTY auth.signature is not
a failed signature and not a passed one. A failure is not in this enum at
all — it is an Err out of verify, which the caller turns into an
absent config.
Variants§
Verified
An ed25519 signature over the domain-separated body digest verified against the enrolled root key.
IntegrityOnly
The body’s blake3 matches what is written beside it, and nothing else is claimed. Integrity, not authenticity: anyone who can write the plaintext ESP can rewrite the body and its digest together. This is the state every appliance built today is in.
Implementations§
Source§impl Authenticity
impl Authenticity
Sourcepub fn word(self) -> &'static str
pub fn word(self) -> &'static str
The words the console prints — the same words the installer’s console prints, so an admin comparing the two is not left wondering whether they mean the same thing.
Sourcepub fn is_verified(self) -> bool
pub fn is_verified(self) -> bool
Only Authenticity::Verified. An unsigned config is never presented
as verified.
Trait Implementations§
Source§impl Clone for Authenticity
impl Clone for Authenticity
impl Copy for Authenticity
Source§impl Debug for Authenticity
impl Debug for Authenticity
impl Eq for Authenticity
Source§impl PartialEq for Authenticity
impl PartialEq for Authenticity
impl StructuralPartialEq for Authenticity
Auto Trait Implementations§
impl Freeze for Authenticity
impl RefUnwindSafe for Authenticity
impl Send for Authenticity
impl Sync for Authenticity
impl Unpin for Authenticity
impl UnsafeUnpin for Authenticity
impl UnwindSafe for Authenticity
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request