mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 22:04:26 +00:00
Merge "Add getKeyCharacteristics method to KeyMint" am: 8b25958b75
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1690690 Change-Id: Ica0fbedf8332f3af13ee78c9275e01c4108ee1e0
This commit is contained in:
@@ -48,5 +48,6 @@ interface IKeyMintDevice {
|
|||||||
void deviceLocked(in boolean passwordOnly, in @nullable android.hardware.security.secureclock.TimeStampToken timestampToken);
|
void deviceLocked(in boolean passwordOnly, in @nullable android.hardware.security.secureclock.TimeStampToken timestampToken);
|
||||||
void earlyBootEnded();
|
void earlyBootEnded();
|
||||||
byte[] convertStorageKeyToEphemeral(in byte[] storageKeyBlob);
|
byte[] convertStorageKeyToEphemeral(in byte[] storageKeyBlob);
|
||||||
|
android.hardware.security.keymint.KeyCharacteristics[] getKeyCharacteristics(in byte[] keyBlob, in byte[] appId, in byte[] appData);
|
||||||
const int AUTH_TOKEN_MAC_LENGTH = 32;
|
const int AUTH_TOKEN_MAC_LENGTH = 32;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import android.hardware.security.keymint.AttestationKey;
|
|||||||
import android.hardware.security.keymint.BeginResult;
|
import android.hardware.security.keymint.BeginResult;
|
||||||
import android.hardware.security.keymint.HardwareAuthToken;
|
import android.hardware.security.keymint.HardwareAuthToken;
|
||||||
import android.hardware.security.keymint.IKeyMintOperation;
|
import android.hardware.security.keymint.IKeyMintOperation;
|
||||||
|
import android.hardware.security.keymint.KeyCharacteristics;
|
||||||
import android.hardware.security.keymint.KeyCreationResult;
|
import android.hardware.security.keymint.KeyCreationResult;
|
||||||
import android.hardware.security.keymint.KeyFormat;
|
import android.hardware.security.keymint.KeyFormat;
|
||||||
import android.hardware.security.keymint.KeyMintHardwareInfo;
|
import android.hardware.security.keymint.KeyMintHardwareInfo;
|
||||||
@@ -782,7 +783,7 @@ interface IKeyMintDevice {
|
|||||||
*/
|
*/
|
||||||
void earlyBootEnded();
|
void earlyBootEnded();
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Called by the client to get a wrapped per-boot ephemeral key from a wrapped storage key.
|
* Called by the client to get a wrapped per-boot ephemeral key from a wrapped storage key.
|
||||||
* Clients will then use the returned per-boot ephemeral key in place of the wrapped storage
|
* Clients will then use the returned per-boot ephemeral key in place of the wrapped storage
|
||||||
* key. Whenever the hardware is presented with a per-boot ephemeral key for an operation, it
|
* key. Whenever the hardware is presented with a per-boot ephemeral key for an operation, it
|
||||||
@@ -802,4 +803,26 @@ interface IKeyMintDevice {
|
|||||||
* place of the input storageKeyBlob
|
* place of the input storageKeyBlob
|
||||||
*/
|
*/
|
||||||
byte[] convertStorageKeyToEphemeral(in byte[] storageKeyBlob);
|
byte[] convertStorageKeyToEphemeral(in byte[] storageKeyBlob);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns parameters associated with the provided key. This should match the
|
||||||
|
* KeyCharacteristics present in the KeyCreationResult returned by generateKey(),
|
||||||
|
* importKey(), or importWrappedKey().
|
||||||
|
*
|
||||||
|
* @param keyBlob The opaque descriptor returned by generateKey, importKey or importWrappedKey.
|
||||||
|
*
|
||||||
|
* @param appId An opaque byte string identifying the client. This value must match the
|
||||||
|
* Tag::APPLICATION_ID data provided during key generation/import. Without the correct
|
||||||
|
* value, it must be computationally infeasible for the secure hardware to obtain the
|
||||||
|
* key material.
|
||||||
|
*
|
||||||
|
* @param appData An opaque byte string provided by the application. This value must match the
|
||||||
|
* Tag::APPLICATION_DATA data provided during key generation/import. Without the
|
||||||
|
* correct value, it must be computationally infeasible for the secure hardware to
|
||||||
|
* obtain the key material.
|
||||||
|
*
|
||||||
|
* @return Characteristics of the generated key. See KeyCreationResult for details.
|
||||||
|
*/
|
||||||
|
KeyCharacteristics[] getKeyCharacteristics(
|
||||||
|
in byte[] keyBlob, in byte[] appId, in byte[] appData);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user