I implemented the Mersenne Twister algorithm and ran a sample of 80 million bits through both DIEHARD and ComScire's RNGMeter test suite. It passes with results comparable to Marsalia's certified bits. This was a black-box test because I don't understand the Mersenne Twister in any detail at all. But I shall be using it from now on for all casual randoms work. It's fast enough and I don't have to spend a week worrying about it every time I want to use it for ordinary work. I'll probably stitch it into my Luna/Scheme environment, which I'd like to get back to sooner rather than later.
In the white-box corner, I ran my Multiplicative Congruential (m = 2^31-1, a = 16807) through ComScire with a resounding "thud" (-- that's a "fail" ), providing supporting evidence for yesterday's DIEHARD failure. That's a white-box test because not only did I write every byte of the code, I understand every aspect of it in excruciating detail.
In the grey box is C# "Random" class. It also fails both DIEHARD and ComScire, and the statistics look very similar to those of my MC, so I am guessing it's a comparable MC or LC (Linear Congruential).
DIEHARD continues to choke with an end-of-file error for the last few tests on my files created via MC and the C# system Random class. This is all the more mysterious, since I used EXACTLY the same sample sizes and "Console.WriteLine" code to print out the results as I used for the Mersenne Twister and I mimicked Marsaglia's file format for his "bits" files. I am suspecting some internal mungle up due to the statistics' being so bad. Larger samples don't help. Casual perusal with emacs, less, and he (hex edit) reveal no pertinent format or structure differences between the Mersenne Twister file, Marsaglia's bits files, and my MC and C# Random outputs. ComScire gets through all of them without choking, even when they fail execrably.
I may play around with the NIST tests, but their software has no "intelligent defaults," unlike the others, so I will have to study their methodology so as to do the runs.