Android.Security.Identity Namespace

Provides types to store identity credentials and retrieve their data for presentation to a reader.

Classes

Name Description
AccessControlProfile

A class used to specify access controls.

AccessControlProfile.Builder

A builder for AccessControlProfile.

AccessControlProfileId

A class used to wrap an access control profile identifiers.

AlreadyPersonalizedException

Thrown if trying to create a credential which already exists.

AuthenticationKeyMetadata

Data about authentication keys.

CipherSuiteNotSupportedException

Thrown if trying to use a cipher suite which isn't supported.

CredentialDataRequest

An object representing a request for credential data.

CredentialDataRequest.Builder

A builder for CredentialDataRequest.

CredentialDataResult

An object that contains the result of retrieving data from a credential.

DocTypeNotSupportedException

Thrown if trying to create a credential with an unsupported document type.

EphemeralPublicKeyNotFoundException

Thrown if the ephemeral public key was not found in the session transcript passed to IdentityCredential#getEntries(byte[], Map, byte[], byte[]).

IdentityCredential

Class used to read data from a previously provisioned credential.

IdentityCredentialException

Base class for all Identity Credential exceptions.

IdentityCredentialStore

An interface to a secure store for user identity documents.

InvalidReaderSignatureException

Thrown if the reader signature is invalid, or it doesn't contain a certificate chain, or if the signature failed to validate.

InvalidRequestMessageException

Thrown if message with the request doesn't satisfy the requirements documented in IdentityCredential#getEntries(byte[], Map, byte[], byte[]).

MessageDecryptionException

Thrown when failing to decrypt a message from the reader device.

NoAuthenticationKeyAvailableException

Thrown if no dynamic authentication keys are available.

PersonalizationData

An object that holds personalization data.

PersonalizationData.Builder

A builder for PersonalizationData.

PresentationSession

Class for presenting multiple documents to a remote verifier.

ResultData

An object that contains the result of retrieving data from a credential.

SessionTranscriptMismatchException

Thrown when trying use multiple different session transcripts in the same presentation session.

UnknownAuthenticationKeyException

Thrown if trying to certify an unknown dynamic authentication key.

WritableIdentityCredential

Class used to personalize a new identity credential.

Interfaces

Name Description
CredentialDataResult.IEntries

A class for representing data elements returned.

Enums

Name Description
CredentialEntriesStatus

Specifies whether a credential data entry was retrieved or why it was not retrieved.

CredentialStoreCipherSuite

Specifies the cipher suite used for communication between an identity credential and a reader.

ResultDataStatus

Specifies whether a data entry requested from an identity credential was retrieved or why it was not retrieved.

Remarks

Use IdentityCredentialStore to access the credential store. Credentials contain data entries grouped by namespace and access control profiles that specify the conditions for access.

The credential-specific application implements the presentation and verification protocols. Hardware-backed identity credential storage is not available on all devices.

The Android reference deprecates IdentityCredentialStore in API level 37.2 and recommends KeyStore with the Android hardware-backed keystore instead.

See the Android identity package reference and the Android credential store reference.