[$] Python's os.urandom() in the absence of entropy
Python applications, like those written in other languages, often need toobtain random data for purposes ranging from cryptographic key generationto initialization of scientific models. For years, the standard way ofgetting that data is via a call to os.urandom(), which is documented to "return astring of n random bytes suitable for cryptographic use." Anenhancement in Python 3.5 caused a subtle change in howos.urandom() behaves on Linux systems, leading to some long,heated discussions about how randomness should be obtained in Python programs. When the dustsettles, Python benevolent dictator for life (BDFL) Guido van Rossum willhave the unenviable task of choosing between two competing proposals.