# Local Password Vault (Python) A small educational desktop password vault built with Python and Tkinter. ## Features - Generates strong passwords using Python's `secrets` module - Saves website, username, password, and optional notes - Encrypts the entire vault with AES-256-GCM - Derives the encryption key from a master password using scrypt - Searches saved entries without showing passwords in the main list - Copies a password and clears it from the clipboard after 30 seconds - Stores the encrypted vault only on the local computer ## Install Python 3.10 or newer is recommended. ```bash python3 -m pip install cryptography ``` ## Run ```bash python3 local_password_vault.py ``` On first launch, create a master password of at least 12 characters. The encrypted file is stored here: ```text ~/.local_password_vault/vault.json ``` ## Important warning There is no master-password recovery. If the master password is forgotten, the vault cannot be decrypted. This project demonstrates sound building blocks, but it has not received an independent security audit. For critical personal or business credentials, use a mature, audited password manager such as 1Password, Bitwarden, KeePassXC, or Apple Passwords. ## What is actually stored? The JSON file contains encryption settings, a random salt, a random nonce, and encrypted ciphertext. It does not contain readable usernames or passwords.