This repository is a Python implementation of the excellent paper Time-lock puzzles and timed-release Crypto by Shamir and Rivest.
Instructions:
-
Download 🐍 Python 3.7
-
Setup the environment. I recommend using virtualenvwrapper. Run :
mkvirtualenv -p $(which python3) {YOUR_ENV_NAME}
. Thenworkon {YOUR_ENV_NAME}
. -
Install packages/dependencies:
pip install -r requirements.txt
-
Run the main function:
python puzzle.py {SECONDS} {SQUARINGS_PER_SECOND} {REPEATS}
. All three arguments areint
s and all are required.
🛑 DO NOT USE IN PRODUCTION ✋. This code is very experimental and is part of a bigger project which will be linked here soon. Security is not guaranteed, assume it is unsafe. In the meantime, feel free to play around. PRs are very welcome.
Version 0.9 (using SemVer)
This version is in Alpha. Breaking changes might occur.
- Jonathan Levi - @drummerjolev
Thanks to Myrto Arapinis, my project supervisor.
Free to use, re-distribute with attribution. Basically, be nice and don't be a jerk.