Package-level declarations

Types

Link copied to clipboard

A PIN-based device authenticator that generates and manages RSA key pairs protected by user PIN.

Link copied to clipboard

Configuration class for AppPinAuthenticator that defines PIN collection, storage, and security settings.

Link copied to clipboard
sealed class Attestation(val challenge: ByteArray? = null)

Sealed class hierarchy representing different types of cryptographic attestation for device authentication.

Link copied to clipboard

Abstract base class for biometric-based device authenticators.

Link copied to clipboard

Configuration class for biometric authenticators that defines UI prompts, key generation, and hardware preferences.

Link copied to clipboard

Biometric authenticator with device credential fallback support for enhanced user experience.

Link copied to clipboard

Pure biometric authenticator that requires biometric authentication without fallback options.

Link copied to clipboard

Headless Activity that manages biometric authentication prompts using AndroidX BiometricPrompt.

Link copied to clipboard

Interface for device authenticators that handle cryptographic operations for device binding. Implementations provide device-specific authentication mechanisms such as biometric authentication, PIN-based authentication, or hardware security modules.

Link copied to clipboard

Defines the types of authentication methods available for device binding. These authentication types determine how users prove their identity when accessing cryptographic keys stored on the device.

Link copied to clipboard
data class KeyPair(val publicKey: RSAPublicKey, val privateKey: PrivateKey, var keyAlias: String)

Represents a cryptographic key pair used for device binding operations.

Link copied to clipboard

A device authenticator implementation that requires no user authentication.

Link copied to clipboard
data class SigningParameters(val context: Context, val algorithm: String, val keyPair: KeyPair, val signature: Signature?, val kid: String, val userId: String, val challenge: String, val issueTime: Instant, val notBeforeTime: Instant, val expiration: Instant, val attestation: Attestation = Attestation.None)

Parameters required for signing a JWT with device binding authentication.

Link copied to clipboard
data class UserKeySigningParameters(val context: Context, val algorithm: String, val userKey: UserKey, val privateKey: PrivateKey, val signature: Signature?, val challenge: String, val issueTime: Instant, val notBeforeTime: Instant, val expiration: Instant, val customClaims: Map<String, Any> = emptyMap())

Parameters required for signing a JWT using a UserKey with custom claims support.

Functions

Link copied to clipboard

Performs biometric authentication using AndroidX BiometricPrompt with thread-safe operation handling.