Skip to content

About

A privacy first, password strength & breach checker made using Python

Topics

Resources

Stars

4 stars

Watchers

2 watching

Forks

Repository files navigation

Password Inspector v2.33

Python 3.13+ CLI Tool Version: v2.33 License: MIT Security: Privacy-First HIBP k-anonymity

A privacy-first Python tool for password strength analysis and breach detection via Have I Been Pwned (HIBP) API.

No logs. No storage. Just Clarity and Privacy.

Password Inspector is an open-source, modular CLI tool designed and created for cybersecurity enthusiasts, auditors, developers, corporate IT teams and anyone who wants to know how strong their password is. It evaluates password strength based on password length, entropy & whether or not there are recurring characters and then checks public databases if passwords have been breached via k-anonymity ensuring that no passwords are logged. No password sent in plaintext. Built cleanly, with maintainable code and documentation under MIT License.

Author: Emmanuel Nkhoma
GitHub: @ENdev-code
License: MIT
Created: November 2025
Current Version: 2.33

Do you really know how strong your passwords are? Find out with Password Inspector.
~ Emmanuel Nkhoma AKA ENdev-code


Table of Contents


Features

Below is a description of the features Password Inspector can provide for you.

Feature Description
Password Strength Analysis Scores passwords from 0–100 based on security criteria.
Breach Detection Checks Have I Been Pwned via k-anonymity to verify if passwords have appeared in recent breaches.
CLI Support Interactive mode, single password input or batch processing from wordlists.
Output Options Provides human-readable reports, CSV exports and live progress updates.
Modular Design Separates modules used for strength and breach checks making them easy to test and extend.
Cross Platform Works on multiple platforms i.e. Windows, Linux, macOS.
Transparent Rules See exactly how points are earned/lost.
Privacy Focused Password are never saved, never sent in plaintext and are processed locally.

Scoring Criteria (100 points total):

Below is the scoring criteria for passwords that Password Inspector will use

Basic Criteria Points
8+ characters 5
12+ characters 10
16+ characters 15
20+ characters 20
No 3+ repeating chars 10

An entropy check to determine how easily or likely a password can be cracked via zxcvbn.

Total entropy points to contribute to scoring criteria = 40.

Entropy Score (zxcvbn) Custom Score
0 2
1 6
2 12
3 24
4 40

Strength Levels/Thresholds

  • Very Strong: ≥ 85 points
  • Strong: ≥ 65 points
  • Fair: ≥ 45 points (Consider editing)
  • Weak: ≥ 20 points (Strongly recommend changing password, especially if breached)
  • Very Weak: < 20 points (Change password.)

If your password is breached, CHANGE PASSWORD IMMEDIATELY.


Use Cases

Below is a comprehensive summary of use cases for Password Inspector

Use Case Description
Personal Use Check if your own passwords are strong and see if they have been breached or are still safe to use.
Corporate Security Audits Batch processing employee or system passwords for compliance reports.
Penetration Testing Analyse leaked wordlists or default passwords during red team exercises (e.g., analysing common patterns used by targets).
Compliance Insurance Proves password policy enforcement with frameworks like NIST & OWASP.
Educational Tool Demonstrate and prove password best practices in cybersecurity training.
Developer Integration Modules can be imported and integrated with custom apps (e.g., password managers).

Installation

Step 1: Clone the Repository

git clone https:/github.com/ENdev-code/Password-Inspector.git
cd Password-Inspector

Scenario A - Step 2: Easy Route (.bat file/.sh file)

  • On Windows: Open the folder where Password Inspector is and double-click the .bat file called run_PI.bat
  • On Linux: Navigate to the Password Inspector directory and run the following command
./run_PI.sh 

Scenario B - Step 2: Create Virtual Environment

python -m venv venv
source .venv/bin/activate 
#On Windows: & .\venv\Scripts\Activate.ps1

Step 3: Install Dependencies

pip install -r requirements.txt

Step 4: Run Script

python password_inspector_cli.py

Requirements:

  • Python 3.13+
  • requests (For HIBP API)
  • Internet connection (for HIBP request)

How to Use

i. Help Menu

  • Shows usage options.
python password_inspector_cli.py --help

ii. Version Check

  • Shows the current version of Password Inspector.
python password_inspector_cli.py --version

1. Interactive Mode

  • Enter a password when prompted to check its strength level and breach status.
python password_inspector_cli.py 

2. Single Password

  • Run Password Inspector with a single password. Quotes are required for passwords with special characters.
python password_inspector_cli.py "yourPassword123!"

3. Batch Mode (Wordlist)

  • Processes passwords from a file (one per line)
  • Outputs summary, strength score, breach status and detailed inspection details.
python password_inspector_cli.py yourwordlist.txt 

3.1 Password Inspection Report (Batch Mode only)

  • Generates a comprehensible report of inspected passwords
  • Report outlines the password, strength score, breach status, breach count, detailed inspection details and recommendations.
python password_inspector_cli.py yourwordlist.txt --report

3.2 CSV Export (Batch Mode only)

  • Generates CSV file for analysis (Headers being: password, score, strong, pwned, breach_count, issues).
python password_inspector_cli.py yourwordlist.txt --csv > report.csv

About

A privacy first, password strength & breach checker made using Python

Topics

Resources

Stars

4 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages