Skip to main content

Tkinter desktop app for managing PGP keys, AES vault, and credential storage.

Project description

Encryption Vault

Encryption Vault packages the PDFSage desktop utility for managing PGP key material, AES passwords, and credential storage into a redistributable Python module. Installing the project from PyPI exposes a console entry point named encryption that launches the Tkinter user interface.

Features

  • Generate, import, and store PGP key pairs with optional secure vault persistence.
  • Manage multiple public/private keys and their passphrases from the PGP Vault tab.
  • Encrypt, decrypt, sign, and verify messages using GnuPG.
  • AES-256 encryption helpers for text and files.
  • Built-in password and payment card vault backed by the system keyring service.
  • Friendly password generator with Apple-style segments, memorable passphrases, and legacy high-entropy mode.
  • Hash calculator for MD5 and SHA-256 integrity checks.

Installation

pip install encryption-vault

Ensure you have a working GnuPG installation (gpg available on your PATH) before launching the application.

Usage

After the package is installed, launch the GUI from any terminal:

encryption

This command invokes the packaged Tkinter application. The first launch will prompt you to create or select a master account vaulted in the local keyring. Private-key passphrases entered during decryption or signing are saved automatically alongside the key material so they can be recalled from the vault tab when needed.

Sign-in options

Choose the sign-in method that fits your workflow:

  • Firebase (cloud sync) – authenticate with your Firebase email and password to sync vault data across devices.
  • Local vault – create a device-only account secured locally without touching Firebase. Ideal for fully offline usage.
  • Offline cache – bypass authentication entirely and reuse the most recently cached data (read/write while offline, sync when you later sign in).

Password generator styles

The credentials tab now offers three generation strategies:

  • Apple-style (default) – four-character segments separated by hyphens, avoiding look-alike symbols while guaranteeing a mix of upper, lower, and numeric characters.
  • Memorable – short passphrases assembled from a curated English word list with an optional numeric suffix.
  • Random – legacy full-character-set generator for maximum entropy.

Each strategy prompts for style-specific parameters (segments, word count, etc.) before the secret is copied to the clipboard.

Development

Install dependencies and run the app locally without packaging:

pip install -r requirements.txt
python -m encryption_vault.app

To build the wheel and source distribution:

python -m build

The project is configured to publish to PyPI via the workflow.yml GitHub Actions workflow once valid credentials are provided.

Deploying Firestore security rules

The repository includes production-ready Firestore rules in firestore.rules. Deploy them with the Firebase CLI:

firebase deploy --only firestore

Ensure you are authenticated (firebase login) and targeting the erosolar-encryption-b2c60 project or an alternative project of your choice (firebase use <project-id>).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

encryption_vault-0.8.0.tar.gz (29.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

encryption_vault-0.8.0-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file encryption_vault-0.8.0.tar.gz.

File metadata

  • Download URL: encryption_vault-0.8.0.tar.gz
  • Upload date:
  • Size: 29.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for encryption_vault-0.8.0.tar.gz
Algorithm Hash digest
SHA256 462f77dfed92a4d842b338cf07ae2f18b69917dcc617b79604e09a42de87eeda
MD5 654309aa0fabe2725d93bdbced94b0fc
BLAKE2b-256 ffb807c9155bc7988cf4e2c6a6fcb2bbb0290197e3a8e0f92fed3343446e01c5

See more details on using hashes here.

File details

Details for the file encryption_vault-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for encryption_vault-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b394c89cd54c8fd823944e40c4eec998aeeccc6a0967cf74428b6403e5f30fb
MD5 09d4e4379d424be61edaa91c38a8d668
BLAKE2b-256 a2073ef30e39db24f3ca0e70f7117a3145414be670e4605f8342e880910c595b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page