java.lang.Object
com.webauthn4j.data.attestation.authenticator.AuthenticatorData<T>

public class AuthenticatorData<T extends ExtensionAuthenticatorOutput> extends Object
The authenticator data structure encodes contextual bindings made by the authenticator. These bindings are controlled by the authenticator itself, and derive their trust from the WebAuthn Relying Party's assessment of the security properties of the authenticator. In one extreme case, the authenticator may be embedded in the client, and its bindings may be no more trustworthy than the client data. At the other extreme, the authenticator may be a discrete entity with high-security hardware and software, connected to the client over a secure channel. In both cases, the Relying Party receives the authenticator data in the same format, and uses its knowledge of the authenticator to make trust decisions.
See Also:
  • Field Details

  • Constructor Details

    • AuthenticatorData

      public AuthenticatorData(@NotNull @org.jetbrains.annotations.NotNull byte[] rpIdHash, byte flags, long counter, @Nullable @Nullable AttestedCredentialData attestedCredentialData, @Nullable @Nullable AuthenticationExtensionsAuthenticatorOutputs<T> extensions)
    • AuthenticatorData

      public AuthenticatorData(@NotNull @org.jetbrains.annotations.NotNull byte[] rpIdHash, byte flags, long counter, @Nullable @Nullable AttestedCredentialData attestedCredentialData)
    • AuthenticatorData

      public AuthenticatorData(@NotNull @org.jetbrains.annotations.NotNull byte[] rpIdHash, byte flags, long counter, @Nullable @Nullable AuthenticationExtensionsAuthenticatorOutputs<T> extensions)
    • AuthenticatorData

      public AuthenticatorData(@NotNull @org.jetbrains.annotations.NotNull byte[] rpIdHash, byte flags, long counter)
  • Method Details

    • checkFlagUP

      public static boolean checkFlagUP(byte flags)
    • checkFlagUV

      public static boolean checkFlagUV(byte flags)
    • checkFlagBE

      public static boolean checkFlagBE(byte flags)
    • checkFlagBS

      public static boolean checkFlagBS(byte flags)
    • checkFlagAT

      public static boolean checkFlagAT(byte flags)
    • checkFlagED

      public static boolean checkFlagED(byte flags)
    • getRpIdHash

      @NotNull public @org.jetbrains.annotations.NotNull byte[] getRpIdHash()
    • getFlags

      public byte getFlags()
    • isFlagUP

      public boolean isFlagUP()
    • isFlagUV

      public boolean isFlagUV()
    • isFlagBE

      public boolean isFlagBE()
    • isFlagBS

      public boolean isFlagBS()
    • isFlagAT

      public boolean isFlagAT()
    • isFlagED

      public boolean isFlagED()
    • getSignCount

      public long getSignCount()
    • getAttestedCredentialData

      @Nullable public @Nullable AttestedCredentialData getAttestedCredentialData()
    • getExtensions

      @Nullable public @Nullable AuthenticationExtensionsAuthenticatorOutputs<T> getExtensions()
    • equals

      public boolean equals(@Nullable @Nullable Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object