passguard

🔐 PassGuard

Enterprise-grade password manager with military-grade encryption and zero-knowledge architecture.

License: MIT Python 3.8+ Security: Argon2id


✨ Features

🔒 Military-Grade Security

🛡️ Security Auditing

🌐 Browser Integration

📤 Vault Management

🎨 Modern UI


🚀 Quick Start

Installation

  1. Clone the repository:
    git clone https://github.com/arjunjaincs/passguard
    cd passguard
    
  2. Install dependencies:
    pip install -r requirements.txt
    
  3. Run PassGuard:
    python main.py
    

First-Time Setup

  1. Create your first vault:
    • Click “Create New Vault”
    • Enter a vault name
    • Create a strong master password (12+ characters recommended)
  2. Add credentials:
    • Click “Add Credential”
    • Enter website, username, and password
    • Use the password generator for strong passwords
  3. Optional - Setup browser extension:
    • Click “Browser Extension” button
    • Copy the authentication token
    • Load the extension in Chrome/Edge
    • Paste the token in the extension popup

📋 Requirements

Core Dependencies


🔐 Security Architecture

Encryption Stack

Master Password
    ↓
Argon2id (3 iterations, 64MB memory)
    ↓
256-bit AES-GCM Key
    ↓
Encrypted Vault Data

Zero-Knowledge Design

Auto-Lock Protection


📖 Usage

Password Management

Security Audit

  1. Click “Security Audit” button
  2. Optionally provide personal info for PII detection
  3. Review findings and recommendations
  4. Export report as PDF

Breach Check

  1. Click “Breach Check” button
  2. Select check type (password-only or account)
  3. For account checks, enter HIBP API key
  4. Review results and update compromised passwords

Vault Export/Import

Export:

  1. Click “Export Vault”
  2. Choose backup (self) or share (other user)
  3. For sharing, select recipient’s public key
  4. Save the .pvgx file

Import:

  1. Click “Import Vault”
  2. Select .pvgx file
  3. Optionally verify sender’s signature
  4. Enter vault label

🌐 Browser Extension Setup

  1. In PassGuard:
    • Open vault
    • Click “Browser Extension”
    • Copy the authentication token
  2. In Chrome/Edge:
    • Go to chrome://extensions/
    • Enable “Developer mode”
    • Click “Load unpacked”
    • Select browser_extension folder
  3. Configure Extension:
    • Click PassGuard extension icon
    • Paste authentication token
    • Click “Save Token”
    • Status should turn green ✅
  4. Use Autofill:
    • Visit any login page
    • Click “🔐 Fill with PassGuard” button
    • Credentials auto-filled!

🛠️ Development

Project Structure

passguard/
├── main.py                 # Application entry point
├── core/
│   ├── crypto.py          # Encryption/decryption
│   ├── vault.py           # Vault management
│   ├── strength.py        # Password strength analysis
│   ├── security_audit.py  # Security auditing
│   ├── breach_check.py    # HIBP integration
│   ├── export_import.py   # RSA vault sharing
│   └── autofill_server.py # Browser extension API
├── ui/
│   ├── unlock_dialog.py   # Login screen
│   ├── main_window.py     # Main vault window
│   └── security_check_dialog.py  # Breach check UI
├── browser_extension/     # Chrome/Edge extension
└── assets/
    └── icon.ico          # Application icon

Building Executable

# Install PyInstaller
pip install pyinstaller

# Build (Windows)
pyinstaller --onefile --windowed --icon=assets/icon.ico main.py

# Output in dist/main.exe

🔒 Security Best Practices

Master Password

Vault Management

Browser Extension


📄 License

MIT License - see LICENSE file for details.


🙏 Acknowledgments


📧 Support

For issues, questions, or feature requests, please open an issue on GitHub.


PassGuard - Enterprise security, personal control. 🔐