AMD Random Number Generator Library
The AMD Random Number Generator Library is a pseudo-random number generator (PRNG) library. A PRNG produces a stream of variates that are independent and statistically indistinguishable from a random sequence. The AMD Random Number Generator Library provides a comprehensive set of statistical distribution functions which are founded on various underlying uniform distribution generators (base generators) including Wichmann-Hill and Mersenne Twister. The library contains five base generators and twenty-three distribution generators. In addition, users can supply a custom-built generator as the base generator for all of the distribution generators.
AMD Random Number Generator includes
- API to generate random numbers seeded by hardware-generated Cryptographically Secure Random Number Generator (CSRNG). The function uses AMD Secure RNG library to seed the Mersenne Twister base generator and generates uniform distribution random numbers.
AMD Secure RNG Library
The AMD Secure Random Number Generator (RNG) is a library that provides APIs to access the cryptographically secure random numbers generated by AMD’s hardware-based random number generator implementation. These are high quality robust random numbers designed to be suitable for cryptographic applications. The library makes use of RDRAND and RDSEED x86 instructions exposed by the AMD hardware. Applications can link to the library and invoke either a single or a stream of random numbers. The random numbers can be of 16-bit, 32-bit, 64-bit or arbitrary size bytes.
AMD Secure RNG includes
- APIs to verify support for RDRAND and RDSEED instructions on the target machine
- Retrieve 16-bit, 32-bit, 64-bit or arbitrary size bytes using RDRAND and RDSEED instructions
- APIs support retrial in case of any failure in RNG hardware
- Bug fixes and improvements
The package containing AMD Secure RNG Library source, binaries, examples, and documentation are available in the Downloads section below.
Refer here for prior versions of AMD RNG and Secure RNG documentation and downloads.