isaac
ISAAC PRNG implementation on Nim
Summary
| Latest Version | Unknown |
|---|---|
| License | MIT |
| CI Status | Failing |
| Downloads | 0 |
| Last Indexed | 2026-07-21 05:24 |
Tags
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.