summaryrefslogtreecommitdiffstats
path: root/core/java/android/security
diff options
context:
space:
mode:
authorChad Brubaker <cbrubaker@google.com>2015-03-27 14:28:35 -0700
committerChad Brubaker <cbrubaker@google.com>2015-03-27 14:28:35 -0700
commitdae79e540844741fc35c648efe8bbb00fc8ab781 (patch)
treea8d91d5261c9f7eb48cbc2fdfe2729a41e28b8b3 /core/java/android/security
parent274a4ee3446e76a34a9cfe987e98f7bf4e53f78d (diff)
downloadframeworks_base-dae79e540844741fc35c648efe8bbb00fc8ab781.zip
frameworks_base-dae79e540844741fc35c648efe8bbb00fc8ab781.tar.gz
frameworks_base-dae79e540844741fc35c648efe8bbb00fc8ab781.tar.bz2
Allow entropy to be provided to some operations
generateKey and begin can now optionally take an array of bytes to add to the rng entropy of the device before the operation. If entropy is specified and the device does not support add_rng_entropy or the call fails then that device will not be used, leading to fallback or error depending on the situation. Change-Id: Id7d33e3cc959594dfa5483d002993ba35c1fb134
Diffstat (limited to 'core/java/android/security')
-rw-r--r--core/java/android/security/IKeystoreService.aidl6
1 files changed, 3 insertions, 3 deletions
diff --git a/core/java/android/security/IKeystoreService.aidl b/core/java/android/security/IKeystoreService.aidl
index d24bc13..14b5748 100644
--- a/core/java/android/security/IKeystoreService.aidl
+++ b/core/java/android/security/IKeystoreService.aidl
@@ -60,8 +60,8 @@ interface IKeystoreService {
// Keymaster 0.4 methods
int addRngEntropy(in byte[] data);
- int generateKey(String alias, in KeymasterArguments arguments, int uid, int flags,
- out KeyCharacteristics characteristics);
+ int generateKey(String alias, in KeymasterArguments arguments, in byte[] entropy, int uid,
+ int flags, out KeyCharacteristics characteristics);
int getKeyCharacteristics(String alias, in KeymasterBlob clientId, in KeymasterBlob appId,
out KeyCharacteristics characteristics);
int importKey(String alias, in KeymasterArguments arguments, int format,
@@ -69,7 +69,7 @@ interface IKeystoreService {
ExportResult exportKey(String alias, int format, in KeymasterBlob clientId,
in KeymasterBlob appId);
OperationResult begin(IBinder appToken, String alias, int purpose, boolean pruneable,
- in KeymasterArguments params, out KeymasterArguments operationParams);
+ in KeymasterArguments params, in byte[] entropy, out KeymasterArguments operationParams);
OperationResult update(IBinder token, in KeymasterArguments params, in byte[] input);
OperationResult finish(IBinder token, in KeymasterArguments params, in byte[] signature);
int abort(IBinder handle);