I suspect the blog author knows this, but doesn't say it explicitly and people might be confused: This isn't an indictment of the RNG.<p>The test is pulling out 10 integers in the range [0,9]. That space is log2(10^10) == 33 bits big. The 64 bit seed space is far larger. So for any given sequence of ten numbers, there are almost certainly going to be many seeds that will generate it. This has nothing to do with the "quality" of the generated numbers, it's just that our intuition about what sequences look "random" lives in a much smaller search space than the RNG can actually produce.
Only slightly less random than what Java's RNG usually produces:
<a href="http://www.alife.co.uk/nonrandom/" rel="nofollow">http://www.alife.co.uk/nonrandom/</a>
I guess searching for the seeds that would result in a specific string can be interpreted as a hash function? It takes a long time to find the right seed or combination of seeds that generate a certain string. Call that a hash value of the string, then you can reverse the hash by applying it to the randomString() method.<p>Could it be possible to use something like this for "quantum compression"? If you use a quantum computer to find the combinations of seeds that generate a given string, could that be used for compression?