A Cybersecurity-Focused Password Strength & Breach Analysis Tool
SecurePass Analyzer is a full-stack cybersecurity web application that analyzes password strength, simulates real-world attacks, and checks for data breach exposure โ without ever storing or logging passwords.
This project demonstrates secure coding practices, password security concepts, and backendโfrontend integration, making it ideal for placements, internships, and cybersecurity roles.
โ Implements real-world password attack models โ Follows privacy-first & zero-storage security principles โ Uses industry-recognized algorithms (zxcvbn, bcrypt) โ Clean API-based architecture โ Strong example of secure backend design in Python (Flask)
๐ This project reflects how modern security tools are built โ not just theory, but practice.
-
Custom Rules Engine Evaluates:
- Length
- Uppercase / lowercase
- Numbers & special characters
- Repeated and sequential patterns
-
zxcvbn Integration (by Dropbox) Provides realistic strength estimation based on real-world password data
-
Final Strength Score (0โ100) Combines custom rules + zxcvbn for accurate results
-
Crack Time Estimation Displays human-readable crack times (seconds โ years)
-
Dictionary Attack Check Tests against commonly used passwords
-
Brute Force Estimation
- Online attack (rate-limited)
- Offline fast attack (GPU)
- Offline slow attack (bcrypt)
โ ๏ธ No real attacks are performed โ only mathematical simulations.
- Passwords are never stored
- Passwords are never logged
- Uses SHA-256 hashing for breach comparison
- Only hashes are checked โ zero plaintext exposure
- โ Rate Limiting: 5 requests/min per IP
- โ CORS Protection enabled
- โ Zero password storage
- โ No third-party password sharing
- โ Backend-only processing
Frontend (HTML/CSS/JS)
โ
REST API (Flask)
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
| Strength Analyzer (Rules) |
| zxcvbn Engine |
| Attack Simulator |
| Breach Checker |
โโโโโโโโโโโโโโโโโโโโโโโโโโโโ
- HTML5 โ Semantic structure
- CSS3 โ Glassmorphism UI (macOS-style)
- Vanilla JavaScript (ES6+) โ No frameworks
- Python 3.8+
- Flask 3
- Flask-CORS
- Flask-Limiter
- zxcvbn
- bcrypt
- Python 3.8+
- pip
- Any modern web browser
cd backend
pip install -r requirements.txt
python app.py๐ Backend runs on: http://localhost:5000
Option 1 (Simple):
Open frontend/index.html directly in your browser
Option 2 (Recommended):
cd frontend
python -m http.server 8000๐ Open: http://localhost:8000
-
Start backend server
-
Open frontend
-
Enter a password
-
Click Analyze Password
-
View:
- Strength score
- Crack time
- Breach status
- Attack vulnerability
Password: MyP@ssw0rd123!
- Strength: Strong (75/100)
- Estimated crack time: ~2 years
- Breach status: Safe
- Dictionary attack risk: Low
SecurePass-Analyzer/
โ
โโโ backend/
โ โโโ app.py
โ โโโ strength_checker.py
โ โโโ password_rules.py
โ โโโ attack_simulator.py
โ โโโ breach_checker.py
โ โโโ password_generator.py
โ โโโ requirements.txt
โ
โโโ frontend/
โ โโโ index.html
โ โโโ style.css
โ โโโ script.js
โ
โโโ README.md
| File | Purpose |
|---|---|
app.py |
API server, rate limiting, routing |
strength_checker.py |
Final strength scoring logic |
password_rules.py |
Custom rule engine |
attack_simulator.py |
Attack time estimation |
breach_checker.py |
Secure breach detection |
password_generator.py |
Secure password creation |
| Endpoint | Method | Description |
|---|---|---|
/api/analyze |
POST | Full analysis |
/api/strength |
POST | Strength only |
/api/breach |
POST | Breach check |
/api/generate |
POST | Password generator |
/health |
GET | Server health |
Final Score =
(Custom Rules Score + (zxcvbn Score ร 20)) / 2
- 80โ100 โ Very Strong
- 60โ79 โ Strong
- 40โ59 โ Medium
- 20โ39 โ Weak
- 0โ19 โ Very Weak
- ๐ Have I Been Pwned API (k-anonymity)
- ๐ API authentication
- ๐ณ Docker deployment
- ๐งช Unit & integration testing
- ๐ Multi-language support
- ๐ Performance optimization
Open-source โ for educational & learning purposes
Pull requests are welcome. Feel free to fork and enhance!
This project is built for learning and demonstration. Always use unique passwords and enable 2FA in real syste