diff --git a/wolfcrypt/src/ecc.c b/wolfcrypt/src/ecc.c index e4aec5380..aeca14cc2 100644 --- a/wolfcrypt/src/ecc.c +++ b/wolfcrypt/src/ecc.c @@ -5118,9 +5118,15 @@ int wc_ecc_sign_set_k(const byte* k, word32 klen, ecc_key* key) if (key->sign_k == NULL) { ret = MEMORY_E; } + else { + XMEMSET(key->sign_k, 0, sizeof(mp_int)); + } } } + if (ret == 0) { + ret = mp_init(key->sign_k); + } if (ret == 0) { ret = mp_read_unsigned_bin(key->sign_k, k, klen); }