Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/foo123/fortuna
Fortuna PRNG in C++11
https://github.com/foo123/fortuna
Last synced: about 1 month ago
JSON representation
Fortuna PRNG in C++11
- Host: GitHub
- URL: https://github.com/foo123/fortuna
- Owner: foo123
- License: lgpl-3.0
- Created: 2015-06-24T05:37:22.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-06-10T20:14:40.000Z (over 9 years ago)
- Last Synced: 2023-03-16T03:55:34.043Z (over 1 year ago)
- Language: C++
- Homepage:
- Size: 477 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README
- License: COPYING
Awesome Lists containing this project
README
General Information
===================This is implementation of Fortuna PRNG (https://en.wikipedia.org/wiki/Fortuna_%28PRNG%29) in C++11 using Boost and Crypto++ libraries, written by Adam Mizerski .
Components:
- libfortuna - Implementation of Fortuna algorithm.
- fortunad - Daemon which contains Accumulator.
- libfortuna_daemon - Libraries implementing communication layer with daemon for entropy sources and clients.
- fortuna_client - Client which reads random data from daemon.Licensing:
- Libraries (libfortuna, libfortuna_daemon) are released under LGPLv3 or later.
- Programs (everything else) are released under GPLv3 or later.Tested with:
- g++ 4.9.2
- clang++ 3.5.0
- autoconf 2.69
- automake 1.13.4
- libtool 2.4.2
- Boost 1.54.0
- Crypto++ 5.6.2Notes about libfortuna
======================
- You must provide the seed file. For example by 'dd if=/dev/random of=./fortuna.seed bs=64 count=1'. Please note that it's not safe when done at first boot on a virtual machine without entropy provided by host.
- SHA3 (Keccak) is used instead of double SHA2.
- Random data is generated in blocks of bytes. User must allocate enough memory to store whole blocks.
In Accumulator there are output_block_length variable and bytes_to_blocks method, which helps with this task.Contributing
============
- Patches, bug reports, improvements and new features are welcome and appreciated.
- As is sending Bitcoins at 15yFjvHc8BZehVHcammmAvd4qZ6ArFMJRF