-
Notifications
You must be signed in to change notification settings - Fork 237
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix randomization #19
Comments
It seems that tor seeds the OpenSSL random generator by first trying RAND_poll (since it knows about possible other sources of entropy), then by seeding the prng with RAND_seed by reading from /dev/srandom, /dev/urandom, and /dev/random in that order. see crypto_seed_rng() in tor/src/common/crypto.c Notes: Other: |
New random class that keeps state for each worker thread and draws from that state for randomness. Added a config option to set the seed for each worker. Hopefully this will mean experiments can be varied by changing the seed, but repeatable by using the same seed. Leaving ticket open because I still have to test with a complex plugin like scallion. refs #19
These functions also affect randomness in programs. refs #19
The simulator should produce the EXACT same results when run multiple times with the same seed. This currently is broken. Go through and make sure that we only seed the rng once, and that multiple runs produces identical output.
We may need to intercept some functions from the plug-ins to make sure the application randomness goes through our simulator. This will be required for scallion.
The text was updated successfully, but these errors were encountered: