[Tim Peters]
>> If you want /true/ randomness, you can buy a certified hardware random
>> number generator, based on non-deterministic physical processes (like
>> timing radioactive decay, or measuring thermal noise).

[Terry Carroll]
> Why buy when you can borrow?:

Speed and capacity, for two things ;-)  As the HotBits page says,
their method can't create more than about 100 bytes per second.  So
even if they were willing (which they aren't) to satisfy a request for
1000000 random bytes (as Dick used in one of his programs), it would
take close to 3 hours to get them.  Worse, many applications consume
1000s of times more than a measly million random bytes.

> def truerandom(n):
>     """
>     truerandom(n) --> str
>
>     Return a string of n truly random bytes.
>
>     see:
>       http://www.fourmilab.ch/hotbits/
>       http://www.fourmilab.ch/hotbits/generate.html
>
>     """
>
>     import urllib
>     _url = "http://www.fourmilab.ch/cgi-bin/Hotbits?nbytes=%s&fmt=bin"; % n
>     return urllib.urlopen(_url).read()

Note that a reasonable use for this service is to request a "small"
number of random bytes to /seed/ a fast deterministic generator.
_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to