Merge pull request #171 from valeriosetti/issue298-framework

[framework] PK: try storing all private RSA keys in PSA (1/3)
This commit is contained in:
Manuel Pégourié-Gonnard
2025-06-25 10:08:53 +02:00
committed by GitHub
2 changed files with 13 additions and 6 deletions
+13 -6
View File
@@ -1395,8 +1395,14 @@ int mbedtls_test_key_consistency_psa_pk(mbedtls_svc_key_id_t psa_key,
size_t pk_public_length = 0;
switch (pk_type) {
#if defined(MBEDTLS_RSA_C)
#if defined(MBEDTLS_RSA_C) || defined(MBEDTLS_PK_USE_PSA_RSA_DATA)
case MBEDTLS_PK_RSA:
#if defined(MBEDTLS_PK_USE_PSA_RSA_DATA)
TEST_ASSERT(PSA_KEY_TYPE_IS_RSA(psa_type));
pk_public = pk->pub_raw;
pk_public_length = pk->pub_raw_len;
break;
#else /* MBEDTLS_PK_USE_PSA_RSA_DATA */
TEST_ASSERT(PSA_KEY_TYPE_IS_RSA(psa_type));
const mbedtls_rsa_context *rsa = mbedtls_pk_rsa(*pk);
uint8_t *const end = pk_public_buffer + sizeof(pk_public_buffer);
@@ -1406,8 +1412,10 @@ int mbedtls_test_key_consistency_psa_pk(mbedtls_svc_key_id_t psa_key,
pk_public = cursor;
pk_public_length = end - pk_public;
break;
#endif
#endif /* MBEDTLS_PK_USE_PSA_RSA_DATA */
#endif /* MBEDTLS_RSA_C || MBEDTLS_PK_USE_PSA_RSA_DATA */
#if defined(PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY)
#if defined(MBEDTLS_PK_USE_PSA_EC_DATA)
case MBEDTLS_PK_ECKEY:
case MBEDTLS_PK_ECKEY_DH:
@@ -1417,9 +1425,7 @@ int mbedtls_test_key_consistency_psa_pk(mbedtls_svc_key_id_t psa_key,
pk_public = pk->pub_raw;
pk_public_length = pk->pub_raw_len;
break;
#endif /* MBEDTLS_PK_USE_PSA_EC_DATA */
#if defined(PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY) && !defined(MBEDTLS_PK_USE_PSA_EC_DATA)
#else /* MBEDTLS_PK_USE_PSA_EC_DATA */
case MBEDTLS_PK_ECKEY:
case MBEDTLS_PK_ECKEY_DH:
case MBEDTLS_PK_ECDSA:
@@ -1430,7 +1436,8 @@ int mbedtls_test_key_consistency_psa_pk(mbedtls_svc_key_id_t psa_key,
pk_public_buffer, sizeof(pk_public_buffer)), 0);
pk_public = pk_public_buffer;
break;
#endif /* PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY && !MBEDTLS_PK_USE_PSA_EC_DATA */
#endif /* MBEDTLS_PK_USE_PSA_EC_DATA */
#endif /* PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY */
#if defined(MBEDTLS_USE_PSA_CRYPTO)
case MBEDTLS_PK_OPAQUE: