The XDRBG is a random number generator using the SHAKE cryptographic primitive.

Algorithm Specification

The algorithm specification as publised at the ToSC 2024 conference.

The XDRBG specification provides the algorithm definition of the XDRBG along with the security proof. An updated version of the paper with the AIS 20/31 definition will be released soon. In addition, the XDRBG presentation provides a brief overview.

Source Code

The source code is available at the Github repository. The source code shows that XDRBG is lean compared to other deterministic random number generators. In addition, the code contains various tests to demonstrate the correctness of the implementation.

The XDRBG is also the default deterministic random number generator in leancrypto. The implementation of XDRBG in leancrypto uses accelerated Keccak primitives. The test harness executed with meson test also provides performance data for generating 1GBytes of data which can be compared to other deterministic random number generators offered by leancrypto.