pub enum Authentication {
Authenticated,
LocallyAddressed,
Unauthenticated,
}Expand description
Why an observation can be attributed to a stable peer identity.
This is an explicit proof token at the pure transition boundary. Inbound observations require a cryptographically verified peer. An outbound failure may instead be attributed to the stable DID selected by the local caller; it makes no remote identity claim. Pre-authentication ingress remains unattributable and cannot change the ledger.
Variants§
Authenticated
The event belongs to a cryptographically authenticated stable peer identity.
LocallyAddressed
Local code explicitly addressed the event to this stable peer identity.
This variant is valid only for locally originated observations, such as
MeasurementEvent::FailedToSend when no connection exists. It must
never authenticate bytes or claims received from the network. A ledger
may use it to update reliability for an already-retained peer, but it
must not create a peer record or refresh authenticated-observation time.
Unauthenticated
The transport has not authenticated the stable peer identity.
Implementations§
Source§impl Authentication
impl Authentication
Sourcepub const fn permits(self, event: MeasurementEvent) -> bool
pub const fn permits(self, event: MeasurementEvent) -> bool
Return whether this proof source permits attribution of event.
Sourcepub const fn establishes_peer(self) -> bool
pub const fn establishes_peer(self) -> bool
Return whether this proof can establish a new retained peer record.
Sourcepub const fn refreshes_peer_observation(self) -> bool
pub const fn refreshes_peer_observation(self) -> bool
Return whether this proof refreshes authenticated peer-observation time.
Trait Implementations§
Source§impl Clone for Authentication
impl Clone for Authentication
Source§fn clone(&self) -> Authentication
fn clone(&self) -> Authentication
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for Authentication
Source§impl Debug for Authentication
impl Debug for Authentication
impl Eq for Authentication
Source§impl PartialEq for Authentication
impl PartialEq for Authentication
impl StructuralPartialEq for Authentication
Auto Trait Implementations§
impl Freeze for Authentication
impl RefUnwindSafe for Authentication
impl Send for Authentication
impl Sync for Authentication
impl Unpin for Authentication
impl UnsafeUnpin for Authentication
impl UnwindSafe for Authentication
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
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
impl<T> ErasedDestructor for Twhere
T: 'static,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.