Kirk Haines wrote:
> This release is primarily a reorganization of the old package. It has a much
> better installer, a basic unit test suite, better README and licensing info,
> and a gem has been built for Crypt::ISAAC as well. The only functionality
> change is to add an option when creating a new generator that will force it
> to try to use /dev/random to seed the generator, instead of /dev/urandom
> (falling back to rand() if neither is available). This is an experimental
> feature -- seeding from /dev/random appears to be almost too slow to be
> usable since so much entropy is needed, but to use it, create pass false when
> creating the object, as follows:
> prng = Crypt::ISAAC.new(false)
> The code should run anywhere that Ruby does, though there will be support for
> better seeding of the prng on Windows coming soon.
> The package has been uploaded to Rubyforge:
> http://rubyforge.org/project/crypt-isaac
> Here is the README:
> Crypt::ISAAC README
> ============
> ISAAC is a cryptographically secure PRNG for generating high quality random
> numbers. Detailed information about the algorithm can be found at:
> http://burtleburtle.net/bob/rand/isaac.html
> This is a pure Ruby implementation of the algorithm. It is reasonably fast
> for
> a pure Ruby implementation. On an 800Mhz PIII computer running Ruby 1.8.2,
> and while the machine is also serving as general desktop, the library seems to
> consistently generate between 15000 and 16000 random numbers per second.
> Ruby uses the Mersenne Twister as its PRNG, and while this the Twister is
> a fast PRNG that produces highly random numbers, it is not strong for
> cryptographic purposes, nor is it suitable when one needs multiple
> independent streams of random numbers. Crypt::ISAAC is suitable for either
> purpose.
> Requirements
> ------------
> * Ruby 1.8 (should also run on 1.6.x)
> Install
> -------
> If you have never installed Crypt::ISAAC, you may run the testsuite
> to confirm that it works with:
> # ruby setup.rb test
> If you already have a version of Crypt::ISAAC installed, but want to
> confirm this one before installing, run the test suite manually as
> follows:
> # ruby test/TC_ISAAC.rb local
> When you are ready to install Crypt::ISAAC, type:
> # ruby setup.rb install
> This one step will install Crypt::ISAAC in your Ruby SITELIB. To test
> the library after installation:
> # ruby setup.rb test
> Usage
> -----
> require 'crypt/ISAAC'
Ew. I'd prefer it if everyone would use lowercase for all package files. Otherwise, cool. :)