A simple and secure Password Manager built using Python. It provides a graphical interface to securely store, manage, generate, and retrieve passwords.
- 🔑 Master password protection
- 🔒 AES-256-GCM encryption for stored passwords
- 🗄️ SQLite database for storing password information
- 🎲 Secure password generator
- 💪 Password strength checker
- 🚨 Password breach checking
- 🔍 Search saved passwords
- 👁️ Show/Hide password option
- 📋 Copy password to clipboard
- ⏱️ Automatic session lock
- 📤 Export password data to JSON
- 🗑️ Add, retrieve, update, and delete passwords
- Python
- Tkinter – Graphical User Interface
- SQLite3 – Database
- Cryptography – Password encryption
- AES-256-GCM – Encryption method
- PBKDF2-HMAC-SHA256 – Key derivation
- Base64 – Secure data encoding
Secure-Password-Manager/
│
├── main.py
├── passwords_secure.db
└── README.md
Make sure Python is installed on your computer.
Install the required library:
pip install cryptographyTkinter and SQLite3 are included with most Python installations.
- Clone the repository:
https://github.com/bhavyweb3/Secure-Password-Manager.git- Open the project folder:
cd YOUR-REPOSITORY- Install the required package:
pip install cryptography- Run the application:
python main.pyThe application uses a master password to protect access to stored passwords.
Passwords are encrypted before being stored in the SQLite database. The project uses AES-256-GCM encryption and PBKDF2-HMAC-SHA256 for secure key generation.
The application also provides a secure password generator and checks password strength.
The application uses a local SQLite database:
passwords_secure.db
The database stores information such as:
- Service name
- Username
- Encrypted password
- Salt
- Initialization Vector (IV)
- Authentication tag
- Created and updated time
Passwords are not stored as plain text.
- AES-256-GCM encryption
- Secure random password generation
- Strong master password validation
- PBKDF2 key derivation
- Automatic session timeout
- Clipboard auto-clear
- Password strength analysis
The project includes a password breach checking feature. The current implementation uses a built-in list and simulated breach checking for demonstration purposes.
Bhavya Goel
B.Tech Computer Science – Blockchain
This project is created for educational and academic purposes.