Module random

Source
Expand description

Instructions to generate random bits directly from the hardware (RDRAND and RDSEED).

The decision process for which instruction to use is based on what the output will be used for. If you wish to seed another pseudorandom number generator (PRNG), use RDSEED. For all other purposes, use RDRAND

See also: https://software.intel.com/en-us/blogs/2012/11/17/the-difference-between-rdrand-and-rdseed

  • RDRAND: Cryptographically secure pseudorandom number generator NIST:SP 800-90A
  • RDSEED: Non-deterministic random bit generator NIST: SP 800-90B & C (drafts)

Traits§

RdRand
RdRand trait to implement the generic rdrand_slice function.
RdSeed
RdSeed trait to implement the generic rdseed_slice function.

Functions§

rdrand16
Generates a 16-bit random value and stores it in e.
rdrand32
Generates a 32-bit random value and stores it in e.
rdrand64
Generates a 64-bit random value and stores it in e.
rdrand_slice
Fill a slice with random values.
rdseed16
Generates a 16-bit random value and stores it in e.
rdseed32
Generates a 32-bit random value and stores it in e.
rdseed64
Generates a 64-bit random value and stores it in e.
rdseed_slice
Fill a slice with random values.