A secure, lightweight and fully local CLI password manager built in Python.
- 🔐 AES-GCM Encryption with Scrypt key derivation
- 🎲 Unique Salt per Vault & fresh Nonce per Encryption
- 🛡️ Single Master Password
- 👨👩👧👦 Multi-Vault Support
- 🏠 Fully Local -- No Cloud Storage
- 📝 Add Notes to Your Entries
- 📱 Simple CLI Interface
Clone the repository:
git clone https://github.com/contractaddress/vault.gitcd vaultActivate a Python virtual environment:
(if you do not want to download dependencies system-wide)
python3 -m venv .venv && source .venv/bin/activateInstall dependencies:
pip3 install -r requirements.txt cd src/Run the main application:
python3 main.pyWhen you run the vault for the first time:
- A
~/.local/share/vault/directory will created - You'll be prompted to create a master password
- A new encrypted vault file (
vault.json) will be created insidevault/ - Remember your master password - it cannot be recovered if lost!
- Occasionally Backup your vault file:
vault.json - Remember your master password: There's no password recovery
- Secure your environment: Run on trusted systems only
vault/
├── src/
│ ├── main.py # Main application entry point
│ ├── vault.py # Vault creation, loading, and saving
│ ├── crypto.py # Encryption and decryption functions
│ └── commands.py # In-app commands
├── media/
│ └── VAULT.gif # Demo GIF for README
├── requirements.txt # Python dependencies
└── README.md # This file
packages present in requirements.txt
- cryptography: AES-GCM encryption and Scrypt key derivation
- colorama: Cross-platform colored terminal output
- cffi: C bindings for cryptography
- pycparser: C parser for cffi
- pyinstaller: Builds standalone executables from Python scripts
- pyinstaller-hooks-contrib: Extra hooks improving PyInstaller compatibility
- altgraph: Dependency graph library used by PyInstaller
- packaging: Version and metadata utilities required by PyInstaller
- setuptools: Core Python packaging and installation library
