From: Dr. Matthias St. Pierre Date: Sun, 13 Sep 2020 22:47:26 +0000 (+0200) Subject: drbg: revert renamings of the generate and reseed counter X-Git-Tag: openssl-3.0.0-alpha7~136 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b0614f0ae3c33182ad184dc82056b22aebf42956;p=thirdparty%2Fopenssl.git drbg: revert renamings of the generate and reseed counter The original names were more intuitive: the generate_counter counts the number of generate requests, and the reseed_counter counts the number of reseedings (of the principal DRBG). reseed_gen_counter -> generate_counter reseed_prop_counter -> reseed_counter This is the anologue to commit 8380f453ec81 on the 1.1.1 stable branch. The only difference is that the second renaming has already been reverted on the master branch. Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/12941) --- diff --git a/doc/man3/EVP_RAND.pod b/doc/man3/EVP_RAND.pod index b7b836f03e1..25dbf803756 100644 --- a/doc/man3/EVP_RAND.pod +++ b/doc/man3/EVP_RAND.pod @@ -289,7 +289,7 @@ seed the DRBG. Specify the minimum and maximum number of bytes of personalisation string that can be used with the DRBG. -=item "reseed_counter" (B) +=item "reseed_counter" (B) Specifies the number of times the DRBG has been seeded or reseeded. diff --git a/doc/man7/EVP_RAND-CTR-DRBG.pod b/doc/man7/EVP_RAND-CTR-DRBG.pod index e35703670f0..d8e2d4f2aac 100644 --- a/doc/man7/EVP_RAND-CTR-DRBG.pod +++ b/doc/man7/EVP_RAND-CTR-DRBG.pod @@ -42,7 +42,7 @@ The supported parameters are: =item "max_adinlen" (B) -=item "reseed_counter" (B) +=item "reseed_counter" (B) =item "properties" (B) diff --git a/doc/man7/EVP_RAND-HASH-DRBG.pod b/doc/man7/EVP_RAND-HASH-DRBG.pod index 879384993e6..b85010dd41d 100644 --- a/doc/man7/EVP_RAND-HASH-DRBG.pod +++ b/doc/man7/EVP_RAND-HASH-DRBG.pod @@ -42,7 +42,7 @@ The supported parameters are: =item "max_adinlen" (B) -=item "reseed_counter" (B) +=item "reseed_counter" (B) =item "properties" (B) diff --git a/doc/man7/EVP_RAND-HMAC-DRBG.pod b/doc/man7/EVP_RAND-HMAC-DRBG.pod index 31b17a97bab..e9620783b09 100644 --- a/doc/man7/EVP_RAND-HMAC-DRBG.pod +++ b/doc/man7/EVP_RAND-HMAC-DRBG.pod @@ -42,7 +42,7 @@ The supported parameters are: =item "max_adinlen" (B) -=item "reseed_counter" (B) +=item "reseed_counter" (B) =item "properties" (B) diff --git a/doc/man7/EVP_RAND-TEST-RAND.pod b/doc/man7/EVP_RAND-TEST-RAND.pod index 4736b5a976a..9eb7001d645 100644 --- a/doc/man7/EVP_RAND-TEST-RAND.pod +++ b/doc/man7/EVP_RAND-TEST-RAND.pod @@ -44,7 +44,7 @@ These parameter works as described in L. =item "max_adinlen" (B) -=item "reseed_counter" (B) +=item "reseed_counter" (B) These parameters work as described in L, except that they can all be set as well as read. diff --git a/doc/man7/provider-rand.pod b/doc/man7/provider-rand.pod index 8b310726ffd..d75a36d01ea 100644 --- a/doc/man7/provider-rand.pod +++ b/doc/man7/provider-rand.pod @@ -208,7 +208,7 @@ instantiate the DRBG. Specify the minimum and maximum number of bytes of personalisation string that can be used with the DRBG. -=item "reseed_counter" (B) +=item "reseed_counter" (B) Specifies the number of times the DRBG has been seeded or reseeded. diff --git a/include/openssl/core_names.h b/include/openssl/core_names.h index 76902695f0c..a8d4d515330 100644 --- a/include/openssl/core_names.h +++ b/include/openssl/core_names.h @@ -229,7 +229,7 @@ extern "C" { #define OSSL_DRBG_PARAM_MAX_NONCELEN "max_noncelen" #define OSSL_DRBG_PARAM_MAX_PERSLEN "max_perslen" #define OSSL_DRBG_PARAM_MAX_ADINLEN "max_adinlen" -#define OSSL_DRBG_PARAM_RESEED_CTR "reseed_counter" +#define OSSL_DRBG_PARAM_RESEED_COUNTER "reseed_counter" #define OSSL_DRBG_PARAM_RESEED_TIME "reseed_time" #define OSSL_DRBG_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES #define OSSL_DRBG_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST diff --git a/providers/implementations/rands/drbg.c b/providers/implementations/rands/drbg.c index 5a41647b333..f97d8304786 100644 --- a/providers/implementations/rands/drbg.c +++ b/providers/implementations/rands/drbg.c @@ -112,7 +112,7 @@ static unsigned int get_parent_reseed_count(PROV_DRBG *drbg) void *parent = drbg->parent; unsigned int r; - *params = OSSL_PARAM_construct_uint(OSSL_DRBG_PARAM_RESEED_CTR, &r); + *params = OSSL_PARAM_construct_uint(OSSL_DRBG_PARAM_RESEED_COUNTER, &r); if (!drbg_lock_parent(drbg)) { ERR_raise(ERR_LIB_PROV, PROV_R_UNABLE_TO_LOCK_PARENT); goto err; @@ -500,7 +500,7 @@ int PROV_DRBG_instantiate(PROV_DRBG *drbg, unsigned int strength, } drbg->state = EVP_RAND_STATE_READY; - drbg->reseed_gen_counter = 1; + drbg->generate_counter = 1; drbg->reseed_time = time(NULL); tsan_store(&drbg->reseed_counter, drbg->reseed_next_counter); @@ -624,7 +624,7 @@ int PROV_DRBG_reseed(PROV_DRBG *drbg, int prediction_resistance, goto end; drbg->state = EVP_RAND_STATE_READY; - drbg->reseed_gen_counter = 1; + drbg->generate_counter = 1; drbg->reseed_time = time(NULL); tsan_store(&drbg->reseed_counter, drbg->reseed_next_counter); if (drbg->parent != NULL) @@ -692,7 +692,7 @@ int PROV_DRBG_generate(PROV_DRBG *drbg, unsigned char *out, size_t outlen, } if (drbg->reseed_interval > 0) { - if (drbg->reseed_gen_counter >= drbg->reseed_interval) + if (drbg->generate_counter >= drbg->reseed_interval) reseed_required = 1; } if (drbg->reseed_time_interval > 0) { @@ -721,7 +721,7 @@ int PROV_DRBG_generate(PROV_DRBG *drbg, unsigned char *out, size_t outlen, return 0; } - drbg->reseed_gen_counter++; + drbg->generate_counter++; return 1; } @@ -860,7 +860,7 @@ PROV_DRBG *prov_rand_drbg_new drbg->max_noncelen = DRBG_MAX_LENGTH; drbg->max_perslen = DRBG_MAX_LENGTH; drbg->max_adinlen = DRBG_MAX_LENGTH; - drbg->reseed_gen_counter = 1; + drbg->generate_counter = 1; drbg->reseed_counter = 1; drbg->reseed_interval = RESEED_INTERVAL; drbg->reseed_time_interval = TIME_INTERVAL; @@ -949,7 +949,7 @@ int drbg_get_ctx_params(PROV_DRBG *drbg, OSSL_PARAM params[]) if (p != NULL && !OSSL_PARAM_set_time_t(p, drbg->reseed_time_interval)) return 0; - p = OSSL_PARAM_locate(params, OSSL_DRBG_PARAM_RESEED_CTR); + p = OSSL_PARAM_locate(params, OSSL_DRBG_PARAM_RESEED_COUNTER); if (p != NULL && !OSSL_PARAM_set_uint(p, tsan_load(&drbg->reseed_counter))) return 0; diff --git a/providers/implementations/rands/drbg_hash.c b/providers/implementations/rands/drbg_hash.c index e5266dbb299..014b080f378 100644 --- a/providers/implementations/rands/drbg_hash.c +++ b/providers/implementations/rands/drbg_hash.c @@ -323,7 +323,7 @@ static int drbg_hash_generate(PROV_DRBG *drbg, { PROV_DRBG_HASH *hash = (PROV_DRBG_HASH *)drbg->data; unsigned char counter[4]; - int reseed_counter = drbg->reseed_gen_counter; + int reseed_counter = drbg->generate_counter; counter[0] = (unsigned char)((reseed_counter >> 24) & 0xff); counter[1] = (unsigned char)((reseed_counter >> 16) & 0xff); diff --git a/providers/implementations/rands/drbg_local.h b/providers/implementations/rands/drbg_local.h index 3129bba11dd..66539def428 100644 --- a/providers/implementations/rands/drbg_local.h +++ b/providers/implementations/rands/drbg_local.h @@ -150,7 +150,7 @@ struct prov_drbg_st { * (Starts at 1). This value is the reseed_counter as defined in * NIST SP 800-90Ar1 */ - unsigned int reseed_gen_counter; + unsigned int generate_counter; /* * Maximum number of generate requests until a reseed is required. * This value is ignored if it is zero. @@ -252,7 +252,7 @@ int drbg_set_ctx_params(PROV_DRBG *drbg, const OSSL_PARAM params[]); OSSL_PARAM_size_t(OSSL_DRBG_PARAM_MAX_NONCELEN, NULL), \ OSSL_PARAM_size_t(OSSL_DRBG_PARAM_MAX_PERSLEN, NULL), \ OSSL_PARAM_size_t(OSSL_DRBG_PARAM_MAX_ADINLEN, NULL), \ - OSSL_PARAM_uint(OSSL_DRBG_PARAM_RESEED_CTR, NULL), \ + OSSL_PARAM_uint(OSSL_DRBG_PARAM_RESEED_COUNTER, NULL), \ OSSL_PARAM_time_t(OSSL_DRBG_PARAM_RESEED_TIME, NULL), \ OSSL_PARAM_uint(OSSL_DRBG_PARAM_RESEED_REQUESTS, NULL), \ OSSL_PARAM_uint64(OSSL_DRBG_PARAM_RESEED_TIME_INTERVAL, NULL) diff --git a/providers/implementations/rands/test_rng.c b/providers/implementations/rands/test_rng.c index a0507f4d923..b2370e46f2b 100644 --- a/providers/implementations/rands/test_rng.c +++ b/providers/implementations/rands/test_rng.c @@ -236,7 +236,7 @@ static int test_rng_set_ctx_params(void *vdrbg, const OSSL_PARAM params[]) t->nonce_len = size; } - p = OSSL_PARAM_locate_const(params, OSSL_DRBG_PARAM_RESEED_CTR); + p = OSSL_PARAM_locate_const(params, OSSL_DRBG_PARAM_RESEED_COUNTER); if (p != NULL) { if (!OSSL_PARAM_get_uint(p, &uint)) return 0; @@ -277,7 +277,7 @@ static const OSSL_PARAM *test_rng_settable_ctx_params(ossl_unused void *provctx) OSSL_PARAM_size_t(OSSL_DRBG_PARAM_MAX_NONCELEN, NULL), OSSL_PARAM_size_t(OSSL_DRBG_PARAM_MAX_PERSLEN, NULL), OSSL_PARAM_size_t(OSSL_DRBG_PARAM_MAX_ADINLEN, NULL), - OSSL_PARAM_uint(OSSL_DRBG_PARAM_RESEED_CTR, NULL), + OSSL_PARAM_uint(OSSL_DRBG_PARAM_RESEED_COUNTER, NULL), OSSL_PARAM_time_t(OSSL_DRBG_PARAM_RESEED_TIME, NULL), OSSL_PARAM_DRBG_SETTABLE_CTX_COMMON, OSSL_PARAM_END