Metadata-Version: 2.4
Name: cofferfile
Version: 0.0.10
Summary: A python xxxFile like (ie GzipFile, BZ2File, ...) for manipulating encrypted files (Fernet, Nacl, ...).
Project-URL: HomePage, https://github.com/bibi21000/CofferFile
Project-URL: Issues, https://github.com/bibi21000/CofferFile/issues
Project-URL: Changelog, https://github.com/bibi21000/CofferFile/blob/master/CHANGELOG.md
Project-URL: Documentation, https://bibi21000.github.io/CofferFile/
Author-email: bibi21000 <bibi21000@gmail.com>
Maintainer-email: bibi21000 <bibi21000@gmail.com>
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Requires-Dist: importlib-metadata<7; python_version < '3.10'
Provides-Extra: benchmark
Requires-Dist: pytest-ordering; extra == 'benchmark'
Provides-Extra: build
Requires-Dist: build; extra == 'build'
Requires-Dist: twine; extra == 'build'
Provides-Extra: cli
Requires-Dist: click; extra == 'cli'
Requires-Dist: filelock; extra == 'cli'
Requires-Dist: pyzstd; extra == 'cli'
Provides-Extra: doc
Requires-Dist: pdoc; extra == 'doc'
Provides-Extra: store
Requires-Dist: filelock; extra == 'store'
Requires-Dist: pyzstd; extra == 'store'
Provides-Extra: test
Requires-Dist: bandit; extra == 'test'
Requires-Dist: coverage[toml]; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-mock; extra == 'test'
Requires-Dist: pytest-random-order; extra == 'test'
Requires-Dist: pytest-xdist; extra == 'test'
Requires-Dist: ruff; extra == 'test'
Description-Content-Type: text/markdown

[![CircleCI](https://dl.circleci.com/status-badge/img/gh/bibi21000/CofferFile/tree/main.svg?style=shield)](https://dl.circleci.com/status-badge/redirect/gh/bibi21000/CofferFile/tree/main)
[![CodeQL](https://github.com/bibi21000/CofferFile/actions/workflows/codeql.yml/badge.svg)](https://github.com/bibi21000/CofferFile/actions/workflows/codeql.yml)
[![codecov](https://codecov.io/gh/bibi21000/CofferFile/graph/badge.svg?token=4124GIOJAK)](https://codecov.io/gh/bibi21000/CofferFile)
![PyPI - Downloads](https://img.shields.io/pypi/dm/cofferfile)

# CofferFile

A python xxxFile like (ie TarFile, GzipFile, BZ2File, pyzstd.ZstdFile, ...)
for encrypting files with Fernet, Nacl, ...

 - encrypting / decrypting data using chunks to reduce memory footprint
 - chainable with other python xxxFile interfaces (stream mode)
 - interface to compress/encrypt and decrypt/decompress (with pyzstd) in stream mode
 - look at BENCHMARK.md ... and chain :)

If you're looking for a more powerfull storage for your sensible datas,
look at PyCoffer : https://github.com/bibi21000/PyCoffer.

This is the main library.
Look at https://github.com/bibi21000/NaclFile, https://github.com/bibi21000/FernetFile,
https://github.com/bibi21000/TinkFile or https://github.com/bibi21000/AesFile for implementations with cryptograhics tools.

Look at documentation : https://bibi21000.github.io/CofferFile.

