summaryrefslogtreecommitdiffstats
path: root/key.cpp
diff options
context:
space:
mode:
authorShawn Willden <swillden@google.com>2014-09-17 13:04:10 -0600
committerShawn Willden <swillden@google.com>2014-09-23 07:54:57 -0600
commit72014adef83b0346859dbe82d77b09b4756d8e64 (patch)
tree0b2abe1d57d52773ddae43db080c799f999f3082 /key.cpp
parent7c0a82b7528c51299bf8dda6beb5e1fc8bf54b23 (diff)
downloadandroid_system_keymaster-72014adef83b0346859dbe82d77b09b4756d8e64.tar.gz
android_system_keymaster-72014adef83b0346859dbe82d77b09b4756d8e64.tar.bz2
android_system_keymaster-72014adef83b0346859dbe82d77b09b4756d8e64.zip
Refactor KeyBlob to separate encryption functionality.
This CL is in preparation for another which will refactor libkeymaster into libkeymaster and libkeymasterclient, the latter for use by programs which merely interface with keymaster and don't do any crypto on their own, but do need to parse key blobs to extract authorization list entries. To make that possible it moves KeyBlob's key encryption and decryption capabilities into a subclass, PlaintextKeyBlob. Change-Id: Ic6a65b6f237c122796ea70458655111316f902d8
Diffstat (limited to 'key.cpp')
-rw-r--r--key.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/key.cpp b/key.cpp
index 74cb508..b665919 100644
--- a/key.cpp
+++ b/key.cpp
@@ -16,10 +16,9 @@
#include <openssl/x509.h>
-#include <keymaster/key_blob.h>
-
#include "asymmetric_key.h"
#include "openssl_utils.h"
+#include "unencrypted_key_blob.h"
#include "key.h"
@@ -35,7 +34,8 @@ Key::Key(const KeyBlob& blob, const Logger& logger) : logger_(logger) {
}
/* static */
-Key* Key::CreateKey(const KeyBlob& blob, const Logger& logger, keymaster_error_t* error) {
+Key* Key::CreateKey(const UnencryptedKeyBlob& blob, const Logger& logger,
+ keymaster_error_t* error) {
switch (blob.algorithm()) {
case KM_ALGORITHM_RSA:
return new RsaKey(blob, logger, error);