Add HMAC-SHA256 support.
Change-Id: I64c7bdf77388e3cb491b702c52c6746d32f317b0
diff --git a/symmetric_key.cpp b/symmetric_key.cpp
index 5105c7d..9678f9d 100644
--- a/symmetric_key.cpp
+++ b/symmetric_key.cpp
@@ -22,6 +22,7 @@
#include <openssl/rand.h>
#include "aes_key.h"
+#include "hmac_key.h"
#include "unencrypted_key_blob.h"
namespace keymaster {
@@ -40,6 +41,9 @@
case KM_ALGORITHM_AES:
key.reset(new AesKey(key_description, logger));
break;
+ case KM_ALGORITHM_HMAC:
+ key.reset(new HmacKey(key_description, logger));
+ break;
default:
*error = KM_ERROR_UNSUPPORTED_ALGORITHM;
return NULL;
@@ -74,6 +78,8 @@
switch (algorithm) {
case KM_ALGORITHM_AES:
return new AesKey(blob, logger, error);
+ case KM_ALGORITHM_HMAC:
+ return new HmacKey(blob, logger, error);
default:
*error = KM_ERROR_UNSUPPORTED_ALGORITHM;
return NULL;