Add buffer and context clearing upon suspected FI

Signed-off-by: Andrzej Kurek <andrzej.kurek@arm.com>
This commit is contained in:
Andrzej Kurek 2020-07-08 03:19:02 -04:00
parent 0919b142b6
commit ca60937cf9
No known key found for this signature in database
GPG key ID: 89A90840DC388527
6 changed files with 36 additions and 4 deletions

View file

@ -165,11 +165,13 @@ int uECC_sign(const uint8_t *private_key, const uint8_t *message_hash,
r = uECC_sign_with_k(private_key, message_hash, hash_size, k, signature);
/* don't keep trying if a fault was detected */
if (r == UECC_FAULT_DETECTED) {
mbedtls_platform_memset(signature, 0, 2*NUM_ECC_BYTES);
return r;
}
if (r == UECC_SUCCESS) {
if (private_key_dup != private_key || message_hash_dup != message_hash ||
hash_size_dup != hash_size || signature_dup != signature) {
mbedtls_platform_memset(signature, 0, 2*NUM_ECC_BYTES);
return UECC_FAULT_DETECTED;
}
return UECC_SUCCESS;