AMD Random Number Generator Library

AMD Random Number Generator Library is a pseudorandom number generator library. A pseudo-random number generator (PRNG) produces a stream of variates that are independent and statistically indistinguishable from a random sequence. 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 just 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.

Highlights of AMD Secure RNG 2.2

  • 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.

Download:

Refer here for older versions.

Note: Below binary packages are generated and validated with following configuration. If user needs to use with other configuration, we recommend to build the required library from source as per instructions provided in user guide.

OS ( 18.04) , GCC ( 9.3), AOCC ( 2.2), OpenMPI(3.1.1), OpenMP(4.5), Glibc(2.27), Python(2.7)

File Name Version Size Launch Date OS Bitness Description
AOCC compiled binary packages

File Name

Version

2.2

Size

2.4 MB

Launch Date

06/30/2020

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

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

File Name

Version

2.2

Size

532 KB

Launch Date

06/30/2020

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

AOCC compiled AMD Random Number Generator Library binary package sha256 Checksum : 62688a38a46b3205561378939c28d43f81bbd0c99b18b74b3cea1debb48210f7
GCC compiled binary packages

File Name

Version

2.2

Size

2.4 MB

Launch Date

06/30/2020

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

GCC compiled AMD Random Number Generator Library binary package sha256 Checksum : 1eb1904e9ea4b4aea66ff988c23c1a18901edfb3f90790d7f4d774aab2de5e14

File Name

Version

2.2

Size

531 KB

Launch Date

06/30/2020

OS

Ubuntu, SLES, CentOS, RHEL

Bitness

64-bit

Description

GCC compiled AMD Random Number Generator Library binary package sha256 Checksum : 27920021ddb7e3ace006747c838d5330fefb863d62dc7ed98a81880f2a9ef66d