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.

The package containing AMD Random Number Generator Library binaries, examples and documentation are available in the Downloads section below.

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.

Download:

File Name Version Size Launch Date OS Bitness Description
Binary Packages Compiled with AOCC 3.2

File Name

Version

3.1

Size

2.34 MB

Launch Date

12/10/2021

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

AOCC compiled AMD Random Number Generator Library binary package sha256 Checksum: 01021885e4231a0c623315e313a6a8e76fbcc79017ef130cbbae0a78fe780ac6

File Name

Version

3.1

Size

184 KB

Launch Date

12/10/2021

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

AOCC compiled AMD Secure Random Number Generator Library binary package sha256 Checksum: 58da213b36cc49137cceed9e38dcab4ce582984763681bfa698a67051054834d
Binary Packages Compiled with GCC 11.1

File Name

Version

3.1

Size

2.37 MB

Launch Date

12/10/2021

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

GCC compiled AMD Random Number Generator Library binary package sha256 Checksum: 8f6651af75603a973004d366d88631dcbf7a02d4c5eab8f0692659654f1185f1

File Name

Version

3.1

Size

184 KB

Launch Date

12/10/2021

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

GCC compiled AMD Secure Random Number Generator Library binary package sha256 Checksum: bc9d5d6696a4b67edc975d145af4b06130811faaebd41917215722fbf3adf4b1