I made some supplemental coursework to help students practice hash cracking. This repository has a deployable web app with 15 total challenges: 5 easy, 5 medium, and 5 hard. All of the easy questions should be solvable with a rainbow table but the medium and hard ones should require some thought.
The application can be run with docker or deployment.sh. In order for it to run a .env file must be created that contains a value for FLASK_SECRET_KEY. Other flask related values may also be set. Here is a sample one without a set key:
FLASK_SECRET_KEY=
FLASK_HOST=0.0.0.0
FLASK_PORT=5000
FLASK_DEBUG=false
All questions and their corresponding salts, algorithms and plaintexts are stored in JSON files for easy readability and easy debugging.
Summer 2026