A secure and user-friendly password management application built with Python and PyQt6.
- ✅ Secure password storage (Fernet encryption with AES-128-CBC)
- 🔄 Automatic secure password generation
- 🔍 Password breach detection using HaveIBeenPwned API
- 📝 Add notes to passwords
- 📋 One-click clipboard copy
- 👁️ Show/hide password toggle
- 📂 Organize passwords into categories
- 🎨 Custom category colors
- ✏️ Edit and delete categories
- 🔍 Filter by category
- 👤 Multi-user support
- 📧 Email update
- 🔑 Secure password change
- 🚪 Secure logout
- 🔐 AES-256 encryption
- 🔄 PBKDF2 password hashing
- 👤 Per-user encryption keys
- 🔍 Password security checks
- 🌐 HaveIBeenPwned API integration
- ⚡ Real-time security status updates
- 🚨 Security indicators
- 🔍 Real-time search
- 📱 Modern and clean design
- 📊 Category-based viewing
- 🎯 Easy to use
- 📝 Detailed password information
- Python 3.10+
- PyQt6
- SQLAlchemy
- Cryptography
- Requests (for HaveIBeenPwned API integration)
- Clone the repository:
git clone https://github.com/cankayafaruk/passwordmanager.git
cd passwordmanager- Create a virtual environment:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Run the application:
python src/main.py-
Account Management:
- Create a new account or log in
- Update email/password in account settings
- Secure logout
-
Password Management:
- Click "Add Password" to create a new entry
- Use the password generator for secure passwords
- Organize passwords into categories
- Check security status
-
Category Management:
- Create new categories
- Assign colors to categories
- Edit or delete categories
-
Security Indicators:
- ✅ Green checkmark: Secure password
⚠️ Warning: Password found in data breaches- 🔍 Real-time security monitoring
- Fernet encryption (AES-128-CBC with SHA256 HMAC)
- PBKDF2 password hashing
- Per-user encryption keys
- Password breach detection
- HaveIBeenPwned API integration
- Real-time security status
- Visual security indicators
This project uses:
- PyQt6 (GUI framework)
- SQLAlchemy (Database management)
- Cryptography (Secure encryption)
- Requests (API integration)