You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.5 KiB
Markdown
59 lines
1.5 KiB
Markdown
# keyvault (password manager)
|
|
|
|
## About The Project
|
|
|
|
This repository houses the code for keyvault, a fast, simple and secure CLI password manager written in Python. This program has the following features:
|
|
|
|
* 256-bit AES encryption
|
|
* SQLite3 database
|
|
* TOTP support
|
|
* Beautiful tables
|
|
* Password input masking
|
|
* Low process overhead
|
|
|
|
My goal for this project was to make an easy-to-use password manager to learn about cybersecurity concepts like encryption, databases and Python in general.
|
|
|
|
### Main Benefits
|
|
|
|
#### Easy to operate
|
|
|
|
Commands are incredibly simple even for those not used to CLI applications.
|
|
|
|
#### Increased data integrity
|
|
|
|
Instead of asymmetric encryption with public and private keys, all that needs to be backed up is the encrypted SQLite3 database.
|
|
|
|
## Installation Guide
|
|
|
|
### Dependencies
|
|
|
|
`python` >= v3
|
|
|
|
`sqlite` >= v3
|
|
|
|
### Linux/MacOS
|
|
|
|
1. Open the Terminal (Linux/MacOS) or Command Prompt (Windows)
|
|
|
|
2. Clone the git repository
|
|
|
|
`git clone https://forge.sufyaan.me/TitanElectrons/keyvault.git`
|
|
|
|
3. Change the current working directory to the 'keyvault' directory
|
|
|
|
`cd keyvault/`
|
|
|
|
4. Install the dependencies
|
|
|
|
`pip install -r files/dependencies.txt`
|
|
|
|
> [!WARNING]
|
|
> If you are using Arch Linux, use this command instead:
|
|
> `yay -S python-sqlcipher3 python-password-strength python-pyotp python-tabulate-git && pip install --break-system-packages pysqlcipher3`
|
|
> This will not break your system. The AUR version of the `pysqlcipher3` module is not enough.
|
|
|
|
5. Execute the Python script
|
|
|
|
`python3 keyvault.py`
|
|
|