in reply to Crypt::CipherSaber

Nice.

I would suggest that your documentation should mention some modules like Math::TrulyRandom (and on some operating systems you can look for /dev/random) that can be used for producing the seeds. Also you may want to mention the fact that if you take virtually and supply of large somewhat random data (say from /dev/mem), compress it, encrypt that (even with a bad algorithm), then you will get a very large amount of very good random data for the seed. On systems which generate a lot of random numbers, you may run out of entropy for approaches based on things like timing data...