Metadata-Version: 2.4
Name: fast-file-encryption
Version: 1.2.7
Summary: A simple and fast asynchronous file encryption library for large files and data streams.
Home-page: https://github.com/erbsland-dev/fast-file-encryption
Author: Erbsland DEV
Author-email: info@erbsland.dev
Project-URL: Documentation, https://erbsland-dev.github.io/fast-file-encryption/
Project-URL: Source, https://github.com/erbsland-dev/fast-file-encryption
Project-URL: Issues, https://github.com/erbsland-dev/fast-file-encryption/issues
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Security
Requires-Python: >=3.11
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: cryptography>=45.0.0
Dynamic: license-file

Fast File Encryption
====================

**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 <https://erbsland-dev.github.io/fast-file-encryption/chapters/get-started.html>`_

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 <https://erbsland-dev.github.io/fast-file-encryption/chapters/reference/>`_

▶️ `File Format Specification <https://erbsland-dev.github.io/fast-file-encryption/format.html>`_

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 <https://erbsland-dev.github.io/fast-file-encryption/goals.html>`_

Bug Reports & Feature Requests
------------------------------

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

▶️ `Submit an Issue <https://github.com/erbsland-dev/fast-file-encryption/issues>`_

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.
