mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 10:47:28 +02:00
Add missed step in DH key pair generation.
This commit is contained in:
@ -1144,10 +1144,16 @@ static int GeneratePrivateDh186(DhKey* key, WC_RNG* rng, byte* priv,
|
|||||||
ForceZero(cBuf, cSz);
|
ForceZero(cBuf, cSz);
|
||||||
XFREE(cBuf, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(cBuf, key->heap, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
|
|
||||||
/* tmpQ: M = 2^N - 1 */
|
/* tmpQ: M = min(2^N,q) - 1 */
|
||||||
if (err == MP_OKAY)
|
if (err == MP_OKAY)
|
||||||
err = mp_2expt(tmpQ, *privSz * 8);
|
err = mp_2expt(tmpQ, *privSz * 8);
|
||||||
|
|
||||||
|
if (err == MP_OKAY) {
|
||||||
|
if (mp_cmp(tmpQ, &key->q) == MP_GT) {
|
||||||
|
err = mp_copy(&key->q, tmpQ);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (err == MP_OKAY)
|
if (err == MP_OKAY)
|
||||||
err = mp_sub_d(tmpQ, 1, tmpQ);
|
err = mp_sub_d(tmpQ, 1, tmpQ);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user