[5401] in cryptography@c2.net mail archive

home help back first fref pref prev next nref lref last post

Re: Summary re: /dev/random

daemon@ATHENA.MIT.EDU (David Honig)
Sat Aug 14 13:13:33 1999

Date: Fri, 13 Aug 1999 13:55:29 -0700
To: "Arnold G. Reinhold" <reinhold@world.std.com>,
        "Theodore Y. Ts'o" <tytso@MIT.EDU>
From: David Honig <honig@sprynet.com>
Cc: cryptography@c2.net, linux-ipsec@clinet.fi,
        Bill Stewart <bill.stewart@pobox.com>
In-Reply-To: <v04210100b3d7751fb125@[24.218.56.100]>

At 03:13 PM 8/11/99 -0400, Arnold G. Reinhold wrote:
>Generic PC's these days come with audio input or can have a sound 
>card added easily. Open software that would characterize, monitor and 
>whiten the output of an analog noise source connected to the audio-in 
>port would meet a lot of needs.
>
>Arnold Reinhold

I have posted about using Maurer's Universal Statistical Test to measure
entropy.  With this tool you can see the effect of various conditioning
[see RFC 1750] algorithms.  (Of course, if your conditioning is a secure hash,
the entropy measure is pinned at maximum).  This would provide a better
estimation function IMO than the current estimation function, which I 
consider too generous.  With all due respect, Theo.

I studied noise (FM hiss) digitized
through a sound card, and how much "distilling" you have to do on this
data to asymptote at 1 bit / symbol.  (I played with a very simple
"distiller", 
one that xors adjacent pairs of bits, halving the throughput, but
flattening out
the distribution.)
I have also done some experiments
with a Geiger counter as RNG source.  A sound card is easier.  

I have notes about this, including MUST code, and notes about 
hacking BSD's /dev/random internals 
http://www.geocities.com/SiliconValley/Code/4704/

However I haven't had time to get my audio card working under BSD.  Also
not sure
what the audio api looks like or how the data would be collected without
using the cpu or
bus excessively.

Ideally, you'ld write to a (persistent?) "audio entropy" buffer, which
/dev/r would slurp
up when handling a read syscall.   This would augment the existing
interrupt-fed /dev/r
entropy pool.

Plenty of fun to be had.

David Honig








home help back first fref pref prev next nref lref last post