# 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`