pub enum KeyAuthorization {
CurrentlyAuthorized,
HistoricallyAuthorized,
HistoricallyAuthorizedPreCompromise,
}Expand description
How the producer key that verified the body relates to the producer’s current DID document.
Variants§
CurrentlyAuthorized
The signing key is currently listed in assertionMethod.
HistoricallyAuthorized
The signing key was rotated out of assertionMethod but is
retained in verificationMethod, and a verified registry
receipt attests it was the authorized key at publish time
(RFC-ACDP-0010). Weigh accordingly: valid history, not a
current endorsement.
HistoricallyAuthorizedPreCompromise
The signing key is revoked (a verified RFC-ACDP-0014
revocation names its fingerprint), but a verified registry
receipt attests the context was published strictly before the
compromise boundary compromised_since — it was signed while
the key was still the producer’s, and verified under the
RFC-ACDP-0010 §10 historical rule (RFC-ACDP-0014 §7 step 2).
Deliberately distinguishable from BOTH
Self::CurrentlyAuthorized and the no-revocation
Self::HistoricallyAuthorized: the revocation and its
boundary MUST be visible in the verdict. Contexts by the same
key at/after the boundary — or with no verifiable publish time
— never reach a status at all: they fail closed with
key_not_authorized (§7 steps 3–4).
Trait Implementations§
Source§impl Clone for KeyAuthorization
impl Clone for KeyAuthorization
Source§fn clone(&self) -> KeyAuthorization
fn clone(&self) -> KeyAuthorization
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 KeyAuthorization
Source§impl Debug for KeyAuthorization
impl Debug for KeyAuthorization
impl Eq for KeyAuthorization
Source§impl PartialEq for KeyAuthorization
impl PartialEq for KeyAuthorization
Source§fn eq(&self, other: &KeyAuthorization) -> bool
fn eq(&self, other: &KeyAuthorization) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for KeyAuthorization
Auto Trait Implementations§
impl Freeze for KeyAuthorization
impl RefUnwindSafe for KeyAuthorization
impl Send for KeyAuthorization
impl Sync for KeyAuthorization
impl Unpin for KeyAuthorization
impl UnsafeUnpin for KeyAuthorization
impl UnwindSafe for KeyAuthorization
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
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.