Home
last modified time | relevance | path

Searched refs:drbg (Results 1 – 23 of 23) sorted by relevance

/freebsd/crypto/openssl/providers/implementations/rands/
H A Ddrbg.c44 static int rand_drbg_restart(PROV_DRBG *drbg);
48 PROV_DRBG *drbg = vctx; in ossl_drbg_lock() local
50 if (drbg == NULL || drbg->lock == NULL) in ossl_drbg_lock()
52 return CRYPTO_THREAD_write_lock(drbg->lock); in ossl_drbg_lock()
57 PROV_DRBG *drbg = vctx; in ossl_drbg_unlock() local
59 if (drbg != NULL && drbg->lock != NULL) in ossl_drbg_unlock()
60 CRYPTO_THREAD_unlock(drbg->lock); in ossl_drbg_unlock()
63 static int ossl_drbg_lock_parent(PROV_DRBG *drbg) in ossl_drbg_lock_parent() argument
65 void *parent = drbg->parent; in ossl_drbg_lock_parent()
68 && drbg->parent_lock != NULL in ossl_drbg_lock_parent()
[all …]
H A Ddrbg_hash.c67 static int hash_df(PROV_DRBG *drbg, unsigned char *out, in hash_df() argument
73 PROV_DRBG_HASH *hash = (PROV_DRBG_HASH *)drbg->data; in hash_df()
79 size_t outlen = drbg->seedlen; in hash_df()
131 static int hash_df1(PROV_DRBG *drbg, unsigned char *out, in hash_df1() argument
135 return hash_df(drbg, out, in_byte, in1, in1len, NULL, 0, NULL, 0); in hash_df1()
142 * where dst size is drbg->seedlen, and inlen <= drbg->seedlen.
144 static int add_bytes(PROV_DRBG *drbg, unsigned char *dst, in add_bytes() argument
152 assert(drbg->seedlen >= 1 && inlen >= 1 && inlen <= drbg in add_bytes()
175 add_hash_to_v(PROV_DRBG * drbg,unsigned char inbyte,const unsigned char * adin,size_t adinlen) add_hash_to_v() argument
207 hash_gen(PROV_DRBG * drbg,unsigned char * out,size_t outlen) hash_gen() argument
248 drbg_hash_instantiate(PROV_DRBG * drbg,const unsigned char * ent,size_t ent_len,const unsigned char * nonce,size_t nonce_len,const unsigned char * pstr,size_t pstr_len) drbg_hash_instantiate() argument
272 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hash_instantiate_wrapper() local
288 drbg_hash_reseed(PROV_DRBG * drbg,const unsigned char * ent,size_t ent_len,const unsigned char * adin,size_t adin_len) drbg_hash_reseed() argument
308 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hash_reseed_wrapper() local
323 drbg_hash_generate(PROV_DRBG * drbg,unsigned char * out,size_t outlen,const unsigned char * adin,size_t adin_len) drbg_hash_generate() argument
356 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hash_generate_wrapper() local
362 drbg_hash_uninstantiate(PROV_DRBG * drbg) drbg_hash_uninstantiate() argument
379 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hash_verify_zeroization() local
420 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hash_free() local
433 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hash_get_ctx_params() local
[all...]
H A Ddrbg_hmac.c84 * Updates the drbg objects Key(K) and Value(V) using the following algorithm:
94 static int drbg_hmac_update(PROV_DRBG *drbg, in drbg_hmac_update() argument
99 PROV_DRBG_HMAC *hmac = (PROV_DRBG_HMAC *)drbg->data; in drbg_hmac_update()
114 * This sets the drbg Key (K) to all zeros, and Value (V) to all 1's.
122 static int drbg_hmac_instantiate(PROV_DRBG *drbg, in drbg_hmac_instantiate() argument
127 PROV_DRBG_HMAC *hmac = (PROV_DRBG_HMAC *)drbg->data; in drbg_hmac_instantiate()
139 return drbg_hmac_update(drbg, ent, ent_len, nonce, nonce_len, pstr, in drbg_hmac_instantiate()
149 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; in drbg_hmac_instantiate_wrapper() local
151 if (!ossl_prov_is_running() || !drbg_hmac_set_ctx_params(drbg, params)) in drbg_hmac_instantiate_wrapper()
153 return ossl_prov_drbg_instantiate(drbg, strengt in drbg_hmac_instantiate_wrapper()
167 drbg_hmac_reseed(PROV_DRBG * drbg,const unsigned char * ent,size_t ent_len,const unsigned char * adin,size_t adin_len) drbg_hmac_reseed() argument
179 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hmac_reseed_wrapper() local
194 drbg_hmac_generate(PROV_DRBG * drbg,unsigned char * out,size_t outlen,const unsigned char * adin,size_t adin_len) drbg_hmac_generate() argument
244 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hmac_generate_wrapper() local
250 drbg_hmac_uninstantiate(PROV_DRBG * drbg) drbg_hmac_uninstantiate() argument
266 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hmac_verify_zeroization() local
274 drbg_hmac_new(PROV_DRBG * drbg) drbg_hmac_new() argument
306 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hmac_free() local
319 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_hmac_get_ctx_params() local
[all...]
H A Ddrbg_ctr.c259 __owur static int ctr_update(PROV_DRBG *drbg, in ctr_update() argument
264 PROV_DRBG_CTR *ctr = (PROV_DRBG_CTR *)drbg->data; in ctr_update()
293 ctr_XOR(ctr, ctr->KX, drbg->seedlen); in ctr_update()
305 static int drbg_ctr_instantiate(PROV_DRBG *drbg, in drbg_ctr_instantiate() argument
310 PROV_DRBG_CTR *ctr = (PROV_DRBG_CTR *)drbg->data; in drbg_ctr_instantiate()
321 if (!ctr_update(drbg, entropy, entropylen, pers, perslen, nonce, noncelen)) in drbg_ctr_instantiate()
332 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; in drbg_ctr_instantiate_wrapper() local
334 if (!ossl_prov_is_running() || !drbg_ctr_set_ctx_params(drbg, params)) in drbg_ctr_instantiate_wrapper()
336 return ossl_prov_drbg_instantiate(drbg, strength, prediction_resistance, in drbg_ctr_instantiate_wrapper()
340 static int drbg_ctr_reseed(PROV_DRBG *drbg, in drbg_ctr_reseed() argument
359 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_ctr_reseed_wrapper() local
377 drbg_ctr_generate(PROV_DRBG * drbg,unsigned char * out,size_t outlen,const unsigned char * adin,size_t adinlen) drbg_ctr_generate() argument
456 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_ctr_generate_wrapper() local
462 drbg_ctr_uninstantiate(PROV_DRBG * drbg) drbg_ctr_uninstantiate() argument
481 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_ctr_verify_zeroization() local
493 drbg_ctr_init_lengths(PROV_DRBG * drbg) drbg_ctr_init_lengths() argument
526 drbg_ctr_init(PROV_DRBG * drbg) drbg_ctr_init() argument
587 drbg_ctr_new(PROV_DRBG * drbg) drbg_ctr_new() argument
612 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_ctr_free() local
629 PROV_DRBG *drbg = (PROV_DRBG *)vdrbg; drbg_ctr_get_ctx_params() local
[all...]
H A Ddrbg_local.h78 int (*instantiate)(PROV_DRBG *drbg,
83 int (*reseed)(PROV_DRBG *drbg, const unsigned char *ent, size_t ent_len,
102 * reseeded. The DRBG reseeds automatically whenever drbg->fork_id !=
185 int (*instantiate)(PROV_DRBG *drbg,
190 int (*reseed)(PROV_DRBG *drbg, const unsigned char *ent, size_t ent_len,
194 void ossl_rand_drbg_free(PROV_DRBG *drbg);
196 int ossl_prov_drbg_instantiate(PROV_DRBG *drbg, unsigned int strength,
200 int ossl_prov_drbg_uninstantiate(PROV_DRBG *drbg);
202 int ossl_prov_drbg_reseed(PROV_DRBG *drbg, int prediction_resistance,
206 int ossl_prov_drbg_generate(PROV_DRBG *drbg, unsigne
[all...]
H A Dcrngt.c102 size_t ossl_crngt_get_entropy(PROV_DRBG *drbg, in ossl_crngt_get_entropy() argument
114 OSSL_LIB_CTX *libctx = ossl_prov_ctx_get0_libctx(drbg->provctx); in ossl_crngt_get_entropy()
129 if (!crngt_get_entropy(drbg->provctx, crngt_glob->md, buf, in ossl_crngt_get_entropy()
164 if (!crngt_get_entropy(drbg->provctx, crngt_glob->md, entbuf, md, &sz)) in ossl_crngt_get_entropy()
194 void ossl_crngt_cleanup_entropy(ossl_unused PROV_DRBG *drbg, in ossl_crngt_cleanup_entropy() argument
H A Dbuild.info5 SOURCE[$RANDS_GOAL]=drbg.c test_rng.c drbg_ctr.c drbg_hash.c drbg_hmac.c crngt.c
/freebsd/crypto/openssl/crypto/rand/
H A Drand_meth.c17 EVP_RAND_CTX *drbg = RAND_get0_primary(NULL); in drbg_add() local
19 if (drbg == NULL || num <= 0) in drbg_add()
22 return EVP_RAND_reseed(drbg, 0, NULL, 0, buf, num); in drbg_add()
34 EVP_RAND_CTX *drbg = RAND_get0_primary(NULL); in drbg_status() local
36 if (drbg == NULL) in drbg_status()
39 return EVP_RAND_get_state(drbg) == EVP_RAND_STATE_READY ? 1 : 0; in drbg_status()
45 EVP_RAND_CTX *drbg = RAND_get0_public(NULL); in drbg_bytes() local
47 if (drbg == NULL) in drbg_bytes()
50 return EVP_RAND_generate(drbg, out, count, 0, 0, NULL, 0); in drbg_bytes()
H A Drand_lib.c247 EVP_RAND_CTX *drbg; in RAND_seed() local
257 drbg = RAND_get0_primary(NULL); in RAND_seed()
258 if (drbg != NULL && num > 0) in RAND_seed()
259 EVP_RAND_reseed(drbg, 0, NULL, 0, buf, num); in RAND_seed()
264 EVP_RAND_CTX *drbg; in RAND_add() local
273 drbg = RAND_get0_primary(NULL); in RAND_add()
274 if (drbg != NULL && num > 0) in RAND_add()
277 EVP_RAND_reseed(drbg, 0, buf, num, NULL, 0); in RAND_add()
280 EVP_RAND_reseed(drbg, 0, NULL, 0, buf, num); in RAND_add()
818 int RAND_set_DRBG_type(OSSL_LIB_CTX *ctx, const char *drbg, const char *propq, in RAND_set_DRBG_type() argument
[all …]
/freebsd/crypto/openssl/test/
H A Ddrbgtest.c48 static int gen_bytes(EVP_RAND_CTX *drbg, unsigned char *buf, int num) in gen_bytes() argument
60 if (drbg != NULL) in gen_bytes()
61 return EVP_RAND_generate(drbg, buf, num, 0, 0, NULL, 0); in gen_bytes()
82 static int state(EVP_RAND_CTX *drbg) in state() argument
84 return EVP_RAND_get_state(drbg); in state()
87 static unsigned int query_rand_uint(EVP_RAND_CTX *drbg, const char *name) in query_rand_uint() argument
93 if (EVP_RAND_CTX_get_params(drbg, params)) in query_rand_uint()
99 static unsigned int name(EVP_RAND_CTX *drbg) \
101 return query_rand_uint(drbg, #name); \
105 static PROV_DRBG *prov_rand(EVP_RAND_CTX *drbg) in DRBG_UINT()
[all …]
/freebsd/crypto/openssl/test/recipes/
H A D20-test_rand_config.t19 { drbg => 'HASH-DRBG',
25 { drbg => 'HASH-DRBG',
31 { drbg => 'HMAC-DRBG',
45 { drbg => 'CTR-DRBG',
51 { drbg => 'CTR-DRBG',
75 if ($_->{drbg}) {
/freebsd/crypto/openssl/providers/fips/
H A Dself_test_kats.c256 EVP_RAND_CTX *test = NULL, *drbg = NULL; in self_test_drbg() local
283 drbg = EVP_RAND_CTX_new(rand, test); in self_test_drbg()
285 if (drbg == NULL) in self_test_drbg()
288 strength = EVP_RAND_get_strength(drbg); in self_test_drbg()
295 if (!EVP_RAND_CTX_set_params(drbg, drbg_params)) in self_test_drbg()
307 if (!EVP_RAND_instantiate(drbg, strength, 0, t->persstr, t->persstrlen, in self_test_drbg()
318 if (!EVP_RAND_generate(drbg, out, t->expectedlen, strength, in self_test_drbg()
334 if (!EVP_RAND_generate(drbg, out, t->expectedlen, strength, in self_test_drbg()
344 if (!EVP_RAND_uninstantiate(drbg)) in self_test_drbg()
350 if (!EVP_RAND_verify_zeroization(drbg)) in self_test_drbg()
[all …]
H A Dself_test_data.inc615 * https://csrc.nist.rip/groups/STM/cavp/documents/drbg/drbgtestvectors.zip
/freebsd/contrib/bearssl/src/ec/
H A Decdsa_i15_sign_raw.c52 br_hmac_drbg_context drbg; in br_ecdsa_i15_sign_raw() local
118 br_hmac_drbg_init(&drbg, hf, tt, nlen << 1); in br_ecdsa_i15_sign_raw()
120 br_hmac_drbg_generate(&drbg, tt, nlen); in br_ecdsa_i15_sign_raw()
H A Decdsa_i31_sign_raw.c51 br_hmac_drbg_context drbg; in br_ecdsa_i31_sign_raw() local
117 br_hmac_drbg_init(&drbg, hf, tt, nlen << 1); in br_ecdsa_i31_sign_raw()
119 br_hmac_drbg_generate(&drbg, tt, nlen); in br_ecdsa_i31_sign_raw()
/freebsd/crypto/openssl/doc/man3/
H A DRAND_set_DRBG_type.pod13 int RAND_set_DRBG_type(OSSL_LIB_CTX *ctx, const char *drbg, const char *propq,
21 used within the library context I<ctx>. A generator of name I<drbg>
/freebsd/crypto/openssl/include/openssl/
H A Drand.h86 int RAND_set_DRBG_type(OSSL_LIB_CTX *ctx, const char *drbg, const char *propq,
/freebsd/crypto/openssl/crypto/err/
H A Dopenssl.txt985 PROV_R_ERROR_INSTANTIATING_DRBG:188:error instantiating drbg
1002 PROV_R_INSUFFICIENT_DRBG_STRENGTH:181:insufficient drbg strength
1071 PROV_R_REQUEST_TOO_LARGE_FOR_DRBG:196:request too large for drbg
1105 RAND_R_DRBG_ALREADY_INITIALIZED:129:drbg already initialized
1106 RAND_R_DRBG_NOT_INITIALISED:104:drbg not initialised
1110 RAND_R_ERROR_INITIALISING_DRBG:107:error initialising drbg
1111 RAND_R_ERROR_INSTANTIATING_DRBG:108:error instantiating drbg
1119 RAND_R_INSUFFICIENT_DRBG_STRENGTH:139:insufficient drbg strength
1124 RAND_R_NO_DRBG_IMPLEMENTATION_SELECTED:128:no drbg implementation selected
1133 RAND_R_REQUEST_TOO_LARGE_FOR_DRBG:117:request too large for drbg
[all …]
/freebsd/crypto/openssl/apps/
H A Dlist.c429 static void display_random(const char *name, EVP_RAND_CTX *drbg) in display_random() argument
439 if (drbg != NULL) { in display_random()
440 rand = EVP_RAND_CTX_get0_rand(drbg); in display_random()
446 switch (EVP_RAND_get_state(drbg)) { in display_random()
484 if (EVP_RAND_CTX_get_params(drbg, params)) in display_random()
/freebsd/crypto/openssl/providers/
H A Dfips.module.sources583 providers/implementations/rands/drbg.c
H A Dfips-sources.checksums583 …255fc57ef5739aa2584e535195e38cc947e31fd044d28d64c28c8a946ce providers/implementations/rands/drbg.c
/freebsd/secure/lib/libcrypto/
H A DMakefile443 SRCS+= crngt.c drbg.c drbg_ctr.c drbg_hash.c drbg_hmac.c test_rng.c
/freebsd/crypto/openssl/test/recipes/30-test_evp_data/
H A Devprand.txt32 …v/CSRC/media/Projects/Cryptographic-Algorithm-Validation-Program/documents/drbg/drbgtestvectors.zip