Module x86::random[][src]

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.