NIST's Randomness Beacon Development

NIST is implementing a proof-of-concept prototype of a trusted public source of randomness, conformant to Sp 800-90. The source is designed to provide unpredictability, autonomy, and consistency.

Unpredictability means that users cannot algorithmically predict bits before they are made available by the source. Autonomy means that the source is resistant to attempts by outside parties to alter the distribution of the random bits. Consistency means that a set of users can access the source in such a way that they are confident that they all receive the same random string.

The theoretical community has developed many clever cryptographic security protocols over the years for access, authentication, privacy, and authorization in networking and e-commerce applications.

However, except for the simplest and most basic protocols, few have been widely deployed. A major reason concerns efficiency. Many of the more sophisticated security protocols, such as Zero Knowledge proof systems, are highly interactive and require too many communication rounds to be feasible in most situations.

Other privacy-preserving protocols eliminate the need for many rounds of communication but assume the availability of a trusted source of randomness, an assumption that is not generally valid at present.

Description:

In response, NIST is developing a prototype implementation for a Randomness Beacon that will broadcast full-entropy bit-strings. We plan to post them in blocks of 512 bits every ∆T seconds, where ∆T is an adjustable parameter that can vary from one second to minutes.

Each such value is sequence-numbered, time-stamped and signed, and includes the hash of the previous value to chain the sequence of values together and prevent even the source to retroactively change an output package without being detected.

The beacon will keep all output packets and make them available online. The beacon's engine uses multiple input sources of entropy and the NIST team leveraged recent work done on tests to validate an entropy source.

Additional Technical Details:

NIST is currently implementing and enhancing the NIST Randomness Beacon. NIST will make the prototype available as a service to promote research, development, and demonstration of cryptographic security protocols that assume the availability of a trusted source of randomness.

NIST's Physics laboratory will assist us in enhancing the input sources on entropy to the beacon's engine by adding at least one quantum source.

The NIST's Public Randomness Service draft publication can be downloaded here: