Skip to main content

Scan, encrypt, and manage secrets in your project with key file or passphrase-based encryption.

Project description

Envveil

Envveil is a Python library and CLI tool for scanning, encrypting, and managing sensitive secrets (like API keys, tokens, and passwords) in your project. It helps you keep secrets out of your codebase, supports both key file and passphrase-based encryption, and provides audit logging and .gitignore management for maximum security.


Author

  • Satarupa Deb

Features

  • Scan for sensitive keys in .env, settings.py, JSON, and other files
  • Encrypt secrets using either a key file or a user-supplied passphrase (no key file needed)
  • Decrypt secrets easily for local use
  • Rotate encryption keys or passphrases and re-encrypt secrets
  • Retrofit protection for already-pushed repositories
  • Audit logging for all secret access and key rotation events
  • Automatic .gitignore management and warnings for unsafe key handling
  • Language-specific .gitignore template fetcher

Installation

From PyPI

pip install envveil

Usage Summary Table

Step Command Example What Happens
Scan scan --env .env Finds secrets in file
Encrypt encrypt --env .env --passphrase "your_passphrase" Encrypts secrets with passphrase, stores salt+data
Decrypt decrypt --passphrase "your_passphrase" Decrypts and prints secrets
Rotate Key rotate-key --old-passphrase "old" --new-passphrase "new" Changes passphrase, re-encrypts secrets
Audit Log (automatic) Logs all decrypt/rotate events
.gitignore (automatic) Ensures secret files are ignored by git

Security Notes

  • Passphrase mode: No key file is stored. The passphrase is never saved; if you forget it, secrets are unrecoverable.
  • Key file mode: Always ensure .envveil.key is in your .gitignore. envveil will warn you if not.
  • Audit log: All decryption and key rotation events are logged in envveil_audit.log.
  • .env.encrypted and key files are always added to .gitignore automatically.

License

MIT License


Disclaimer

envveil is a developer tool for secret management and does not guarantee absolute security. Always follow best practices for secret storage and access control in production environments.

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

envveil-0.2.0.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

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

envveil-0.2.0-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file envveil-0.2.0.tar.gz.

File metadata

  • Download URL: envveil-0.2.0.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for envveil-0.2.0.tar.gz
Algorithm Hash digest
SHA256 05ec5887c9040da3d1f319e9e97649e0035c49c7eea8a4bdd9b41f0d792a8eb9
MD5 8d9b4eaf4aeb2766cc082329e9af3acd
BLAKE2b-256 d2a97c49697dfffb6c54af4a7c0cb606acc507d202c6b9edad9192eff89fc209

See more details on using hashes here.

File details

Details for the file envveil-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: envveil-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for envveil-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 04c97c941107c29d1df28b972c077db99f0a74cc27259e88ecdf2ea4fc03b791
MD5 1d3a093fbf770349f3f0d1ffac1d4e50
BLAKE2b-256 6d5b79566885a85d2937fba399350f3c8a4e7b6c14b27c1c93ad1da79e4edde9

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