xref: /aosp_15_r20/external/mbedtls/doxygen/input/doc_rng.h (revision 62c56f9862f102b96d72393aff6076c951fb8148)
1*62c56f98SSadaf Ebrahimi /**
2*62c56f98SSadaf Ebrahimi  * \file doc_rng.h
3*62c56f98SSadaf Ebrahimi  *
4*62c56f98SSadaf Ebrahimi  * \brief Random number generator (RNG) module documentation file.
5*62c56f98SSadaf Ebrahimi  */
6*62c56f98SSadaf Ebrahimi /*
7*62c56f98SSadaf Ebrahimi  *
8*62c56f98SSadaf Ebrahimi  *  Copyright The Mbed TLS Contributors
9*62c56f98SSadaf Ebrahimi  *  SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
10*62c56f98SSadaf Ebrahimi  */
11*62c56f98SSadaf Ebrahimi 
12*62c56f98SSadaf Ebrahimi /**
13*62c56f98SSadaf Ebrahimi  * @addtogroup rng_module Random number generator (RNG) module
14*62c56f98SSadaf Ebrahimi  *
15*62c56f98SSadaf Ebrahimi  * The Random number generator (RNG) module provides random number
16*62c56f98SSadaf Ebrahimi  * generation, see \c mbedtls_ctr_drbg_random().
17*62c56f98SSadaf Ebrahimi  *
18*62c56f98SSadaf Ebrahimi  * The block-cipher counter-mode based deterministic random
19*62c56f98SSadaf Ebrahimi  * bit generator (CTR_DBRG) as specified in NIST SP800-90. It needs an external
20*62c56f98SSadaf Ebrahimi  * source of entropy. For these purposes \c mbedtls_entropy_func() can be used.
21*62c56f98SSadaf Ebrahimi  * This is an implementation based on a simple entropy accumulator design.
22*62c56f98SSadaf Ebrahimi  *
23*62c56f98SSadaf Ebrahimi  * Meaning that there seems to be no practical algorithm that can guess
24*62c56f98SSadaf Ebrahimi  * the next bit with a probability larger than 1/2 in an output sequence.
25*62c56f98SSadaf Ebrahimi  *
26*62c56f98SSadaf Ebrahimi  * This module can be used to generate random numbers.
27*62c56f98SSadaf Ebrahimi  */
28