pub enum NonceCheck {
Fresh,
Stale,
Invalid,
}Expand description
The result of checking a NONCE attribute against the issuer that (claims to have) minted it
(SPEC.md §14.4). Exhaustive: adding a variant is a breaking change.
Variants§
Fresh
The nonce’s HMAC tag matches its own bucket and source, and that bucket is the current one or the one before it (0-120s old, depending on issue-time-within-bucket).
Stale
The tag matches, but the bucket is older than “current or previous” — this issuer minted it, for this source, but too long ago.
Invalid
The tag does not match (wrong secret, wrong source, forged, or corrupt), OR the value does
not even base64url-decode to NONCE_LEN bytes. A forged nonce is always Invalid, never
Stale — the tag is checked BEFORE the bucket age (SPEC.md §14.4: “so a forged nonce is
never reported as merely stale”).
Trait Implementations§
Source§impl Clone for NonceCheck
impl Clone for NonceCheck
Source§fn clone(&self) -> NonceCheck
fn clone(&self) -> NonceCheck
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 NonceCheck
Source§impl Debug for NonceCheck
impl Debug for NonceCheck
impl Eq for NonceCheck
Source§impl PartialEq for NonceCheck
impl PartialEq for NonceCheck
impl StructuralPartialEq for NonceCheck
Auto Trait Implementations§
impl Freeze for NonceCheck
impl RefUnwindSafe for NonceCheck
impl Send for NonceCheck
impl Sync for NonceCheck
impl Unpin for NonceCheck
impl UnsafeUnpin for NonceCheck
impl UnwindSafe for NonceCheck
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