Share via


PackageManager.FeatureHardwareKeystore Field

Definition

Feature for #getSystemAvailableFeatures and #hasSystemFeature(String, int): If this feature is supported, the device implements the Android Keystore backed by an isolated execution environment.

[Android.Runtime.Register("FEATURE_HARDWARE_KEYSTORE", ApiSince=31)]
public const string FeatureHardwareKeystore;
[<Android.Runtime.Register("FEATURE_HARDWARE_KEYSTORE", ApiSince=31)>]
val mutable FeatureHardwareKeystore : string

Field Value

Attributes

Remarks

Feature for #getSystemAvailableFeatures and #hasSystemFeature(String, int): If this feature is supported, the device implements the Android Keystore backed by an isolated execution environment. The version indicates which features are implemented in the isolated execution environment: <ul> <li>100: Hardware support for ECDH (see javax.crypto.KeyAgreement) and support for app-generated attestation keys (see android.security.keystore.KeyGenParameterSpec.Builder#setAttestKeyAlias(String)). <li>41: Hardware enforcement of device-unlocked keys (see android.security.keystore.KeyGenParameterSpec.Builder#setUnlockedDeviceRequired(boolean)). <li>40: Support for wrapped key import (see android.security.keystore.WrappedKeyEntry), optional support for ID attestation (see android.security.keystore.KeyGenParameterSpec.Builder#setDevicePropertiesAttestationIncluded(boolean)), attestation (see android.security.keystore.KeyGenParameterSpec.Builder#setAttestationChallenge(byte[])), AES, HMAC, ECDSA and RSA support where the secret or private key never leaves secure hardware, and support for requiring user authentication before a key can be used. </ul> This feature version is guaranteed to be set for all devices launching with Android 12 and may be set on devices launching with an earlier version. If the feature version is set, it will at least have the value 40. If it's not set the device may have a version of hardware-backed keystore but it may not support all features listed above.

Java documentation for android.content.pm.PackageManager.FEATURE_HARDWARE_KEYSTORE.

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to