Package-level declarations

Types

Link copied to clipboard
open class ApplicationPinDeviceAuthenticator(val pinCollector: PinCollector = DefaultPinCollector()) : CryptoAware, DeviceAuthenticator, KeyStoreRepository

Device Authenticator which use Application PIN to secure device cryptography keys

Link copied to clipboard

Default Dialog fragment to request user for Application Pin

Link copied to clipboard

Settings for all the biometric authentication and device credential is configured

Link copied to clipboard
internal class BiometricBindingHandler(titleValue: String, subtitleValue: String, descriptionValue: String, fragmentActivity: FragmentActivity = InitProvider.getCurrentActivityAsFragmentActivity(), deviceBindAuthenticationType: DeviceBindingAuthenticationType, var biometricListener: BiometricPrompt.AuthenticationCallback? = null, var biometricAuth: BiometricAuth? = null) : BiometricHandler

Helper class for managing Biometric configuration.

Link copied to clipboard

Interface to display biometric and verify the device supported for biometric

Link copied to clipboard

Settings for all the biometric authentication is configured

Link copied to clipboard
internal interface CryptoAware

Interface to be implemented by objects that want to be aware of CryptoKey

Link copied to clipboard
Link copied to clipboard

Device Authenticator Interface

Link copied to clipboard
Link copied to clipboard
abstract class DeviceBindingErrorStatus(var message: String, val clientError: String, val errorCode: Int? = null) : DeviceBindingStatus
Link copied to clipboard

Exceptions for device binding

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
sealed class KeyFoundStatus

Key existence status in device.

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

Create public and private keypair

Link copied to clipboard
internal class LocalDeviceBindingRepository(context: Context, val sharedPreferences: SharedPreferences = EncryptedPreferences.getInstance(context, ORG_FORGEROCK_V_1_DEVICE_REPO)) : DeviceBindingRepository

Helper class to save and retrieve EncryptedMessage

Link copied to clipboard
data class MultipleKeysFound(val keys: List<UserKey>) : KeyFoundStatus
Link copied to clipboard
Link copied to clipboard

Settings for all the none authentication is configured

Link copied to clipboard
interface PinCollector

Pin Collector interface to collect application pin

Link copied to clipboard
class Prompt(val title: String, val subtitle: String, var description: String) : Parcelable
Link copied to clipboard
internal class RSASASignatureSigner(val signature: Signature) : RSASSAProvider, JWSSigner

A JWSSigner which takes a signature

Link copied to clipboard
data class SingleKeyFound(val key: UserKey) : KeyFoundStatus
Link copied to clipboard
data class Success(val privateKey: PrivateKey, val signature: Signature? = null) : DeviceBindingStatus

Represent the success status after DeviceAuthenticator.authenticate

Link copied to clipboard
internal class UserDeviceKeyService(val context: Context, val remoteDeviceBindingRepository: DeviceBindingRepository = RemoteDeviceBindingRepository(), val localDeviceBindingRepository: DeviceBindingRepository = LocalDeviceBindingRepository( context)) : UserKeyService
Link copied to clipboard
data class UserKey(val id: String, val userId: String, val userName: String, val kid: String, val authType: DeviceBindingAuthenticationType, val createdAt: Long = System.currentTimeMillis()) : Parcelable

UserKey DTO

Link copied to clipboard
data class UserKeys(val items: List<UserKey>?) : Parcelable
Link copied to clipboard
interface UserKeySelector

UserKey selector interface to select UserKey

Link copied to clipboard
interface UserKeyService

Properties

Link copied to clipboard
private const val ABORT: String
Link copied to clipboard
private const val ANDROID_VERSION: String
Link copied to clipboard
private const val ARG_PROMPT: String
Link copied to clipboard
private const val ARG_USER_LIST: String

internal Fragment to display the list of users keys

Link copied to clipboard
const val authTypeKey: String
Link copied to clipboard
private const val CHALLENGE: String
Link copied to clipboard
private const val CLIENT_NOT_REGISTERED: String
Link copied to clipboard
const val createdAtKey: String
Link copied to clipboard
const val idKey: String
Link copied to clipboard
const val kidKey: String
Link copied to clipboard
private const val PLATFORM: String
Link copied to clipboard
private val TAG: String
private val TAG: String
private val TAG: String
Link copied to clipboard
private const val TIMEOUT: String

State of the Device Binding errors

Link copied to clipboard
private const val UNSUPPORTED: String
Link copied to clipboard
const val userIdKey: String
Link copied to clipboard
const val userNameKey: String

Functions

Link copied to clipboard
internal fun RSASSAProvider.signature(jwsAlgorithm: JWSAlgorithm, privateKey: PrivateKey): Signature

Create a Signature with the provided JWSAlgorithm and PrivateKey