I am interested in understanding if it is possible to predict Python 3
random.random() when seeded with high entropy value from a physical system, like a dice toss.
In other words, is
random.random() a good function that takes "entropy" and reduces it to an unpredictable determinist bounded value or not?
From my understanding, it passes all randomness tests I found.
I am not interested in good practice and that it is better to use
/dev/urandom, secrets or other sources of good random values. That is a known fact.
Things to consider:
- The random generator is seeded with high entropy value and only used once to generate a single value from the initial state before being seeded again.
- The generator is seeded with new seed for every number.
- The seed has high entropy, something around 256 bits or entropy or more.
The reason I want to do this it that it allows me to use
random.choise which is an extremely convenient way to transform a seed into a choice. Here's a rough implementation of the idea:
random.randomis seeded with an high entropy seed.
random.randomis seeded with a new high entropy seed.
- ...again and again.
Is the resulting choices list predictable?