diff options
author | Adam Vartanian <flooey@google.com> | 2018-08-10 14:55:24 +0100 |
---|---|---|
committer | Adam Vartanian <flooey@google.com> | 2018-08-10 15:32:39 +0100 |
commit | bfcf3a72c0bcb62cfde80e932db0668a7f96c0f8 (patch) | |
tree | 3ab110046e45c25f8f69df137f8a9d4a52bf60b5 /src/fipstools | |
parent | 6120b2b9dfbe5b19fe2d0f69a4b8418ad5f7fe08 (diff) | |
download | boringssl-bfcf3a72c0bcb62cfde80e932db0668a7f96c0f8.tar.gz |
external/boringssl: Sync to 8625ec4b436ccb4098ed4aac10891eff8372be41.
This includes the following changes:
https://boringssl.googlesource.com/boringssl/+log/c596415ec62b501523d80f9afa26b135406da6bf..8625ec4b436ccb4098ed4aac10891eff8372be41
Test: cts -m CtsLibcoreTestCases
Change-Id: I47a45e6b6f46b19fcbcb6c917895867d56dcd2ca
Diffstat (limited to 'src/fipstools')
-rw-r--r-- | src/fipstools/cavp_kas_test.cc | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/fipstools/cavp_kas_test.cc b/src/fipstools/cavp_kas_test.cc index a304a48c..f89bc973 100644 --- a/src/fipstools/cavp_kas_test.cc +++ b/src/fipstools/cavp_kas_test.cc @@ -25,6 +25,7 @@ #include <openssl/ec_key.h> #include <openssl/err.h> #include <openssl/nid.h> +#include <openssl/sha.h> #include "../crypto/internal.h" #include "../crypto/test/file_test.h" @@ -35,20 +36,20 @@ static bool TestKAS(FileTest *t, void *arg) { const bool validate = *reinterpret_cast<bool *>(arg); int nid = NID_undef; - const EVP_MD *md = nullptr; + size_t digest_len = 0; if (t->HasInstruction("EB - SHA224")) { nid = NID_secp224r1; - md = EVP_sha224(); + digest_len = SHA224_DIGEST_LENGTH; } else if (t->HasInstruction("EC - SHA256")) { nid = NID_X9_62_prime256v1; - md = EVP_sha256(); + digest_len = SHA256_DIGEST_LENGTH; } else if (t->HasInstruction("ED - SHA384")) { nid = NID_secp384r1; - md = EVP_sha384(); + digest_len = SHA384_DIGEST_LENGTH; } else if (t->HasInstruction("EE - SHA512")) { nid = NID_secp521r1; - md = EVP_sha512(); + digest_len = SHA512_DIGEST_LENGTH; } else { return false; } @@ -86,17 +87,9 @@ static bool TestKAS(FileTest *t, void *arg) { return false; } - constexpr size_t kMaxCurveFieldBits = 521; - uint8_t shared_bytes[(kMaxCurveFieldBits + 7)/8]; - const int shared_bytes_len = - ECDH_compute_key(shared_bytes, sizeof(shared_bytes), their_point.get(), - ec_key.get(), nullptr); - uint8_t digest[EVP_MAX_MD_SIZE]; - unsigned digest_len; - if (shared_bytes_len < 0 || - !EVP_Digest(shared_bytes, shared_bytes_len, digest, &digest_len, md, - nullptr)) { + if (!ECDH_compute_key_fips(digest, digest_len, their_point.get(), + ec_key.get())) { return false; } |