Skip to content

mhchaudh/PassShield

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›‘οΈ PassShield

PassShield is a full-stack web application that analyzes password strength using entropy-based metrics, character set analysis, and real-world cracking simulations. It provides users with detailed insights into password security through an intuitive, modern interface.


πŸš€ Key Features

  • Password Strength Scoring: Rates passwords on a scale of 0–100 based on multiple factors.
  • Entropy Calculation: Estimates password complexity in bits.
  • Character Set Detection: Identifies use of lowercase, uppercase, digits, and special characters.
  • Common Password Detection: Flags passwords appearing in known leak databases or wordlists.
  • Time-to-Crack Estimation: Simulates attack scenarios (brute-force, dictionary, hybrid).
  • Modern UI: Built with React for real-time feedback and smooth user experience.

🧩 Project Structure

PassShield/
β”œβ”€β”€ backend/ # Flask API
β”‚ β”œβ”€β”€ app.py # Main server (exposes /analyze_password)
β”‚ β”œβ”€β”€ password_cracker.py # Entropy, charset, and time-to-crack logic
β”‚ └── requirements.txt
└── frontend/ # React App (UI)
β”œβ”€β”€ src/components/PasswordAnalyzer.js
└── package.json


🧠 Tech Stack

  • Frontend: React (Create React App)
  • Backend: Python 3.9+ with Flask
  • Communication: REST API (Frontend β†’ Backend)
  • Local Development Ports:
    • Frontend β†’ http://localhost:3000
    • Backend β†’ http://localhost:8000

βš™οΈ Run Locally (macOS / Linux / Windows)

πŸ–₯️ Backend Setup

# Create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate           # macOS / Linux
.venv\Scripts\activate              # Windows

# Navigate to backend and install dependencies
cd backend
pip install -r requirements.txt

# Run Flask server
python3 app.py

By default, the backend runs on port 8000. If there’s a conflict, change the port in app.py or stop the conflicting process.

πŸ’» Frontend Setup

# Navigate to frontend folder
cd ../frontend

# Install dependencies
npm install

# Start the React development server
npm start

Then open http://localhost:3000 in your browser.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published