Skip to content

Most visited

Recently visited

added in API level 18
Deprecated since API level 23


public final class KeyStoreParameter
extends Object implements KeyStore.ProtectionParameter


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.


Nested classes

class KeyStoreParameter.Builder

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

Public methods

boolean isEncryptionRequired()

Returns true if the KeyStore entry must be encrypted at rest.

Inherited methods

Public methods


added in API level 18
boolean isEncryptionRequired ()

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.


See also:

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields


Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience. (April 2018 — Developer Survey)