diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2011-09-29 18:22:37 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2011-09-29 18:22:37 +0000 |
commit | 55831cd6eed2624c48d596ee5fafb2ab44660db9 (patch) | |
tree | 6407889c0ebd3da62686bfc3f1fd8122b1f6dcae /fips | |
parent | 884c33b5c4ddfa893006628a33a165545ce27d42 (diff) |
Remove s = s * P deferral.
Diffstat (limited to 'fips')
-rw-r--r-- | fips/rand/fips_drbg_ec.c | 20 | ||||
-rw-r--r-- | fips/rand/fips_rand_lcl.h | 2 |
2 files changed, 2 insertions, 20 deletions
diff --git a/fips/rand/fips_drbg_ec.c b/fips/rand/fips_drbg_ec.c index c4d7612d6c..6be6534ce7 100644 --- a/fips/rand/fips_drbg_ec.c +++ b/fips/rand/fips_drbg_ec.c @@ -241,13 +241,6 @@ static int drbg_ec_reseed(DRBG_CTX *dctx, const unsigned char *adin, size_t adin_len) { DRBG_EC_CTX *ectx = &dctx->d.ec; - /* Check if we have a deferred s = s * P */ - if (ectx->sp_defer) - { - if (!drbg_ec_mul(ectx, ectx->s, ectx->s, 0)) - return 0; - ectx->sp_defer = 0; - } /* Convert s value to a binary buffer. Save it to tbuf as we are * about to overwrite it. */ @@ -278,13 +271,6 @@ static int drbg_ec_generate(DRBG_CTX *dctx, dctx->status = DRBG_STATUS_RESEED; return 1; } - /* Check if we have a deferred s = s * P */ - if (ectx->sp_defer) - { - if (!drbg_ec_mul(ectx, s, s, 0)) - goto err; - ectx->sp_defer = 0; - } BN_CTX_start(ectx->bctx); r = BN_CTX_get(ectx->bctx); @@ -371,8 +357,8 @@ static int drbg_ec_generate(DRBG_CTX *dctx, hexprint(stderr, out, dctx->blocklength); #endif } - /* Defer s = s * P until we need it */ - ectx->sp_defer = 1; + if (!drbg_ec_mul(ectx, ectx->s, ectx->s, 0)) + return 0; #ifdef EC_DRBG_TRACE bnprint(stderr, "s after generate is: ", s); #endif @@ -534,8 +520,6 @@ int fips_drbg_ec_init(DRBG_CTX *dctx) ectx->Q = EC_POINT_new(ectx->curve); ectx->ptmp = EC_POINT_new(ectx->curve); - ectx->sp_defer = 0; - x = BN_CTX_get(ectx->bctx); y = BN_CTX_get(ectx->bctx); diff --git a/fips/rand/fips_rand_lcl.h b/fips/rand/fips_rand_lcl.h index fc649c003b..e03537bd5f 100644 --- a/fips/rand/fips_rand_lcl.h +++ b/fips/rand/fips_rand_lcl.h @@ -116,8 +116,6 @@ struct drbg_ec_ctx_st EVP_MD_CTX mctx; /* Temporary value storage: should always exceed max digest length */ unsigned char vtmp[EC_PRNG_MAX_SEEDLEN]; - /* Flag to indicate s = s * P has been deferred */ - int sp_defer; /* Temp BN context */ BN_CTX *bctx; }; |