mirror of
https://github.com/espressif/esp-idf.git
synced 2026-04-27 19:13:21 +00:00
change(mbedtls): Generalize key source union for the hardware ECDSA context
This commit is contained in:
@@ -480,7 +480,6 @@ static void test_ecdsa_sign(mbedtls_ecp_group_id gid)
|
||||
.grp_id = gid,
|
||||
.tee_key_id = key_id,
|
||||
.load_pubkey = true,
|
||||
.use_tee_sec_stg_key = true,
|
||||
};
|
||||
TEST_ASSERT_EQUAL(0, esp_ecdsa_tee_set_pk_context(&key_ctx, &conf));
|
||||
|
||||
|
||||
@@ -595,7 +595,7 @@ int esp_ecdsa_tee_set_pk_context(mbedtls_pk_context *key_ctx, esp_ecdsa_pk_conf_
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (!conf->use_tee_sec_stg_key) {
|
||||
if (!conf->tee_key_id) {
|
||||
ESP_LOGE(TAG, "Invalid esp_ecdsa_pk_conf_t configuration");
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -30,19 +30,15 @@ typedef struct {
|
||||
mbedtls_ecp_group_id grp_id; /*!< MbedTLS ECP group identifier */
|
||||
union {
|
||||
uint8_t efuse_block; /*!< EFuse block id for ECDSA private key */
|
||||
#if CONFIG_MBEDTLS_TEE_SEC_STG_ECDSA_SIGN
|
||||
const char *tee_key_id; /*!< TEE secure storage key id for ECDSA private key */
|
||||
}; /*!< Union to hold either EFuse block id or TEE secure storage key id for ECDSA private key */
|
||||
#endif
|
||||
bool use_km_key; /*!< Use key deployed in the key manager for ECDSA operation. Note: The key must be already deployed by the application and it must be activated for the lifetime of this context */
|
||||
}; /*!< Union to hold either EFuse block id or TEE secure storage key id or use key deployed in the key manager for ECDSA operation for ECDSA private key */
|
||||
#if SOC_ECDSA_SUPPORT_EXPORT_PUBKEY || CONFIG_MBEDTLS_TEE_SEC_STG_ECDSA_SIGN
|
||||
bool load_pubkey; /*!< Export ECDSA public key from the hardware */
|
||||
|
||||
#endif
|
||||
bool use_km_key; /*!< Use key deployed in the key manager for ECDSA operation.
|
||||
Note: The key must be already deployed by the application and it must be activated for the lifetime of this context */
|
||||
#if CONFIG_MBEDTLS_TEE_SEC_STG_ECDSA_SIGN
|
||||
bool use_tee_sec_stg_key; /*!< Use key deployed in the TEE secure storage for ECDSA operation.
|
||||
Note: The key must be already deployed by the application and it must be activated for the lifetime of this context */
|
||||
#endif
|
||||
} esp_ecdsa_pk_conf_t; //TODO: IDF-9008 (Add a config to select the ecdsa key from the key manager peripheral)
|
||||
} esp_ecdsa_pk_conf_t;
|
||||
|
||||
#if SOC_ECDSA_SUPPORT_EXPORT_PUBKEY || __DOXYGEN__
|
||||
|
||||
|
||||
Reference in New Issue
Block a user