generator.c:<p><pre><code> // For each byte in the buffer, use its value to index into another
// byte and XOR the two.
</code></pre>
This seems to be the <i>only</i> mixing that happens in the entire algorithm, after the initial rand seeding.<p>I'm not a cryptographer, but this smells <i>extremely</i> insecure to me. If the random seed is all zeroes this generator will generate all zeroes for perpetuity, no?<p>Even if you get a decent initial seed, I still strongly suspect this RNG strategy will be very statistically leaky, will tend to equilibria, and will generally be easily breakable in practice. An RGB visualization in the context of RNG means next to nothing.<p>Please children, don't do your own crypto.