High-Entropy Symbol Generator

ABSTRACT: We discuss the principles of a High-Entropy Randomness Generator (also called a Hardware Random Number Generator, or True Random Number Generator) that is suitable for a wide range of applications, including cryptography and other high-stakes adversarial applications. It harvests entropy from physical processes, and uses that entropy efficiently. The hash saturation principle is used to distill the data, resulting in virtually 100% entropy density. This is calculated, not statistically estimated, and is provably correct under mild assumptions. In contrast to a Pseudo-Random Number Generator, it has no internal state to worry about, and does not depend on unprovable assumptions about ``one-way functions''. We also describe a low-cost high-performance implementation, using the computer's audio I/O system.

You can view the full paper, which covers the theoretical principles and engineering features, including installation instructions.

You can download turbid.tgz source. ~100kB.

You can have a look at the main program, turbid.c

The code is in "beta" status. People are using it. There are no open bug reports.

Request: I would like to be able to ship configuration and calibration info for a wider range of soundcards. Therefore: If you calibrate a card, please send me <jsd@av8n.com> the resulting .ctl file, and the values for the -Q -R -B and -K settings.

Copyright © 2002 – 2013 jsd