A secure, command-line based password manager built in Python that offers strong encryption, secure storage, and comprehensive password management features.
- 🔒 AES-256 Encryption: All sensitive data is protected with industry-standard encryption
- 🔑 Argon2 Password Hashing: Master password security using modern password hashing algorithm
- 🎲 Strong Password Generation: Create truly random passwords with customizable parameters
- 🔍 Search and Categorization: Easily organize and find your credentials
- ⏱️ Automatic Session Timeout: Additional protection against unauthorized access
- 📊 Password Strength Evaluation: Get feedback on password security
- 📜 Password History: Track password changes over time
- 📋 Secure Clipboard Integration: Copy passwords without displaying them
- Python 3.8 or higher
- pip (Python package installer)
- Clone the repository:
git clone https://github.com/yourusername/securevault.git
cd securevault- Create a virtual environment (optional but recommended):
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install the required dependencies:
pip install -r requirements.txtRun the application:
python securevault.pyOn first run, you'll be prompted to create a master password. This password will be used to encrypt and secure all your data, so make sure it's strong but memorable.
The main menu provides the following options:
- View all entries: Browse all your stored credentials by category
- Search entries: Find credentials by service name or username
- Add new entry: Create a new password entry
- Change master password: Update your vault's master password
- Export vault: Export your data (unencrypted - use with caution!)
- Import vault: Import data from an export file
- Exit: Close the application
When viewing an entry, you can:
- Copy the password to clipboard
- View the password directly
- Edit the entry details
- Delete the entry
- View password history (if available)
- Your vault is stored locally as an encrypted file (
secure_vault.json) - No data is ever sent over the internet
- The master password is never stored, only a securely hashed version
- All passwords are encrypted with AES-256
- Session timeouts protect against unauthorized access
For development and contribution:
- Fork the repository
- Clone your fork
- Create a virtual environment and install dependencies:
pip install -r requirements.txt
pip install -r requirements-dev.txt # Development dependenciesThis project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
