# Print output for @column tags ?> KeyProperties - Android SDK | Android Developers

Most visited

Recently visited

KeyProperties

public abstract class KeyProperties
extends Object

java.lang.Object
   ↳ android.security.keystore.KeyProperties


Properties of Android Keystore keys.

Summary

Constants

int AUTH_BIOMETRIC_STRONG

Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for Strong, as defined by the Android CDD.

int AUTH_DEVICE_CREDENTIAL

The non-biometric credential used to secure the device (i.e., PIN, pattern, or password)

String BLOCK_MODE_CBC

Cipher Block Chaining (CBC) block mode.

String BLOCK_MODE_CTR

Counter (CTR) block mode.

String BLOCK_MODE_ECB

Electronic Codebook (ECB) block mode.

String BLOCK_MODE_GCM

Galois/Counter Mode (GCM) block mode.

String DIGEST_MD5

MD5 digest.

String DIGEST_NONE

No digest: sign/authenticate the raw message.

String DIGEST_SHA1

SHA-1 digest.

String DIGEST_SHA224

SHA-2 224 (aka SHA-224) digest.

String DIGEST_SHA256

SHA-2 256 (aka SHA-256) digest.

String DIGEST_SHA384

SHA-2 384 (aka SHA-384) digest.

String DIGEST_SHA512

SHA-2 512 (aka SHA-512) digest.

String ENCRYPTION_PADDING_NONE

No encryption padding.

String ENCRYPTION_PADDING_PKCS7

PKCS#7 encryption padding scheme.

String ENCRYPTION_PADDING_RSA_OAEP

RSA Optimal Asymmetric Encryption Padding (OAEP) scheme.

String ENCRYPTION_PADDING_RSA_PKCS1

RSA PKCS#1 v1.5 padding scheme for encryption.

String KEY_ALGORITHM_3DES

This constant is deprecated. Included for interoperability with legacy systems. Prefer KeyProperties#KEY_ALGORITHM_AES for new development.

String KEY_ALGORITHM_AES

Advanced Encryption Standard (AES) key.

String KEY_ALGORITHM_EC

Elliptic Curve (EC) Cryptography key.

String KEY_ALGORITHM_HMAC_SHA1

Keyed-Hash Message Authentication Code (HMAC) key using SHA-1 as the hash.

String KEY_ALGORITHM_HMAC_SHA224

Keyed-Hash Message Authentication Code (HMAC) key using SHA-224 as the hash.

String KEY_ALGORITHM_HMAC_SHA256

Keyed-Hash Message Authentication Code (HMAC) key using SHA-256 as the hash.

String KEY_ALGORITHM_HMAC_SHA384

Keyed-Hash Message Authentication Code (HMAC) key using SHA-384 as the hash.

String KEY_ALGORITHM_HMAC_SHA512

Keyed-Hash Message Authentication Code (HMAC) key using SHA-512 as the hash.

String KEY_ALGORITHM_RSA

Rivest Shamir Adleman (RSA) key.

int ORIGIN_GENERATED

Key was generated inside AndroidKeyStore.

int ORIGIN_IMPORTED

Key was imported into AndroidKeyStore.

int ORIGIN_SECURELY_IMPORTED

Key was imported into the AndroidKeyStore in an encrypted wrapper.

int ORIGIN_UNKNOWN

Origin of the key is unknown.

int PURPOSE_DECRYPT

Purpose of key: decryption.

int PURPOSE_ENCRYPT

Purpose of key: encryption.

int PURPOSE_SIGN

Purpose of key: signing or generating a Message Authentication Code (MAC).

int PURPOSE_VERIFY

Purpose of key: signature or Message Authentication Code (MAC) verification.

int PURPOSE_WRAP_KEY

Purpose of key: wrapping and unwrapping wrapped keys for secure import.

String SIGNATURE_PADDING_RSA_PKCS1

RSA PKCS#1 v1.5 padding for signatures.

String SIGNATURE_PADDING_RSA_PSS

RSA PKCS#1 v2.1 Probabilistic Signature Scheme (PSS) padding.

Inherited methods

Constants

AUTH_BIOMETRIC_STRONG

public static final int AUTH_BIOMETRIC_STRONG

Any biometric (e.g. fingerprint, iris, or face) on the device that meets or exceeds the requirements for Strong, as defined by the Android CDD.

Constant Value: 2 (0x00000002)

AUTH_DEVICE_CREDENTIAL

public static final int AUTH_DEVICE_CREDENTIAL

The non-biometric credential used to secure the device (i.e., PIN, pattern, or password)

Constant Value: 1 (0x00000001)

BLOCK_MODE_CBC

public static final String BLOCK_MODE_CBC

Cipher Block Chaining (CBC) block mode.

Constant Value: "CBC"

BLOCK_MODE_CTR

public static final String BLOCK_MODE_CTR

Counter (CTR) block mode.

Constant Value: "CTR"

BLOCK_MODE_ECB

public static final String BLOCK_MODE_ECB

Electronic Codebook (ECB) block mode.

Constant Value: "ECB"

BLOCK_MODE_GCM

public static final String BLOCK_MODE_GCM

Galois/Counter Mode (GCM) block mode.

Constant Value: "GCM"

DIGEST_MD5

public static final String DIGEST_MD5

MD5 digest.

Constant Value: "MD5"

DIGEST_NONE

public static final String DIGEST_NONE

No digest: sign/authenticate the raw message.

Constant Value: "NONE"

DIGEST_SHA1

public static final String DIGEST_SHA1

SHA-1 digest.

Constant Value: "SHA-1"

DIGEST_SHA224

public static final String DIGEST_SHA224

