This Is a Password Manager Written in Python. We Are Using MySQL Database For Storing Our Passwords.
Introduction:
This documentation outlines the usage and implementation details of a Python Password Manager project. The Password Manager securely stores passwords in a MySQL database in encrypted format. The passwords are encrypted using strong cryptographic techniques and cannot be decrypted without accessing the script it.
Features:
-
Secure storage of passwords: Passwords are stored in a MySQL database in encrypted format, ensuring the security of sensitive information.
-
User-friendly interface: The Password Manager provides a simple and intuitive interface for users to manage their passwords efficiently.
-
Strong encryption: Passwords are encrypted using robust cryptographic algorithms, making it virtually impossible for unauthorized users to access the passwords without accessing the script itself.
Requirements:
- Python 3.x
- MySQL database
- mysql.connector library for Python (to interact with MySQL)
-
Clone the repository:
git clone https://github.com/DeadDroid401/PasswordManager.git
-
Navigate to the project directory:
cd PasswordManager
-
Install dependencies using pip:
pip install -r requirements.txt
- Modify the
base.py
script to include your MySQL database credentials (host, username, password). - Run the
base.py
script to create the necessary database and table. - Modify the
pass.py
script to include your MySQL database credentials (host, username, password) in two places.
-
Run the
pass.py
script using Python3:python3 pass.py
-
Follow the on-screen instructions to add, retrieve, update, or delete passwords.
-
Encryption: Passwords are stored in encrypted format using strong cryptographic algorithms. Even if the database is compromised, the passwords cannot be decrypted without accessing the script itself.
-
Database Security: Ensure proper access control and permissions are set up for the MySQL database to prevent unauthorized access.
-
Secure Script Handling: Keep the
pass.py
script secure and limit access to authorized users only. -
Regular Backups: Perform regular backups of the MySQL database to prevent data loss.
Here's a brief example of using the Password Manager:
- Run the
pass.py
script. - Choose an option from the menu (e.g., add a new password, list all passwords).
- Follow the prompts to perform the desired operation.
-
Dependence on Python and MySQL: The Password Manager relies on Python and MySQL, so ensure compatibility and availability of these dependencies.
-
Single User: The current implementation is suitable for a single-user environment. For multi-user support, additional authentication and access control mechanisms would need to be implemented.
-
No Password Recovery Mechanism: Since passwords are encrypted and cannot be decrypted without accessing the script, there is no password recovery mechanism. Users must ensure they remember their master password.