Cryptographically relevant random numbers.
More...
#include <secure.h>
Static Public Member Functions |
static size_t | fill (unsigned char *memory, size_t size) |
| Fill memory with pseudo-random values.
|
static int | get (void) |
| Get a pseudo-random integer, range 0 - 32767.
|
static int | get (int min, int max) |
| Get a pseudo-random integer in a preset range.
|
static size_t | key (unsigned char *memory, size_t size) |
| Get high-entropy random data.
|
static double | real (void) |
| Get a pseudo-random floating point value.
|
static double | real (double min, double max) |
| Get a pseudo-random floating point value in a preset range.
|
static bool | seed (const unsigned char *buffer, size_t size) |
| Push entropic seed.
|
static void | seed (void) |
| Re-seed pseudo-random generation and entropy pools.
|
static bool | status (void) |
| Determine if we have sufficient entropy to return random values.
|
static void | uuid (char *string) |
| Create 36 character random uuid string.
|
static String | uuid (void) |
Detailed Description
Cryptographically relevant random numbers.
This is used both to gather entropy pools and pseudo-random values.
- Author:
- David Sugar <dyfet@gnutelephony.org>
Member Function Documentation
static size_t ucommon::Random::fill |
( |
unsigned char * |
memory, |
|
|
size_t |
size |
|
) |
| [static] |
Fill memory with pseudo-random values.
This is used as the basis for all get and real operations and does not depend on seed entropy.
- Parameters:
-
memory | buffer to fill. |
size | of buffer to fill. |
- Returns:
- number of bytes set.
static int ucommon::Random::get |
( |
void |
| ) |
[static] |
Get a pseudo-random integer, range 0 - 32767.
- Returns:
- random integer.
static int ucommon::Random::get |
( |
int |
min, |
|
|
int |
max |
|
) |
| [static] |
Get a pseudo-random integer in a preset range.
- Parameters:
-
min | value of random integer. |
max | value of random integer. |
- Returns:
- random value from min to max.
static size_t ucommon::Random::key |
( |
unsigned char * |
memory, |
|
|
size_t |
size |
|
) |
| [static] |
Get high-entropy random data.
This is often used to initialize keys. This operation may block if there is insufficient entropy immediately available.
- Parameters:
-
memory | buffer to fill. |
size | of buffer. |
- Returns:
- number of bytes filled.
static double ucommon::Random::real |
( |
void |
| ) |
[static] |
Get a pseudo-random floating point value.
- Returns:
- psudo-random value 0 to 1.
static double ucommon::Random::real |
( |
double |
min, |
|
|
double |
max |
|
) |
| [static] |
Get a pseudo-random floating point value in a preset range.
- Parameters:
-
min | value of random floating point number. |
max | value of random floating point number. |
- Returns:
- random value from min to max.
static bool ucommon::Random::seed |
( |
const unsigned char * |
buffer, |
|
|
size_t |
size |
|
) |
| [static] |
Push entropic seed.
- Parameters:
-
buffer | of random data to push. |
size | of buffer. |
- Returns:
- true if successful.
static bool ucommon::Random::status |
( |
void |
| ) |
[static] |
Determine if we have sufficient entropy to return random values.
- Returns:
- true if sufficient entropy.
static void ucommon::Random::uuid |
( |
char * |
string | ) |
[static] |
Create 36 character random uuid string.
- Parameters:
-
string | to write uuid into, must be 37 bytes or more. |
The documentation for this class was generated from the following file: