pub struct AuthenticatorData {
pub rp_id_hash: [u8; 32],
pub flags: AuthenticatorFlags,
pub sign_count: u32,
pub attested_credential_data: Option<AttestedCredentialData>,
pub extensions: Option<HashMap<String, Value>>,
pub raw: Vec<u8>,
}Expand description
Fully parsed authenticator data.
Fields§
§rp_id_hash: [u8; 32]SHA-256 hash of the RP ID. Verified against SHA-256(rp_id) by the caller.
flags: AuthenticatorFlagsDecoded flags byte.
sign_count: u32Authenticator-maintained signature counter.
attested_credential_data: Option<AttestedCredentialData>Present only during registration (when the AT flag is set).
extensions: Option<HashMap<String, Value>>Extension data from the authenticator (§6.1 / §10.5), present when the ED flag is set.
Keys are extension identifiers (e.g. "credProps", "appid"); values are raw CBOR.
Unknown extensions are stored as-is — the library never rejects an unrecognised key.
raw: Vec<u8>The original raw bytes of this authenticator data structure.
Kept because the signed payload for authentication is
authData || SHA-256(clientDataJSON) — the exact bytes matter.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AuthenticatorData
impl RefUnwindSafe for AuthenticatorData
impl Send for AuthenticatorData
impl Sync for AuthenticatorData
impl Unpin for AuthenticatorData
impl UnsafeUnpin for AuthenticatorData
impl UnwindSafe for AuthenticatorData
Blanket Implementations§
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
Mutably borrows from an owned value. Read more