From dbfb2ab4ea18653cedf8de041f1ca965687960e4 Mon Sep 17 00:00:00 2001 From: Valerio Setti Date: Fri, 16 Aug 2024 12:52:19 +0200 Subject: [PATCH] psa: zeroize static key buffer content when key slot is freed Signed-off-by: Valerio Setti --- library/psa_crypto.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/library/psa_crypto.c b/library/psa_crypto.c index 8c2c543d09..f0ccf3d80e 100644 --- a/library/psa_crypto.c +++ b/library/psa_crypto.c @@ -1183,7 +1183,11 @@ static psa_status_t psa_get_and_lock_transparent_key_slot_with_policy( psa_status_t psa_remove_key_data_from_memory(psa_key_slot_t *slot) { -#if !defined(MBEDTLS_PSA_STATIC_KEY_SLOTS) +#if defined(MBEDTLS_PSA_STATIC_KEY_SLOTS) + if (slot->key.bytes > 0) { + mbedtls_platform_zeroize(slot->key.data, MBEDTLS_PSA_STATIC_KEY_SLOT_BUFFER_SIZE); + } +#else if (slot->key.data != NULL) { mbedtls_zeroize_and_free(slot->key.data, slot->key.bytes); }