ECIES: add ECIES-KEM. This version supports HKDF and ECDH with NIST curves.
Change-Id: I5af3215e96bb015049574aa18327cd7f7499dbd3
diff --git a/hkdf_test.cpp b/hkdf_test.cpp
index f65a617..8cf1e8d 100644
--- a/hkdf_test.cpp
+++ b/hkdf_test.cpp
@@ -65,20 +65,19 @@
};
TEST(HkdfTest, Hkdf) {
- for (size_t i = 0; i < 3; i++) {
- const HkdfTest& test(kHkdfTests[i]);
+ for (auto& test : kHkdfTests) {
const string key = hex2str(test.key_hex);
const string salt = hex2str(test.salt_hex);
const string info = hex2str(test.info_hex);
const string expected = hex2str(test.output_hex);
- keymaster_error_t error;
// We set the key_length to the length of the expected output and then take
// the result.
- Rfc5869HmacSha256Kdf hkdf(reinterpret_cast<const uint8_t*>(key.data()), key.size(),
- reinterpret_cast<const uint8_t*>(salt.data()), salt.size(),
- reinterpret_cast<const uint8_t*>(info.data()), info.size(),
- expected.size(), &error);
- ASSERT_EQ(error, KM_ERROR_OK);
+ Rfc5869Sha256Kdf hkdf;
+ ASSERT_TRUE(hkdf.Init(reinterpret_cast<const uint8_t*>(key.data()), key.size(),
+ reinterpret_cast<const uint8_t*>(salt.data()), salt.size(),
+ reinterpret_cast<const uint8_t*>(info.data()), info.size(),
+ expected.size()));
+
Buffer secret_key;
bool result = hkdf.secret_key(&secret_key);
ASSERT_TRUE(result);