$npx skillfedfor your agent

pyzipper

AES encryption for zipfile.

Worth itPyPI CompressionReleased May 20269.3M downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — pyzipper-0.4.0-py3-none-any.whl
v0.4.0 · released 2026-05-14 · Python >=3.4 · 1 runtime deps: pycryptodomex

Yes. pyzipper is actively maintained, has no known vulnerabilities, installs with minimal friction, and solves a real gap in Python's standard library—AES encryption for zip files. The MIT license is permissive. Use it when you need encrypted zip support; the API is familiar to anyone who has used zipfile, and the single dependency is lightweight.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low install friction; pure Python wheel with a single runtime dependency on pycryptodomex.
  • Actively maintained with a release 92 days ago and ongoing commits.

License · maintenance · safety

MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; suitable for most projects.

last release 2026-05-14 (92 days) · last repo commit 2026-05-14 · 145 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 9,323,147 downloads/mo, #1,544 on PyPI

Verify before relying

pip install pyzipper

import pyzipper

secret_password = b'lost art of keeping a secret'
with pyzipper.AESZipFile('new_test.zip', 'w', compression=pyzipper.ZIP_LZMA, encryption=pyzipper.WZ_AES) as zf:
    zf.setpassword(secret_password)
    zf.writestr('test.txt', 'secret content')

with pyzipper.AESZipFile('new_test.zip') as zf:
    zf.setpassword(secret_password)
    content = zf.read('test.txt')
  • Whether the API surface differs meaningfully from Python 3.7's zipfile beyond the documented lack of pathlib wrappers
  • Performance characteristics compared to standard zipfile for non-encrypted archives
  • Compatibility of encrypted archives with other AES zip implementations beyond WinZip
Same gist for agents: .md · .json

What it is and what it does

pyzipper is a drop-in replacement for Python's zipfile module that adds support for reading and writing AES-encrypted zip archives using the WinZip AES encryption specification. It maintains the same API as Python 3.7's zipfile, so existing code using standard zipfile can often switch to pyzipper with minimal changes to add encryption support.

The package depends on pycryptodomex for cryptographic operations and supports AES encryption at 128, 192, or 256 bits (256 bits by default). It handles password-based encryption, CRC32 validation for data integrity, and follows WinZip's AES FAQ recommendations—notably, it excludes CRC32 values from encrypted file headers by default to avoid leaking information about small files, though this can be conditionally enabled for files above a configurable byte threshold.

Use it for

  • Encrypt sensitive files in zip archives for secure distribution or storage with password protection
  • Read WinZip-encrypted zip files programmatically without external tools or manual decryption
  • Build backup or archival systems that require both compression and AES encryption in a single step
  • Migrate from manual encryption workflows to a standard Python API for handling encrypted archives
  • Create password-protected zip files for compliance or data protection requirements

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

pyzipper is actively maintained, has no known vulnerabilities, installs with minimal friction, and solves a real gap in Python's standard library—AES encryption for zip files. The MIT license is permissive. Use it when you need encrypted zip support; the API is familiar to anyone who has used zipfile, and the single dependency is lightweight.

Install

pyzipper on PyPI

Before you install

Low install friction; pure Python wheel with a single runtime dependency on pycryptodomex. Actively maintained with a release 92 days ago and ongoing commits.

License in practice

MIT license permits commercial and private use with minimal restrictions; suitable for most projects.

Quickstart

pip install pyzipper

import pyzipper

secret_password = b'lost art of keeping a secret'
with pyzipper.AESZipFile('new_test.zip', 'w', compression=pyzipper.ZIP_LZMA, encryption=pyzipper.WZ_AES) as zf:
    zf.setpassword(secret_password)
    zf.writestr('test.txt', 'secret content')

with pyzipper.AESZipFile('new_test.zip') as zf:
    zf.setpassword(secret_password)
    content = zf.read('test.txt')

Verify before relying

  • Whether the API surface differs meaningfully from Python 3.7's zipfile beyond the documented lack of pathlib wrappers
  • Performance characteristics compared to standard zipfile for non-encrypted archives
  • Compatibility of encrypted archives with other AES zip implementations beyond WinZip

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.4
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
pycryptodomex
MaintenanceActively maintained 92 days since the last release
Last repo commit
First released
Downloads9,323,147 / month, #1,544 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: OS IndependentOperating System :: POSIXOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: System :: Archiving :: Compression

Evidence: pyzipper-0.4.0-py3-none-any.whl

Tags

Capabilities
AES encrypted zip filesencrypted zipfile pythonwinzip AES encryptionpassword protected zip archivescryptographic zip compressionsecure zip file handlingzipfile with encryption
Topics
encryptioncompressionarchive

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “AES encrypted zip files”

  • pyzipperpyzipper replaces Python's standard zipfile module to read and write…
  • stream-unzipStreams unzip operations on ZIP archives without loading entire files…
  • pyminizipCreates password-encrypted ZIP files that can be extracted on…

Give your agent the search over MCP, or paste the wish link into any chat.

More Compression packages

brotli Worth it
PyPI · Libraries · released Nov 2025

Provides Python bindings to the Brotli compression library, enabling lossless compression and decompression using a modern LZ77 variant with Huffman coding and context modeling.

Install it if you need Brotli compression in Python; the API is straightforward and the library is battle-tested.

permissive licensecompiled wheel
94.7Mdownloads / mo
backports.zstd With conditions
PyPI · Compression · released Jun 2026

Provides Zstandard compression support for Python versions before 3.14, backporting the standard library's zstd module along with zstd-enabled tarfile and zipfile modules.

PSF-2.0compiled wheel
77.8Mdownloads / mo
zopfli With conditions
PyPI · Compression · released Jun 2026

Zopfli is a Python binding for Google's Zopfli compression library, providing higher-density compression for zlib and gzip formats than standard algorithms, with tunable iteration and block-splitting parameters.

Apache-2.0compiled wheel · 3.10+
36.4Mdownloads / mo
python-snappy With conditions
PyPI · Software Development · released Aug 2024

Python binding for Google's Snappy compression library, providing fast compression and decompression of data via the cramjam backend.

However, dormant maintenance (715 days since last release) means security or compatibility issues may not be addressed quickly.

BSD-3-Clausepure Pythondormant
15.6Mdownloads / mo
pyzstd Skip
PyPI · Compression · released Dec 2025

Provides Python bindings to the Zstandard (zstd) compression library with an API similar to bz2, lzma, and zlib modules.

BSD-3-Clausepure Python · 3.10+
8.5Mdownloads / mo
compressed-rtf With conditions
PyPI · Text Processing · released Mar 2025

Compresses and decompresses Rich Text Format (RTF) data using the LZFu compression algorithm, implementing the Microsoft RTF Compression format.

However, maintenance is aging with no recent updates; verify that it meets your RTF variant requirements before relying on it for new projects.

MITpure Pythonaging
6.7Mdownloads / mo

See also pyAesCrypt · pyminizip · stream-unzip · zipfile-deflate64 · ansible-vault · zipfile-zstd · android_backup · zipfile36 · stream-zip · zipp