Skip to content

A didactic implementation of the Fortuna cryptographically secure pseudorandom number generator πŸŽ²πŸ“š

License

Notifications You must be signed in to change notification settings

isidroas/fortuna

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

A didactic and minimal implementation of the Fortuna cryptographically secure pseudorandom number generator.

$ pip install .
$ python example.py
(fortuna)
(fortuna) help

Documented commands (type help <topic>):
========================================
add_entropy  help  random

Undocumented commands:
======================
EOF  print_pools  print_seed_file  update_seed_file

(fortuna) random

In your terminal, colored traces will be displayed:

screenshot

The example has only been tested on Linux, but it should work on macOS as well.

If you are only interested in the cryptography, the business logic is implemented in fortuna/__init__.py and fortuna/generator.py. The rest is for pretty logging purposes.

Specification

Other implementations

About

A didactic implementation of the Fortuna cryptographically secure pseudorandom number generator πŸŽ²πŸ“š

Topics

Resources

License

Stars

Watchers

Forks

Languages