Skip to content

isaac-prng

The isaac-prng NPM package provides a TypeScript (JavaScript) implementation of the ISAAC secure random number generator.

ISAAC is a CSPRNG designed by Robert J. Jenkins Jr. in 1996 and based on RC4. It is designed to be fast and secure.

isaac-prng is fully compatible with other implementations of ISAAC and can be used as a good alternative to the default javascript Math.random() function. It utilizes JavaScript's new BigInt data type to avoid having to work around the inherent limitations of JavaScript's Number data type.

The implementation was adapted from Bob Jenkin's Java port of his original C implementation. ISAAC, the algorithm/cipher/generator is a work released into the public domain. This software implementation, however, is released under the MIT license.