Merge 24Q3 (ab/11976889) to aosp-main-future
Bug: 347831320
Merged-In: I4cc82131bb070a37cb6ed9dbe9d7cccc7ab5ee89
Change-Id: Ica12b0b35751b17c1ee50fc1aa72c0fd075e0f71
diff --git a/staging/security/see/hwcrypto/aidl/aidl_api/android.hardware.security.see/current/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl b/staging/security/see/hwcrypto/aidl/aidl_api/android.hardware.security.see/current/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl
index 7efcdd6..b8da5c4 100644
--- a/staging/security/see/hwcrypto/aidl/aidl_api/android.hardware.security.see/current/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl
+++ b/staging/security/see/hwcrypto/aidl/aidl_api/android.hardware.security.see/current/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl
@@ -36,6 +36,7 @@
android.hardware.security.see.hwcrypto.IHwCryptoKey.DiceCurrentBoundKeyResult deriveCurrentDicePolicyBoundKey(in android.hardware.security.see.hwcrypto.IHwCryptoKey.DiceBoundDerivationKey derivationKey);
android.hardware.security.see.hwcrypto.IHwCryptoKey.DiceBoundKeyResult deriveDicePolicyBoundKey(in android.hardware.security.see.hwcrypto.IHwCryptoKey.DiceBoundDerivationKey derivationKey, in byte[] dicePolicyForKeyVersion);
android.hardware.security.see.hwcrypto.IHwCryptoKey.DerivedKey deriveKey(in android.hardware.security.see.hwcrypto.IHwCryptoKey.DerivedKeyParameters parameters);
+ android.hardware.security.see.hwcrypto.IHwCryptoOperations getHwCryptoOperations();
enum DeviceKeyId {
DEVICE_BOUND_KEY,
BATCH_KEY,
diff --git a/staging/security/see/hwcrypto/aidl/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl b/staging/security/see/hwcrypto/aidl/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl
index 939014a..075825d 100644
--- a/staging/security/see/hwcrypto/aidl/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl
+++ b/staging/security/see/hwcrypto/aidl/android/hardware/security/see/hwcrypto/IHwCryptoKey.aidl
@@ -15,6 +15,7 @@
*/
package android.hardware.security.see.hwcrypto;
+import android.hardware.security.see.hwcrypto.IHwCryptoOperations;
import android.hardware.security.see.hwcrypto.IOpaqueKey;
import android.hardware.security.see.hwcrypto.KeyPolicy;
@@ -183,4 +184,19 @@
* <code>HalErrorCode</code> otherwise.
*/
DerivedKey deriveKey(in DerivedKeyParameters parameters);
+
+ /*
+ * getHwCryptoOperations() - Returns an interface used to work on opaque keys. This interface
+ * can also be used to operate on any opaque key generated by
+ * hwkeyDeriveVersioned, even if this key has been generated after
+ * retrieving a IHwCryptoOperations binder object, as long as the
+ * parent IHwCryptoDeviceKeyAccess is not dropped between retrieving
+ * the IHwCryptoOperations binder object and deriving the key.
+ * IHwCryptoOperations can also be used to create opaque keys that
+ * are not bound to the device.
+ *
+ * Return:
+ * IHwCryptoOperations on success
+ */
+ IHwCryptoOperations getHwCryptoOperations();
}