Skip to main content

File compression, encryption and decryption using XChaCha20 cipher and Argon2id (CLI and Python module)

Project description

FileEncrypt

A simple Python package and CLI tool for encrypting and decrypting files using XChaCha20-Poly1305 and Argon2id. FileEncrypt focuses on security, simplicity, and reliability. It uses the secure XChaCha20 cipher and Argon2id key derivation function to provide a high level of security.

Installation

Install from PyPI:

pip install fileencrypt

Or install locally (for development):

pip install .

Usage

As a CLI tool

After installation, you can use the CLI for both encryption and decryption:

Encrypt a file

fileencrypt encrypt <input_file> <output_file> <password>
  • If <password> is omitted, you will be prompted securely.

Decrypt a file

fileencrypt decrypt <input_file> <output_file> <password>
  • If <password> is omitted, you will be prompted securely.

Warning: Passing the password as a CLI argument may expose it to other users on the system (use with caution).

As a Python module

You can also use the encryption and decryption functionality in your own scripts:

from fileencrypt import encrypt_file, decrypt_file

encrypt_file("input.txt", "output.enc", "your_password")
decrypt_file("output.enc", "decrypted.txt", "your_password")

Requirements

  • Python 3.7+
  • argon2-cffi
  • pynacl

License

MIT

Project Links

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

fileencrypt-0.1.2.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

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

fileencrypt-0.1.2-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file fileencrypt-0.1.2.tar.gz.

File metadata

  • Download URL: fileencrypt-0.1.2.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for fileencrypt-0.1.2.tar.gz
Algorithm Hash digest
SHA256 033822da7caf27c363f45987f2f6d5584be87cdc1753d4e56cfdc229c5f21fbd
MD5 e5028a109312e6b86d18a51628b1c578
BLAKE2b-256 b0c17963126de9e897058e709cc14cea2fdaaebab20886edd49b6c239eed3829

See more details on using hashes here.

File details

Details for the file fileencrypt-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: fileencrypt-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.13

File hashes

Hashes for fileencrypt-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 20ffb3f142502dcca2e6a8ac921f1613f99660af57b8500d812c4058695b50d3
MD5 e3a918793209bd00a2ea7c3646cdbcec
BLAKE2b-256 fcce88b8209a3a27f6efb52f3f1865d00c5d05490741b0b4cc25886ab9d07ef0

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