drummerjolev / time-lock-puzzle

Implementation for "Time-lock puzzles and timed-release Crypto" by Rivest, Shamir and Wagner.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Time Lock Puzzle Implementation

Getting Started

This repository is a Python implementation of the excellent paper Time-lock puzzles and timed-release Crypto by Shamir and Rivest.

Instructions:

  1. Download 🐍 Python 3.7

  2. Setup the environment. I recommend using virtualenvwrapper. Run : mkvirtualenv -p $(which python3) {YOUR_ENV_NAME}. Then workon {YOUR_ENV_NAME}.

  3. Install packages/dependencies: pip install -r requirements.txt

  4. Run the main function: python puzzle.py {SECONDS} {SQUARINGS_PER_SECOND} {REPEATS}. All three arguments are ints and all are required.

Production

🛑 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.

Built With

Versioning

Version 0.9 (using SemVer)

This version is in Alpha. Breaking changes might occur.

Authors

  • Jonathan Levi - @drummerjolev

Thanks to Myrto Arapinis, my project supervisor.

License

Free to use, re-distribute with attribution. Basically, be nice and don't be a jerk.

About

Implementation for "Time-lock puzzles and timed-release Crypto" by Rivest, Shamir and Wagner.


Languages

Language:Python 99.0%Language:Makefile 1.0%