Skip to main content

A simple and fast asynchronous file encryption library for large files and data streams.

Project description

Fast File Encryption is a lightweight, robust, and developer-friendly solution for encrypting large files—ranging from a few megabytes to several terabytes—securely and efficiently.

Ideal for environments that require:

  • Minimal runtime dependencies

  • Strong asymmetric encryption using RSA

  • High performance for both small and large files

Features

  • Requires only Python ≥ 3.11 and the cryptography package

  • Securely encrypts and decrypts files using RSA public/private key pairs

  • Only the public key is needed on the server—no private key exposure

  • Supports streaming and large file encryption (up to 10 TB and beyond)

Getting Started 🚀

New to the project? Start with our step-by-step Getting Started Guide. It walks you through installation, key generation, and your first file encryption.

▶️ Getting Started

Documentation 📚

Explore the full documentation:

  • In-depth reference for encryption and decryption classes

  • Key management tools and utilities

  • Technical details of the file format

▶️ Reference Manual

▶️ File Format Specification

Requirements

  • Python ≥ 3.11

  • cryptography package (based on OpenSSL)

Running the Tests

Install the dependencies from requirements.txt and execute pytest from the project root:

pip install -r requirements.txt
pytest

Project Goals

Fast File Encryption is built with the following principles:

  • Archive Data — Designed to securely archive files.

  • Secure by Default — No configurable options that weaken encryption.

  • Large File Support — Optimized for files up to several terabytes.

  • Metadata Block — Clean separation of encrypted metadata.

  • No Key = No Access — Data remains safe even if a server is compromised.

  • Corruption Detection — Built-in checksums detect silent corruption.

▶️ More about our design goals

Bug Reports & Feature Requests

Have feedback or ideas? Found a bug? We’d love to hear from you.

▶️ Submit an Issue

License

Copyright © 2021–2024 Tobias Erbsland – https://erbsland.dev/ EducateIT GmbH – https://educateit.ch/

Licensed under the Apache License, Version 2.0.

You may obtain a copy of the license at:

http://www.apache.org/licenses/LICENSE-2.0

Distributed on an “AS IS” basis, without warranties or conditions of any kind. See the LICENSE file for details.

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

fast_file_encryption-1.2.7.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

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

fast_file_encryption-1.2.7-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file fast_file_encryption-1.2.7.tar.gz.

File metadata

  • Download URL: fast_file_encryption-1.2.7.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for fast_file_encryption-1.2.7.tar.gz
Algorithm Hash digest
SHA256 577d04fc3f32908baf5ff23a1766d32e7f978370fbf87707b5b0eba5ddc49209
MD5 afa0c48c452ccc955c8c13db543225a1
BLAKE2b-256 84fc49d097882b5be90c476f56bbacf82e4de589fe3ae00a7e7d6039f1302cbb

See more details on using hashes here.

File details

Details for the file fast_file_encryption-1.2.7-py3-none-any.whl.

File metadata

File hashes

Hashes for fast_file_encryption-1.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 406fa46ac572af230e14d7dc444b745a24b4c36d757c3149512eb97717d11e9b
MD5 33911ee232ceffac4cb194b95fb30c46
BLAKE2b-256 35885e32f546a749ad0404b88fe598f4ed582f90444cd8e28fc188bf1b430a4f

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