Class Ctap2Session.InfoData

java.lang.Object
com.yubico.yubikit.fido.ctap.Ctap2Session.InfoData
Enclosing class:
Ctap2Session

public static class Ctap2Session.InfoData extends Object
Data object containing the information readable form a YubiKey using the getInfo command.
See Also:
  • Method Details

    • getVersions

      public List<String> getVersions()
      List of supported versions.

      Supported versions are: FIDO_2_0, FIDO_2_1_PRE, and FIDO_2_1 for CTAP2 / FIDO2 / Web Authentication authenticators and U2F_V2 for CTAP1/U2F authenticators.

      Returns:
      list of supported versions
    • getExtensions

      public List<String> getExtensions()
      List of supported extensions.
      Returns:
      list of supported extensions
    • getAaguid

      public byte[] getAaguid()
      Get the claimed AAGUID of the YubiKey.
      Returns:
      the AAGUID of the YubiKey
    • getOptions

      public Map<String,?> getOptions()
      Get the options map, which defines which options are supported, and their configuration.
      Returns:
      a Map of supported options
    • getMaxMsgSize

      public int getMaxMsgSize()
      Get maximum message size supported by the authenticator.
      Returns:
      maximum message size
    • getPinUvAuthProtocols

      public List<Integer> getPinUvAuthProtocols()
      Get a list of the supported PIN/UV Auth protocol versions in order of decreasing authenticator preference.
      Returns:
      a list of supported protocol versions
      See Also:
    • getTransports

      public List<String> getTransports()
      Get a list of supported transports. Values are taken from the AuthenticatorTransport enum in WebAuthn.
      Returns:
      list of supported transports
      See Also:
    • getAlgorithms

      public List<PublicKeyCredentialParameters> getAlgorithms()
      Get a list of supported algorithms for credential generation, as specified in WebAuthn.

      Empty return value indicates that the authenticator does not provide this information.

      Returns:
      list of supported algorithms
      See Also:
    • getMaxSerializedLargeBlobArray

      public int getMaxSerializedLargeBlobArray()
      Get the maximum size, in bytes, of the serialized large-blob array that this authenticator can store.
      Returns:
      maximum size of serialized large-blob array the authenticator can store if authenticatorLargeBlobs command is supported by the authenticator, 0 otherwise
      See Also:
    • getForcePinChange

      public boolean getForcePinChange()
      Get the requirement whether the authenticator requires PIN Change before use.
      Returns:
      force PIN Change requirement
      See Also:
    • getMinPinLength

      public int getMinPinLength()
      The current minimum PIN length, in Unicode code points, the authenticator enforces for ClientPIN.

      Only valid if options contain clientPin meaning that the authenticator supports authenticatorClientPin command.

      Returns:
      current minimum PIN length
      See Also:
    • getMaxCredBlobLength

      public int getMaxCredBlobLength()
      Get maximum credBlob length in bytes supported by the authenticator.
      Returns:
      maximum credBlob length if the authenticator supports credBlob extension, 0 otherwise
      See Also:
    • getMaxRPIDsForSetMinPinLength

      public int getMaxRPIDsForSetMinPinLength()
      Get the maximum number of RP IDs that authenticator can set via setMinPINLength subcommand.

      Only valid if setMinPINLength option ID is present.

      Returns:
      the maximum number of RP IDs
      See Also:
    • getPreferredPlatformUvAttempts

      @Nullable public Integer getPreferredPlatformUvAttempts()
      The preferred number of invocations of the getPinUvAuthTokenUsingUvWithPermissions subCommand the platform may attempt before falling back to the getPinUvAuthTokenUsingPinWithPermissions subCommand or displaying an error.
      Returns:
      the preferred number of getPinUvAuthTokenUsingUvWithPermissions invocations
      See Also:
    • getUvModality

      public int getUvModality()
      The user verification modality supported by the authenticator via authenticatorClientPIN's getPinUvAuthTokenUsingUvWithPermissions subcommand.
      Returns:
      the user verification modality
      See Also:
    • getCertifications

      public final Map<String,Object> getCertifications()
      Provides a hint to the platform with additional information about certifications that the authenticator has received.
      Returns:
      certifications in the form key-value pairs with string IDs and integer values
      See Also:
    • getRemainingDiscoverableCredentials

      @Nullable public Integer getRemainingDiscoverableCredentials()
      The estimated number of additional discoverable credentials that can be stored.
      Returns:
      the estimated number of credentials that can be stored
    • getVendorPrototypeConfigCommands

      @Nullable public List<Integer> getVendorPrototypeConfigCommands()
      List of authenticatorConfig vendorCommandId values supported.
      Returns:
      list of vendor command id's
      See Also:
    • toString

      public String toString()
      Overrides:
      toString in class Object