Sha256: d8b7b033de17ee77edd31b1e9424d8bbcfecf0e8bc22cf84d3cea974c66152a1

Contents?: true

Size: 1.96 KB

Versions: 55

Compression:

Stored size: 1.96 KB

Contents

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'

rng = Crypt::ISAAC.new

r1 = rng.rand() # returns a floating point between 0 and 1
r2 = rnd.rand(1000) # returns an integer between 0 and 999

rand() should work identically to the Kernel.rand().

Enjoy it.  Let me know if you find anything that can be improved or that
needs to be fixed.


License
-------

The Crypt::ISAAC library is licensed with an MIT style licence.
See the LICENSE file for details.  As for the ISAAC algorithm itself,
see:

http://burtleburtle.net/bob/rand/isaac.html



Kirk Haines
khaines@enigo.com

Version data entries

55 entries across 55 versions & 15 rubygems

Version Path
relevance-rubycas-server-0.6.99 vendor/isaac_0.9.1/README
wmernagh-rubycas-server-0.6.99.336 vendor/isaac_0.9.1/README
wmernagh-rubycas-server-0.7.1.1 vendor/isaac_0.9.1/README
nbudin-castronaut-0.7.5 vendor/isaac/README
crypt-isaac-0.9.1 README
factorylabs-castronaut-0.7.5 vendor/isaac/README
brontes3d-rubycas-server-0.8.0.20100111 vendor/isaac_0.9.1/README
brontes3d-rubycas-server-0.8.0.20091208 vendor/isaac_0.9.1/README
brontes3d-rubycas-server-0.8.0.20090812 vendor/isaac_0.9.1/README
rubycas-server-0.5.0.193 vendor/isaac_0.9.1/README
rubycas-server-0.6.0 vendor/isaac_0.9.1/README
rubycas-server-0.5.1 vendor/isaac_0.9.1/README
rubycas-server-0.7.0 vendor/isaac_0.9.1/README
rubycas-server-0.7.1.1 vendor/isaac_0.9.1/README
rubycas-server-0.7.1 vendor/isaac_0.9.1/README