A web tool to check the strength of a password and verify if it has been exposed in known data leaks. The tool allows users to select between different leak-checking APIs and provide their own API keys if desired.
This project is a web-based Password Strength Checker developed using Flask and Python. It allows users to input a password and check its strength. Additionally, the tool verifies if the password has been exposed in known data leaks using the Have I Been Pwned API by default. Users can also choose to use a custom API for leak checks by providing their API key.
- Password Strength Check: Analyzes the complexity of the password based on length, uppercase letters, lowercase letters, digits, and special characters.
- Leak Check using Have I Been Pwned API: Checks if the password has been exposed in known data breaches.
- Custom Leak Check API: Allows users to use a different leak-checking API by providing their own API key.
Ensure the following packages are installed on your system:
- Python 3
- Pip
- Virtual Environment (optional but recommended)
- Git
- Clone the repository:
git clone <repository-url> cd password_checker
-
Create and activate a virtual environment (optional but recommended): virtualenv venv source venv/bin/activate
-
Install the dependencies: pip install -r requirements.txt
-
Start the Flask app: python run.py
-
Open your web browser and navigate to http://127.0.0.1:5000/
-
Enter a password you want to check, select if you want to use a custom API, and provide the API key if needed.
-
View the results for password strength and leak check on the page.
password_checker/ │ ├── app/ │ ├── init.py │ ├── routes.py │ ├── static/ │ │ └── styles.css │ └── templates/ │ └── index.html │ ├── checker/ │ ├── init.py │ ├── strength.py │ └── leak_check.py │ ├── tests/ │ ├── init.py │ ├── run.py └── requirements.txt
Contributions are welcome! Please create an issue before making changes and open a pull request for your changes.