Message 267631 - Python tracker (original) (raw)
On 07.06.2016 13:36, Donald Stufft wrote:
No where in the documentation of
os.urandom
does it ever promise it will not block. In fact, on systems like FreeBSD where their /dev/urandom is better than Linuxes it always blocked on start up because that's just the way their /dev/urandom works.
The whole purpose of urandom is to have a non-blocking source of random numbers:
http://man7.org/linux/man-pages/man4/random.4.html
and os.urandom() has always stated: "This function returns random bytes from an OS-specific randomness source. The returned data should be unpredictable enough for cryptographic applications, though its exact quality depends on the OS implementation."
That's pretty much in line with what the implementation now does. There's no promise on the quality of the data it returns.