This repository contains scripts for implementing a Proof of Work (PoW) algorithm using the Argon2 hashing function. It is designed to solve a mining challenge based on given parameters, making it suitable for educational purposes or testing PoW implementations.
- Checks for required utilities (
argon2
,xxd
,bc
). - Accepts a challenge code as input, either via command line or prompt.
- Iteratively generates and hashes candidate passwords until a valid solution is found.
- Displays the solution once it meets the required difficulty.
- Python Salt Generator: A Python script to generate random salt values and PoW challenge codes, with configurable parameters.
Ensure the following utilities are installed on your system:
argon2
: A secure hashing algorithm for password hashing.xxd
: A tool for creating a hex dump from a binary file and vice versa.bc
: An arbitrary precision calculator language.
You can install the required utilities on Debian/Ubuntu-based systems using the following command:
sudo apt-get install argon2 xxd bc
If you're using a different Linux distribution, please consult your package manager's documentation.
- Clone the repository to your local machine:
git clone https://github.com/TiredFromTelehack/proof-of-work-solver.git
cd proof-of-work-solver
- Make the script executable:
chmod +x proof_of_work.sh
- Run the script with a challenge code:
./proof_of_work.sh "262144:1:SALTe7e590c2f902:1500"
-
Make sure you have Python installed (Python 3 is recommended).
-
Run the generator script to create a random Proof of Work challenge code:
python3 pow_generator.py
Run the Bash script with a specific challenge code:
./proof_of_work.sh "262144:1:SALTe7e590c2f902:1500"
Output Example:
Estimated iterations: 1500 Time Cost: 1 Elapsed Time: 700 seconds. SOLUTION FOUND Your unblock code is: UNBLOCK-X7J2L9D5 This is the code you enter into the site to pass the challenge.
- Python Salt Generator Example:
Run the Python salt generator to create a random challenge code:
python3 pow_generator.py
Output Example:
Generated Proof of Work Code: 262144:1:SALTe7e590c2f902:1500
The generated code includes:
Memory Cost: Always Set To 262,144 bytes.
Time Cost: Always set to 1.
Salt: Randomized, prefixed with "SALT".
Difficulty: Always Set To 1500.