Loading security/keymint/aidl/vts/functional/KeyBlobUpgradeTest.cpp +18 −12 Original line number Original line Diff line number Diff line Loading @@ -76,18 +76,14 @@ std::vector<std::string> keyblob_names_tee = { "rsa-key", "p256-key", "ed25519-key", "x25519-key", "rsa-key", "p256-key", "ed25519-key", "x25519-key", "rsa-attest-key", "p256-attest-key", "ed25519-attest-key"}; "rsa-attest-key", "p256-attest-key", "ed25519-attest-key"}; std::vector<std::string> keyblob_names_tee_no_25519 = { "aes-key", "aes-key-rr", "des-key", "hmac-key", "rsa-key", "p256-key", "rsa-attest-key", "p256-attest-key"}; std::vector<std::string> keyblob_names_sb = {"aes-key", "aes-key-rr", "des-key", std::vector<std::string> keyblob_names_sb = {"aes-key", "aes-key-rr", "des-key", "hmac-key", "rsa-key", "p256-key", "hmac-key", "rsa-key", "p256-key", "rsa-attest-key", "p256-attest-key"}; "rsa-attest-key", "p256-attest-key"}; const std::vector<std::string>& keyblob_names(SecurityLevel sec_level) { if (sec_level == SecurityLevel::STRONGBOX) { return keyblob_names_sb; } else { return keyblob_names_tee; } } bool requires_rr(const std::string& name) { bool requires_rr(const std::string& name) { return name.find("-rr") != std::string::npos; return name.find("-rr") != std::string::npos; } } Loading Loading @@ -194,13 +190,23 @@ std::vector<uint8_t> load_cert(const std::string& subdir, const std::string& nam class KeyBlobUpgradeTest : public KeyMintAidlTestBase { class KeyBlobUpgradeTest : public KeyMintAidlTestBase { protected: protected: const std::vector<std::string>& keyblob_names() { if (SecLevel() == SecurityLevel::STRONGBOX) { return keyblob_names_sb; } else if (!Curve25519Supported()) { return keyblob_names_tee_no_25519; } else { return keyblob_names_tee; } } void UpgradeKeyBlobs(bool expectUpgrade) { void UpgradeKeyBlobs(bool expectUpgrade) { std::string subdir = keyblob_subdir(keyblob_dir, GetParam(), /* create? */ false); std::string subdir = keyblob_subdir(keyblob_dir, GetParam(), /* create? */ false); if (subdir.empty()) { if (subdir.empty()) { GTEST_SKIP() << "No keyblob directory provided"; GTEST_SKIP() << "No keyblob directory provided"; } } for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { for (bool with_hidden : {false, true}) { for (bool with_hidden : {false, true}) { std::string app_id; std::string app_id; std::string app_data; std::string app_data; Loading Loading @@ -348,7 +354,7 @@ TEST_P(KeyBlobUpgradeTest, CreateKeyBlobsBefore) { .SetDefaultValidity(), .SetDefaultValidity(), }}; }}; for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { auto entry = keys_info.find(name); auto entry = keys_info.find(name); ASSERT_NE(entry, keys_info.end()) << "no builder for " << name; ASSERT_NE(entry, keys_info.end()) << "no builder for " << name; auto builder = entry->second; auto builder = entry->second; Loading Loading @@ -425,7 +431,7 @@ TEST_P(KeyBlobUpgradeTest, UseKeyBlobsBeforeOrAfter) { "/data/local/tmp/keymint-blobs"; "/data/local/tmp/keymint-blobs"; } } for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { for (bool with_hidden : {false, true}) { for (bool with_hidden : {false, true}) { auto builder = AuthorizationSetBuilder(); auto builder = AuthorizationSetBuilder(); if (with_hidden) { if (with_hidden) { Loading Loading @@ -562,7 +568,7 @@ TEST_P(KeyBlobUpgradeTest, DeleteRRKeyBlobsAfter) { "/data/local/tmp/keymint-blobs"; "/data/local/tmp/keymint-blobs"; } } for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { for (bool with_hidden : {false, true}) { for (bool with_hidden : {false, true}) { auto builder = AuthorizationSetBuilder(); auto builder = AuthorizationSetBuilder(); if (with_hidden) { if (with_hidden) { Loading Loading
security/keymint/aidl/vts/functional/KeyBlobUpgradeTest.cpp +18 −12 Original line number Original line Diff line number Diff line Loading @@ -76,18 +76,14 @@ std::vector<std::string> keyblob_names_tee = { "rsa-key", "p256-key", "ed25519-key", "x25519-key", "rsa-key", "p256-key", "ed25519-key", "x25519-key", "rsa-attest-key", "p256-attest-key", "ed25519-attest-key"}; "rsa-attest-key", "p256-attest-key", "ed25519-attest-key"}; std::vector<std::string> keyblob_names_tee_no_25519 = { "aes-key", "aes-key-rr", "des-key", "hmac-key", "rsa-key", "p256-key", "rsa-attest-key", "p256-attest-key"}; std::vector<std::string> keyblob_names_sb = {"aes-key", "aes-key-rr", "des-key", std::vector<std::string> keyblob_names_sb = {"aes-key", "aes-key-rr", "des-key", "hmac-key", "rsa-key", "p256-key", "hmac-key", "rsa-key", "p256-key", "rsa-attest-key", "p256-attest-key"}; "rsa-attest-key", "p256-attest-key"}; const std::vector<std::string>& keyblob_names(SecurityLevel sec_level) { if (sec_level == SecurityLevel::STRONGBOX) { return keyblob_names_sb; } else { return keyblob_names_tee; } } bool requires_rr(const std::string& name) { bool requires_rr(const std::string& name) { return name.find("-rr") != std::string::npos; return name.find("-rr") != std::string::npos; } } Loading Loading @@ -194,13 +190,23 @@ std::vector<uint8_t> load_cert(const std::string& subdir, const std::string& nam class KeyBlobUpgradeTest : public KeyMintAidlTestBase { class KeyBlobUpgradeTest : public KeyMintAidlTestBase { protected: protected: const std::vector<std::string>& keyblob_names() { if (SecLevel() == SecurityLevel::STRONGBOX) { return keyblob_names_sb; } else if (!Curve25519Supported()) { return keyblob_names_tee_no_25519; } else { return keyblob_names_tee; } } void UpgradeKeyBlobs(bool expectUpgrade) { void UpgradeKeyBlobs(bool expectUpgrade) { std::string subdir = keyblob_subdir(keyblob_dir, GetParam(), /* create? */ false); std::string subdir = keyblob_subdir(keyblob_dir, GetParam(), /* create? */ false); if (subdir.empty()) { if (subdir.empty()) { GTEST_SKIP() << "No keyblob directory provided"; GTEST_SKIP() << "No keyblob directory provided"; } } for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { for (bool with_hidden : {false, true}) { for (bool with_hidden : {false, true}) { std::string app_id; std::string app_id; std::string app_data; std::string app_data; Loading Loading @@ -348,7 +354,7 @@ TEST_P(KeyBlobUpgradeTest, CreateKeyBlobsBefore) { .SetDefaultValidity(), .SetDefaultValidity(), }}; }}; for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { auto entry = keys_info.find(name); auto entry = keys_info.find(name); ASSERT_NE(entry, keys_info.end()) << "no builder for " << name; ASSERT_NE(entry, keys_info.end()) << "no builder for " << name; auto builder = entry->second; auto builder = entry->second; Loading Loading @@ -425,7 +431,7 @@ TEST_P(KeyBlobUpgradeTest, UseKeyBlobsBeforeOrAfter) { "/data/local/tmp/keymint-blobs"; "/data/local/tmp/keymint-blobs"; } } for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { for (bool with_hidden : {false, true}) { for (bool with_hidden : {false, true}) { auto builder = AuthorizationSetBuilder(); auto builder = AuthorizationSetBuilder(); if (with_hidden) { if (with_hidden) { Loading Loading @@ -562,7 +568,7 @@ TEST_P(KeyBlobUpgradeTest, DeleteRRKeyBlobsAfter) { "/data/local/tmp/keymint-blobs"; "/data/local/tmp/keymint-blobs"; } } for (std::string name : keyblob_names(SecLevel())) { for (std::string name : keyblob_names()) { for (bool with_hidden : {false, true}) { for (bool with_hidden : {false, true}) { auto builder = AuthorizationSetBuilder(); auto builder = AuthorizationSetBuilder(); if (with_hidden) { if (with_hidden) { Loading