High-quality splittable pseudorandom number generator
38.17 KB
built 2026-10-14 03:16:54 GMT
Description
This package contains an implementation of a high-quality splittable
pseudorandom number generator. The generator is based on a cryptographic hash
function built on top of the ThreeFish block cipher. See the paper /Splittable
Pseudorandom Number Generators Using Cryptographic Hashing/ by Claessen, Pałka
for details and the rationale of the design.
The package provides the following:
* A splittable PRNG that implements the standard 'System.Random.RandomGen'
class.
* The generator also implements an alternative version of the
'System.Random.TF.Gen.RandomGen' class (exported from "System.Random.TF.Gen"),
which requires the generator to return pseudorandom integers from the full
32-bit range, and contains an n-way split function.
* An alternative version of the 'Random' class is provided, which is linked to
the new 'RandomGen' class, together with 'Random' instances for some integral
types.
* Two functions for initialising the generator with a non-deterministic seed:
one using the system time, and one using the '/dev/urandom' UNIX special file.
The package uses an adapted version of the reference C implementation of
ThreeFish from the reference package of the Skein hash function
(<https://www.schneier.com/skein.html>), originally written by Doug Whiting.
Please note that even though the generator provides very high-quality
pseudorandom numbers, it has not been designed with cryptographic applications
in mind.
Dependencies
10 totalRequires8
- ghc-Cabal-devel
- ghc-base-devel
- ghc-primitive-devel
- ghc-random-devel
- ghc-rpm-macros
- ghc-time-devel
- rpmlib(CompressedFileNames) <= 3.0.4-1
- rpmlib(FileDigests) <= 4.6.0-1
Provides2
- ghc-tf-random = 0.5-54.fc45
- ghc-tf-random-devel = 0.5-54.fc45
ObsoletesNo Obsoletes
ConflictsNo Conflicts
RecommendsNo Recommends
SuggestsNo Suggests
SupplementsNo Supplements
EnhancesNo Enhances
Files
2Name ![]() |
Size |
|---|---|
| ghc-tf-random.spec | 9.70 KB |
| tf-random-0.5.tar.gz | 18.05 KB |
Files 1–2 of 2
Component of
buildroots that installed this RPMNo Buildroots
