Added in API level 18
Deprecated in API level 23

KeyStoreParameter


public final class KeyStoreParameter
extends Object implements KeyStore.ProtectionParameter

java.lang.Object
   ↳ android.security.KeyStoreParameter


This class was deprecated in API level 23.
Use KeyProtection instead.

This provides the optional parameters that can be specified for KeyStore entries that work with Android KeyStore facility. The Android KeyStore facility is accessed through a KeyStore API using the AndroidKeyStore provider. The context passed in may be used to pop up some UI to ask the user to unlock or initialize the Android KeyStore facility.

Any entries placed in the KeyStore may be retrieved later. Note that there is only one logical instance of the KeyStore per application UID so apps using the sharedUid facility will also share a KeyStore.

Keys may be generated using the KeyPairGenerator facility with a KeyPairGeneratorSpec to specify the entry's alias. A self-signed X.509 certificate will be attached to generated entries, but that may be replaced at a later time by a certificate signed by a real Certificate Authority.

Summary

Nested classes

class KeyStoreParameter.Builder

This class was deprecated in API level 23. Use KeyProtection.Builder instead. 

Public methods

boolean isEncryptionRequired()

This method is deprecated. Data at rest encryption is enabled by default. If extra binding to the lockscreen credential is desired, use .Builder#setUserAuthenticationRequired(boolean). This flag will be ignored from Android S.

Inherited methods

Public methods

isEncryptionRequired

Added in API level 18
public boolean isEncryptionRequired ()

This method is deprecated.
Data at rest encryption is enabled by default. If extra binding to the lockscreen credential is desired, use .Builder#setUserAuthenticationRequired(boolean). This flag will be ignored from Android S.

Returns true if the KeyStore entry must be encrypted at rest. This will protect the entry with the secure lock screen credential (e.g., password, PIN, or pattern).

Note that encrypting the key at rest requires that the secure lock screen (e.g., password, PIN, pattern) is set up, otherwise key generation will fail. Moreover, this key will be deleted when the secure lock screen is disabled or reset (e.g., by the user or a Device Administrator). Finally, this key cannot be used until the user unlocks the secure lock screen after boot.

Returns
boolean