PlatformManagedKeyProvider

Platform-managed key provider used by mobile wallet persistence.

Implementations must expose capability and restoration state through the structured result types below. Known key-use authorization failures must be surfaced as KeyUseAuthorizationException; callers must not need to understand provider-specific exceptions.

Inheritors

AndroidPlatformKeyProvider
IosPlatformKeyProvider

Functions

Link copied to clipboard
abstract suspend fun deleteManagedKey(stored: StoredKey.Managed)

Deletes a platform key using its descriptor without restoring the alias first.

Link copied to clipboard
open suspend fun deleteUncommittedKey(request: WalletKeyCreationRequest, imported: Boolean)

Cleans up an alias reserved by an interrupted, uncommitted identity operation.

Link copied to clipboard
abstract suspend fun generateManagedKey(request: WalletKeyCreationRequest): ManagedKey

Generates a managed key in the platform key store.

Link copied to clipboard
open suspend fun importManagedKey(request: WalletKeyCreationRequest, material: EncodedKey.Jwk): ManagedKey

Imports private material into native storage. Implementations must verify the public key.

Link copied to clipboard
open suspend fun keyFacts(stored: StoredKey.Managed): PlatformKeyFacts

Inspects actual key origin and protection without claiming certification.

Link copied to clipboard
abstract fun keyUseAuthorizationPolicy(stored: StoredKey.Managed): KeyUseAuthorizationPolicy

Reads the immutable wallet authorization policy encoded in a managed-key descriptor.

Link copied to clipboard
abstract suspend fun preflight(requirements: WalletKeyRequirements): KeyUseAuthorizationSupport

Checks whether the requested requirements are supported without fallback.

Link copied to clipboard
abstract suspend fun restoreManagedKey(stored: StoredKey.Managed): PlatformManagedKeyRestoration

Restores a platform key from its persisted descriptor.

Link copied to clipboard

Whether this native backend supports importing a private key with these requirements.