isaac

ISAAC PRNG implementation on Nim

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version Unknown
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-21 05:24

Installation

nimble install isaac
choosenim install isaac
git clone https://github.com/pragmagic/isaac/

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
isaac - - - - - - -

Source

Repository https://github.com/pragmagic/isaac/
Homepage https://github.com/pragmagic/isaac/
Registry Source nimble_official

README

isaac

Nim implementation of ISAAC - a cryptographically secure PRNG.

API:

type IsaacGenerator* = ref object

proc newIsaacGenerator*(seed: array[256, uint32]): IsaacGenerator
  ## Initializes and returns ISAAC PRNG instance.
  ## Make sure the seed is an array of *true random values* obtained from a
  ## source like urandom. Otherwise, security of the algorithm is compromised.

proc nextU32*(generator: IsaacGenerator): uint32
  ## Returns the next generated 32-bit value

proc randomUint32*(generator: IsaacGenerator): uint32
  ## Alias for ``nextU32``. Added for compatibility with nim-random library.

License

This library is licensed under the MIT license. Read LICENSE file for details.

Copyright (c) 2016 Xored Software, Inc.