SHA-2 224 (aka SHA-224) digest.

Constant Value: "SHA-224"

DIGEST_SHA256

public static final String DIGEST_SHA256

SHA-2 256 (aka SHA-256) digest.

Constant Value: "SHA-256"

DIGEST_SHA384

public static final String DIGEST_SHA384

SHA-2 384 (aka SHA-384) digest.

Constant Value: "SHA-384"

DIGEST_SHA512

public static final String DIGEST_SHA512

SHA-2 512 (aka SHA-512) digest.

Constant Value: "SHA-512"

ENCRYPTION_PADDING_NONE

public static final String ENCRYPTION_PADDING_NONE

No encryption padding.

Constant Value: "NoPadding"

ENCRYPTION_PADDING_PKCS7

public static final String ENCRYPTION_PADDING_PKCS7

PKCS#7 encryption padding scheme.

Constant Value: "PKCS7Padding"

ENCRYPTION_PADDING_RSA_OAEP

public static final String ENCRYPTION_PADDING_RSA_OAEP

RSA Optimal Asymmetric Encryption Padding (OAEP) scheme.

Constant Value: "OAEPPadding"

ENCRYPTION_PADDING_RSA_PKCS1

public static final String ENCRYPTION_PADDING_RSA_PKCS1

RSA PKCS#1 v1.5 padding scheme for encryption.

Constant Value: "PKCS1Padding"

KEY_ALGORITHM_3DES

public static final String KEY_ALGORITHM_3DES

This constant is deprecated.
Included for interoperability with legacy systems. Prefer KeyProperties#KEY_ALGORITHM_AES for new development.

Triple Data Encryption Algorithm (3DES) key.

Constant Value: "DESede"

KEY_ALGORITHM_AES

public static final String KEY_ALGORITHM_AES

Advanced Encryption Standard (AES) key.

Constant Value: "AES"

KEY_ALGORITHM_EC

public static final String KEY_ALGORITHM_EC

Elliptic Curve (EC) Cryptography key.

Constant Value: "EC"

KEY_ALGORITHM_HMAC_SHA1

public static final String KEY_ALGORITHM_HMAC_SHA1

Keyed-Hash Message Authentication Code (HMAC) key using SHA-1 as the hash.

Constant Value: "HmacSHA1"

KEY_ALGORITHM_HMAC_SHA224

public static final String KEY_ALGORITHM_HMAC_SHA224

Keyed-Hash Message Authentication Code (HMAC) key using SHA-224 as the hash.

Constant Value: "HmacSHA224"

KEY_ALGORITHM_HMAC_SHA256

public static final String KEY_ALGORITHM_HMAC_SHA256

Keyed-Hash Message Authentication Code (HMAC) key using SHA-256 as the hash.

Constant Value: "HmacSHA256"

KEY_ALGORITHM_HMAC_SHA384

public static final String KEY_ALGORITHM_HMAC_SHA384

Keyed-Hash Message Authentication Code (HMAC) key using SHA-384 as the hash.

Constant Value: "HmacSHA384"

KEY_ALGORITHM_HMAC_SHA512

public static final String KEY_ALGORITHM_HMAC_SHA512

Keyed-Hash Message Authentication Code (HMAC) key using SHA-512 as the hash.

Constant Value: "HmacSHA512"

KEY_ALGORITHM_RSA

public static final String KEY_ALGORITHM_RSA

Rivest Shamir Adleman (RSA) key.

Constant Value: "RSA"

ORIGIN_GENERATED

public static final int ORIGIN_GENERATED

Key was generated inside AndroidKeyStore.

Constant Value: 1 (0x00000001)

ORIGIN_IMPORTED

public static final int ORIGIN_IMPORTED

Key was imported into AndroidKeyStore.

Constant Value: 2 (0x00000002)

ORIGIN_SECURELY_IMPORTED

public static final int ORIGIN_SECURELY_IMPORTED

Key was imported into the AndroidKeyStore in an encrypted wrapper. Unlike imported keys, securely imported keys can be imported without appearing as plaintext in the device's host memory.

Constant Value: 8 (0x00000008)

ORIGIN_UNKNOWN

public static final int ORIGIN_UNKNOWN

Origin of the key is unknown. This can occur only for keys backed by an old TEE-backed implementation which does not record origin information.

Constant Value: 4 (0x00000004)

PURPOSE_DECRYPT

public static final int PURPOSE_DECRYPT

Purpose of key: decryption.

Constant Value: 2 (0x00000002)

PURPOSE_ENCRYPT

public static final int PURPOSE_ENCRYPT

Purpose of key: encryption.

Constant Value: 1 (0x00000001)

PURPOSE_SIGN

public static final int PURPOSE_SIGN

Purpose of key: signing or generating a Message Authentication Code (MAC).

Constant Value: 4 (0x00000004)

PURPOSE_VERIFY

public static final int PURPOSE_VERIFY

Purpose of key: signature or Message Authentication Code (MAC) verification.

Constant Value: 8 (0x00000008)

PURPOSE_WRAP_KEY

public static final int PURPOSE_WRAP_KEY

Purpose of key: wrapping and unwrapping wrapped keys for secure import.

Constant Value: 32 (0x00000020)

SIGNATURE_PADDING_RSA_PKCS1

public static final String SIGNATURE_PADDING_RSA_PKCS1

RSA PKCS#1 v1.5 padding for signatures.

Constant Value: "PKCS1"

SIGNATURE_PADDING_RSA_PSS

public static final String SIGNATURE_PADDING_RSA_PSS

RSA PKCS#1 v2.1 Probabilistic Signature Scheme (PSS) padding.

Constant Value: "PSS"