From 4bf5a80a7a87eb445640989fde3b47cca962b5e8 Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Fri, 3 Jun 2022 20:13:18 +0200 Subject: [PATCH] Added key usage counter to decryption operations. Signed-off-by: Pol Henarejos --- src/hsm/sc_hsm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/hsm/sc_hsm.c b/src/hsm/sc_hsm.c index a753305..b321f82 100644 --- a/src/hsm/sc_hsm.c +++ b/src/hsm/sc_hsm.c @@ -1637,6 +1637,8 @@ static int cmd_decrypt_asym() { file_t *ef = search_dynamic_file((KEY_PREFIX << 8) | key_id); if (!ef) return SW_FILE_NOT_FOUND(); + if (get_key_counter(ef) == 0) + return SW_FILE_FULL(); if (P2(apdu) == ALGO_RSA_DECRYPT) { mbedtls_rsa_context ctx; mbedtls_rsa_init(&ctx); @@ -1702,6 +1704,7 @@ static int cmd_decrypt_asym() { } else return SW_WRONG_P1P2(); + decrement_key_counter(ef); return SW_OK(); }