Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 10dd6c40 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Add Rsa 2048 import key test for strongbox." am: aeb71175

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1673856

Change-Id: Ib473a080d4cee9e78dd7c9ab0f7c0cf93b683934
parents 0bee214c aeb71175
Loading
Loading
Loading
Loading
+62 −3
Original line number Diff line number Diff line
@@ -137,6 +137,54 @@ string rsa_key =
                "d5f33645e8ed8b4a1cb3cc4a1d67987399f2a09f5b3fb68c88d5e5d90ac3"
                "3492d6");

/*
 * DER-encoded PKCS#8 format RSA key. Generated using:
 *
 * openssl genrsa 2048 | openssl pkcs8 -topk8 -nocrypt -outform der | hexdump -e '30/1  "%02X" "\n"'
 */
string rsa_2048_key =
        hex2str("308204BD020100300D06092A864886F70D0101010500048204A7308204A3"
                "0201000282010100BEBC342B56D443B1299F9A6A7056E80A897E318476A5"
                "A18029E63B2ED739A61791D339F58DC763D9D14911F2EDEC383DEE11F631"
                "9B44510E7A3ECD9B79B97382E49500ACF8117DC89CAF0E621F77756554A2"
                "FD4664BFE7AB8B59AB48340DBFA27B93B5A81F6ECDEB02D0759307128DF3"
                "E3BAD4055C8B840216DFAA5700670E6C5126F0962FCB70FF308F25049164"
                "CCF76CC2DA66A7DD9A81A714C2809D69186133D29D84568E892B6FFBF319"
                "9BDB14383EE224407F190358F111A949552ABA6714227D1BD7F6B20DD0CB"
                "88F9467B719339F33BFF35B3870B3F62204E4286B0948EA348B524544B5F"
                "9838F29EE643B079EEF8A713B220D7806924CDF7295070C5020301000102"
                "82010069F377F35F2F584EF075353CCD1CA99738DB3DBC7C7FF35F9366CE"
                "176DFD1B135AB10030344ABF5FBECF1D4659FDEF1C0FC430834BE1BE3911"
                "951377BB3D563A2EA9CA8F4AD9C48A8CE6FD516A735C662686C7B4B3C09A"
                "7B8354133E6F93F790D59EAEB92E84C9A4339302CCE28FDF04CCCAFA7DE3"
                "F3A827D4F6F7D38E68B0EC6AB706645BF074A4E4090D06FB163124365FD5"
                "EE7A20D350E9958CC30D91326E1B292E9EF5DB408EC42DAF737D20149704"
                "D0A678A0FB5B5446863B099228A352D604BA8091A164D01D5AB05397C71E"
                "AD20BE2A08FC528FE442817809C787FEE4AB97F97B9130D022153EDC6EB6"
                "CBE7B0F8E3473F2E901209B5DB10F93604DB0102818100E83C0998214941"
                "EA4F9293F1B77E2E99E6CF305FAF358238E126124FEAF2EB9724B2EA7B78"
                "E6032343821A80E55D1D88FB12D220C3F41A56142FEC85796D1917F1E8C7"
                "74F142B67D3D6E7B7E6B4383E94DB5929089DBB346D5BDAB40CC2D96EE04"
                "09475E175C63BF78CFD744136740838127EA723FF3FE7FA368C1311B4A4E"
                "0502818100D240FCC0F5D7715CDE21CB2DC86EA146132EA3B06F61FF2AF5"
                "4BF38473F59DADCCE32B5F4CC32DD0BA6F509347B4B5B1B58C39F95E4798"
                "CCBB43E83D0119ACF532F359CA743C85199F0286610E200997D731291717"
                "9AC9B67558773212EC961E8BCE7A3CC809BC5486A96E4B0E6AF394D94E06"
                "6A0900B7B70E82A44FB30053C102818100AD15DA1CBD6A492B66851BA8C3"
                "16D38AB700E2CFDDD926A658003513C54BAA152B30021D667D20078F500F"
                "8AD3E7F3945D74A891ED1A28EAD0FEEAEC8C14A8E834CF46A13D1378C99D"
                "18940823CFDD27EC5810D59339E0C34198AC638E09C87CBB1B634A9864AE"
                "9F4D5EB2D53514F67B4CAEC048C8AB849A02E397618F3271350281801FA2"
                "C1A5331880A92D8F3E281C617108BF38244F16E352E69ED417C7153F9EC3"
                "18F211839C643DCF8B4DD67CE2AC312E95178D5D952F06B1BF779F491692"
                "4B70F582A23F11304E02A5E7565AE22A35E74FECC8B6FDC93F92A1A37703"
                "E4CF0E63783BD02EB716A7ECBBFA606B10B74D01579522E7EF84D91FC522"
                "292108D902C1028180796FE3825F9DCC85DF22D58690065D93898ACD65C0"
                "87BEA8DA3A63BF4549B795E2CD0E3BE08CDEBD9FCF1720D9CDC5070D74F4"
                "0DED8E1102C52152A31B6165F83A6722AECFCC35A493D7634664B888A08D"
                "3EB034F12EA28BFEE346E205D334827F778B16ED40872BD29FCB36536B6E"
                "93FFB06778696B4A9D81BB0A9423E63DE5");

string ec_256_key =
        hex2str("308187020100301306072a8648ce3d020106082a8648ce3d030107046d30"
                "6b0201010420737c2ecd7b8d1940bf2930aa9b4ed3ff941eed09366bc032"
@@ -1811,16 +1859,27 @@ class ImportKeyTest : public KeyMintAidlTestBase {
 * Verifies that importing and using an RSA key pair works correctly.
 */
TEST_P(ImportKeyTest, RsaSuccess) {
    uint32_t key_size;
    string key;

    if (SecLevel() == SecurityLevel::STRONGBOX) {
        key_size = 2048;
        key = rsa_2048_key;
    } else {
        key_size = 1024;
        key = rsa_key;
    }

    ASSERT_EQ(ErrorCode::OK, ImportKey(AuthorizationSetBuilder()
                                               .Authorization(TAG_NO_AUTH_REQUIRED)
                                               .RsaSigningKey(1024, 65537)
                                               .RsaSigningKey(key_size, 65537)
                                               .Digest(Digest::SHA_2_256)
                                               .Padding(PaddingMode::RSA_PSS)
                                               .SetDefaultValidity(),
                                       KeyFormat::PKCS8, rsa_key));
                                       KeyFormat::PKCS8, key));

    CheckCryptoParam(TAG_ALGORITHM, Algorithm::RSA);
    CheckCryptoParam(TAG_KEY_SIZE, 1024U);
    CheckCryptoParam(TAG_KEY_SIZE, key_size);
    CheckCryptoParam(TAG_RSA_PUBLIC_EXPONENT, 65537U);
    CheckCryptoParam(TAG_DIGEST, Digest::SHA_2_256);
    CheckCryptoParam(TAG_PADDING, PaddingMode::RSA_PSS);