PolarSSL is now part of ARM Official announcement and rebranded as mbed TLS.

API Documentation (Doxygen generated)

These pages are generated with doxygen directly from the source code!

Random number generator (RNG) module

The Random number generator (RNG) module provides random number generation, see mbedtls_ctr_drbg_random(). More...

The Random number generator (RNG) module provides random number generation, see mbedtls_ctr_drbg_random().

The block-cipher counter-mode based deterministic random bit generator (CTR_DBRG) as specified in NIST SP800-90. It needs an external source of entropy. For these purposes mbedtls_entropy_func() can be used. This is an implementation based on a simple entropy accumulator design.

The other number generator that is included is less strong and uses the HAVEGE (HArdware Volatile Entropy Gathering and Expansion) software heuristic which considered unsafe for primary usage, but provides additional random to the entropy pool if enables.

Meaning that there seems to be no practical algorithm that can guess the next bit with a probability larger than 1/2 in an output sequence.

This module can be used to generate random numbers.