mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 02:37:28 +02:00
Merge pull request #6889 from SparkiDev/sm2_priv_import_range
ECC SM2 import private key: check less than order-1
This commit is contained in:
@ -10883,6 +10883,13 @@ int wc_ecc_import_private_key_ex(const byte* priv, word32 privSz,
|
||||
if (ret == 0) {
|
||||
ret = mp_read_radix(order, key->dp->order, MP_RADIX_HEX);
|
||||
}
|
||||
#ifdef WOLFSSL_SM2
|
||||
/* SM2 curve: private key must be less than order-1. */
|
||||
if ((ret == 0) && (key->idx != ECC_CUSTOM_IDX) &&
|
||||
(ecc_sets[key->idx].id == ECC_SM2P256V1)) {
|
||||
ret = mp_sub_d(order, 1, order);
|
||||
}
|
||||
#endif
|
||||
if ((ret == 0) && (mp_cmp(key->k, order) != MP_LT)) {
|
||||
ret = ECC_PRIV_KEY_E;
|
||||
}
|
||||
|
Reference in New Issue
Block a user