Closed SabrinaJewson closed 3 years ago
It seems the current implementation of this PR vulnerable to some known bad seeds: https://github.com/wangyi-fudan/wyhash/pull/100 https://github.com/ManDeJan/zig-wyhash/issues/2 https://github.com/eldruin/wyhash-rs/issues/6
Does this apply to the RNG? The wyhash maintainer recently removed the _wyp
default secret, but the wyrand
implementation still uses it.
Thanks!
Published in 1.5.0
I'd say it is a bit careless to say that "wyrand passes all of the tests", it certainly does not. Wyrand can only generate a subset of all u64
values (see https://github.com/wangyi-fudan/wyhash/issues/16), and even if we consider that to not be a problem by itself, it leads to easily detectable biases. For example, the number of duplicates you get is consistently much higher than expected from random data: https://gist.github.com/flyingmutant/cb69e96872023f9f580868e746d1128a
Wyrand is faster than PCG and also passes all of the tests.
PCG benchmarks:
Wyrand benchmarks:
Closes #19