From: Pierre Uszynski <pierre@shell.portal.com>
To: cypherpunks@toad.com
Message Hash: cafea89fac2aded4c044067f635b4cb45f964df2e5fb9a98c57c68dfa1b541cc
Message ID: <199509230636.XAA25093@jobe.shell.portal.com>
Reply To: N/A
UTC Datetime: 1995-09-23 06:37:50 UTC
Raw Date: Fri, 22 Sep 95 23:37:50 PDT
From: Pierre Uszynski <pierre@shell.portal.com>
Date: Fri, 22 Sep 95 23:37:50 PDT
To: cypherpunks@toad.com
Subject: Re: Project: a standard cell random number generator
Message-ID: <199509230636.XAA25093@jobe.shell.portal.com>
MIME-Version: 1.0
Content-Type: text/plain
At 9:50 PM 9/20/95, John Gilmore wrote:
>You probably can't build a hardware random number generator out of
>existing "gate array" gates or "standard cell" cells, because all the
>existing gates and cells are designed to behave completely
>predictably! It will take designing a new circuit structure.
Actually, even without going into the more analog characteristics of
these same standard cells (as Tim suggests: threshold measurement, DRAM
discharge time, and so on) you can do that using the really basic
behavior of really basic standard cells: I did that some 8 years ago
around a free-running ring oscillator (a bunch of basic logic gates in
a ring).
The problem I would look into first is that any such random number
generator (even the ones based on measurements of analog quantities)
would likely synchronize to some extend to the local noise (like CMOS
switching noise in sync with the chip clock). My impression is that if
you try and make the thing more impervious to noise, it will be less
random too, and the most prominent noise in such chips is not random
at all.
So, you could try to make it run fast, and place it in a slow chip
(like an older style UART), or you could try to kick it out of sync now
and then based on some external conditions (maybe) (bus signal arrival
time, serial line input, etc).
It's not guaranteed it would end up generating anything useful (maybe
not even to seed a software PRNG). I still like the idea of using
macroscopic events, many orders of magnitude different from system
operating frequencies: mouse location and timing sounds good. If you
want to get large amounts of random numbers, use a specially designed
separate box, well shielded, and running on batteries (like a walkman :-)
And a cryptographically secure software hash is always necessary.
Pierre.
pierre@shell.portal.com
Return to September 1995
Return to “Pierre Uszynski <pierre@shell.portal.com>”
1995-09-23 (Fri, 22 Sep 95 23:37:50 PDT) - Re: Project: a standard cell random number generator - Pierre Uszynski <pierre@shell.portal.com>