[Cryptech Tech] Maurer's Universal Test for Randomness
Bill Cox
waywardgeek at ciphershed.org
Mon Sep 15 18:48:33 UTC 2014
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 09/15/2014 06:46 AM, Joachim Strömbergson wrote:
> Aloha!
>
> While reading a protocol spec at work I found a reference to the
> following paper. The paper describes a universal test for
> randomness (and the protocol spec requires any source for random
> numbers used for key generation to be tested with this test):
>
> http://www.jscoron.fr/publications/universal.pdf
>
> (Love the way the paper uses comments on IACR bylaws etc.)
>
> I haven't seen this test being mentioned before, esp not as a
> requirement for keys.
>
> Benedict and Bernd?
> _______________________________________________ Tech mailing list
> Tech at cryptech.is https://lists.cryptech.is/listinfo/tech
>
Hi, guys. I'm new to this list, and may not have much time I can
commit to it, but I saw in the mail archive some discussion about an
avalanche based TRNG. That's probably fine, assuming there's no need
for higher bandwidth data. Two thoughts on it... First, I was able to
get the data rate to 500Kb/s by adding an 8-bit 40-MHz A/D converter
rather than just a comparator against 0. The signal wasn't moving
that fast, but the LSBs were still highly unpredictable. I XORed it
down 80-to-1 to generate the output. That was back in 1998, I think.
If I were doing it today, I would consider building a hardware Keccak
(SHA3 winner) sponge to provide the whitened data, rather than mux-ing
it down like I did. The sponge sucks data in at whatever rate your
TRNG runs, and spits out cryptographically pseudo-random data at
whatever speed you want. It is the most silicon-friendly
cryptographically strong hashing algorithm I have ever read about. It
should work quite well in an FPGA. I just reviewed it's design, and
while I'm no hashing expert, I'm convinced it is secure (but don't
take my word for it).
I also like some newer TRNG architectures. One I've been wanting to
build I call the "Infinite Noise Multiplier", but I haven't designed
one for a board-level project yet. It certainly will be more complex
than using zener avalanche noise, so likely not a good match. With a
Keccak sponge in an FPGA, I don't think there's any real need for high
bandwidth true random data, so long as the TRNG seeds the sponge well.
Bill
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAEBAgAGBQJUFzR+AAoJEAcQZQdOpZUZtzoP/3gz9sWZbGWKwBRhNKch8GVl
ghhC0FiE8KkDjKrkYMBHxOdzXihCIkC03tgWm3HHwGC9QispNYi3VC/n7hjRfC50
LaDVdsZgEvmmRTJDmR9ZCfI9Cnnyuq18wzkKp+pHkZZfnWMspp/hrohnE6QL4gmD
Leg0WwhKGRXenXgEEwiQNJ5L+JJsDi9FEEyswPdaZu8MsnkwvyAkB7U42d45QZFe
hV51tUUK0Bv9BSBrOqMq+/ApGAn/2kTwqkKRBQPVFELiwbkcr4kTWCqx8NTIVf60
KtHcpX7Toyyt94fAcWSaRXOGBM3QzM21NtM6ECo7062Vs8ax/fDAka9Qjv0govDd
yjINQsVWhUwVKKPcxZ7Vjx7cWAGxqh7l/jt7WRlBjTP79hp/xCRDxpH/nlD8GLPa
o5DJuY4Xc/N7yB/Q/S6nTHS01C68gShCq+KRjJ6oAd0jGj9tNDvwbo3gx7a1YsXh
9rsjmammaJON/CWNZjIPA8E9jMUj/yjfV69GJPuUOKJWz2xrdWuhzoeDmUpUOE9B
L2Pkf43urs7rh9nOP8wqKR4RNFETiXbQTNWxVcv4rGluL0tH7P36XSsOm06qpKrK
eL6IgRpYP0O5+jAhkYp0TJXvrVfCsT7iwJVMiLjSC21zGChKv9bXQCHLz2rsLWK6
w/w7H6S6jgkyj1ALb97I
=jELO
-----END PGP SIGNATURE-----
More information about the Tech
mailing list