OEMCrypto Unit Test Fix: Do Not Derive Keys Immediately
(This is a merge of http://go/wvgerrit/100053.) The OEMCrypto Unit Tests were previously deriving keys from the session key as part of loading the test RSA key. This creates an invalid function call order, since the OEMCrypto session will likely next be used for actions that need to be done *before* deriving these keys. With ODKiTEE, which is more strict about this order, all OEMCrypto tests were failing. Bug: 156655072 Test: OEMCrypto Unit Tests Change-Id: Ibfede587da30cfff4a44a5e0687e4199b1430372
This commit is contained in:
committed by
John Bruce
parent
75575418d0
commit
b8e13cec2d
@@ -1014,7 +1014,7 @@ void Session::GenerateDerivedKeysFromSessionKey() {
|
||||
// Uses test certificate.
|
||||
vector<uint8_t> session_key;
|
||||
vector<uint8_t> enc_session_key;
|
||||
if (public_rsa_ == nullptr) PreparePublicKey();
|
||||
ASSERT_NE(public_rsa_, nullptr) << "No public RSA key loaded in test code.";
|
||||
// A failure here probably indicates that there is something wrong with the
|
||||
// test program and its dependency on BoringSSL.
|
||||
ASSERT_TRUE(GenerateRSASessionKey(&session_key, &enc_session_key));
|
||||
@@ -1303,12 +1303,11 @@ void Session::VerifyRSASignature(const vector<uint8_t>& message,
|
||||
const uint8_t* signature,
|
||||
size_t signature_length,
|
||||
RSA_Padding_Scheme padding_scheme) {
|
||||
EXPECT_TRUE(nullptr != public_rsa_)
|
||||
<< "No public RSA key loaded in test code.\n";
|
||||
ASSERT_NE(public_rsa_, nullptr) << "No public RSA key loaded in test code.";
|
||||
|
||||
EXPECT_EQ(static_cast<size_t>(RSA_size(public_rsa_)), signature_length)
|
||||
ASSERT_EQ(static_cast<size_t>(RSA_size(public_rsa_)), signature_length)
|
||||
<< "Signature size is wrong. " << signature_length << ", should be "
|
||||
<< RSA_size(public_rsa_) << "\n";
|
||||
<< RSA_size(public_rsa_);
|
||||
|
||||
if (padding_scheme == kSign_RSASSA_PSS) {
|
||||
boringssl_ptr<EVP_PKEY, EVP_PKEY_free> pkey(EVP_PKEY_new());
|
||||
|
||||
Reference in New Issue
Block a user