Sample ZIP files for testing extractors and uploads — free, CC0

Zip is the archive format everything claims to support, and the one with the most ways to go wrong. These files cover what extractors actually have to handle.

zip/3-text-files.zip is the ordinary case: three deflated text files with fixed timestamps. zip/nested-directories.zip has four entries in a three-level tree, for extractors that must create directories as they go. zip/empty.zip is a 22-byte end-of-central-directory record and nothing else — valid, and rejected by plenty of readers. zip/mixed-fixtures.zip packs four published fixtures, a PDF, a PNG, a CSV and a JSON file, read from the bytes that were actually published, so what you extract can be compared against the originals. zip/aes256-password-loremfile.zip is encrypted with the password loremfile, published on purpose because an encrypted archive nobody has the password to is useless as a fixture.

For size limits there are zip/1mb.zip, zip/10mb.zip and zip/100mb.zip, each a single incompressible member so the archive's size is honest rather than padded.

Related formats: TAR, GZIP and 7z.

8 files. The same list as JSON: https://loremfile.dev/zip/index.json

ZIP files
FileSizePropertiesDescription
100mb.zip 99 MB About 100MB of incompressible seeded noise in one member, the largest archive in the launch set.
Snippets
curl -O https://loremfile.dev/zip/100mb.zip
<a href="https://loremfile.dev/zip/100mb.zip">download</a>
10mb.zip 10 MB About 10MB of incompressible seeded noise in one member.
Snippets
curl -O https://loremfile.dev/zip/10mb.zip
<a href="https://loremfile.dev/zip/10mb.zip">download</a>
1mb.zip 999.4 KB About 1MB: one incompressible seeded-noise member, so the archive's size is honest rather than padded.
Snippets
curl -O https://loremfile.dev/zip/1mb.zip
<a href="https://loremfile.dev/zip/1mb.zip">download</a>
3-text-files.zip 1.8 KB Three small Lorem Ipsum text files, deflated, with fixed timestamps and permissions.
Snippets
curl -O https://loremfile.dev/zip/3-text-files.zip
<a href="https://loremfile.dev/zip/3-text-files.zip">download</a>
aes256-password-loremfile.zip 2.1 KB encrypted AES-256 encrypted with the password 'loremfile', published here on purpose because an encrypted fixture nobody can open would be useless.
Snippets
curl -O https://loremfile.dev/zip/aes256-password-loremfile.zip
<a href="https://loremfile.dev/zip/aes256-password-loremfile.zip">download</a>
empty.zip 22 B The empty zip: a 22-byte end-of-central-directory record and nothing else. Valid, and rejected by plenty of readers.
Snippets
curl -O https://loremfile.dev/zip/empty.zip
<a href="https://loremfile.dev/zip/empty.zip">download</a>
mixed-fixtures.zip 5.2 KB Four published fixtures in one archive: a PDF, a PNG, a CSV and a JSON file, read from the bytes that were published.
Snippets
curl -O https://loremfile.dev/zip/mixed-fixtures.zip
<a href="https://loremfile.dev/zip/mixed-fixtures.zip">download</a>
nested-directories.zip 1.2 KB Four entries in a three-level directory tree, for extractors that must create directories.
Snippets
curl -O https://loremfile.dev/zip/nested-directories.zip
<a href="https://loremfile.dev/zip/nested-directories.zip">download</a>

File names follow the naming grammar. Verify a download against sha256sums.txt.