P-Entropizer is a Python-based tool for analyzing password entropy and estimating the time required to crack it using brute-force methods. It provides a detailed evaluation of password strength based on character complexity and entropy calculations.
- Calculates password entropy based on character set and length.
- Two example of cracking duration if no hashrate provided (Ryzen 5 5600G & RTX 5090).
- Provides a security level rating for the analyzed password.
- Supports both interactive input and command-line arguments.
Ensure you have git and python3 installed.
git clone https://github.com/u-damien/p-entropizer.git
cd p-entropizer
pip install -r requirements.txt
python3 pentropizer.py -hYou can run the script directly with a password argument and an optional hash rate:
python3 pentropizer.py "your_password" -r 5000000your_password: The password you want to analyze.-r, --hash-rate: (Optional) Hashing speed in hashes per second (H/s).
If no password is provided as an argument, the script will prompt you to enter one interactively.
python3 pentropizer.py- This tool does not consider password dictionaries or known weak passwords.
- The time-to-crack estimate assumes pure brute-force attacks without optimizations.
To develop this project we use a venv for testing with a dedicated requirements.txt called dev.txt, it embed lynting and security tool.
We use pylint, you could use it like that :
pylint pentropizer.py src/*.py src/tools/*.pyAs pylint will check import, make sure the file .pylintrc is well configured.
We use bandit, you could use it like that :
bandit . -r --exclude "./.dev,./.venv"Github action can be used to automate tasks, in order to develop github
actions we should create yaml files in .github/workflows.
To test workflows before pushing to github we could use act.
Note that to run act you should have docker installed.
On macOS (using Homebrew) :
brew install actOn Linux :
curl -sSL https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bashOn Windows (using Scoop) :
scoop install actThis project is licensed under the MIT License.
