Zip8 file format

The ZIP file format was originally created in 1989 by Phil Katz, founder of PKWARE.
Some history about the zip file format and Phil Katz
The original zip file format specification by Phil Katz
This is a proposal for a simple extension to the standard PKZIP 2.04g format. This proposal addresses the main limitations of the popular zip file format: 4GB maximum file size and 65535 maximum number of files.

Zip8 files use the file extension ".zip8". Zip8 format is applied automatically during the compression operations if any of the following conditions is met:
- any of the files inside the archive or the zip file itself has size larger then 2GB
- the number of archived files is greater than 65535

Zip8 format is currently supported by
"BigSpeed Zipper" utility (for end users) and "BigSpeed Zip OCX" library (for software developers).


The following table shows the specification of Zip8 format compared to the original PKZIP 2.04g format.


Overall zip file format:

Files are stored in arbitrary order. Large zip files can span multiple diskette media.

[local file header + file data]
[local file header + file data]
. . .
[central directory file header]
[central directory file header]
. . .
[end of central directory record]




Local file header:

Field PKZIP 2.04g Zip8

local file header signature 4 bytes (0x04034b50) 4 bytes (0x84834b50)
version needed to extract 2 bytes 2 bytes
general purpose bit flag 2 bytes 2 bytes
general purpose bit flag 2 bytes 2 bytes
compression method 2 bytes 2 bytes
last mod file time 2 bytes 2 bytes
last mod file date 2 bytes 2 bytes
compressed size 4 bytes 8 bytes
uncompressed size 4 bytes 8 bytes
filename length 2 bytes 2 bytes
extra field length 2 bytes 2 bytes
file name variable size variable size
extra field variable size variable size




Central directory file header:

Field PKZIP 2.04g Zip8

central file header signature 4 bytes (0x02014b50) 4 bytes (0x82814b50)
version made by 2 bytes 2 bytes
version needed to extract 2 bytes 2 bytes
general purpose bit flag 2 bytes 2 bytes
compression method 2 bytes 2 bytes
last mod file time 2 bytes 2 bytes
last mod file date 2 bytes 2 bytes
crc-32 2 bytes 2 bytes
compressed size 4 bytes 8 bytes
uncompressed size 4 bytes 8 bytes
filename length 2 bytes 2 bytes
extra field length 2 bytes 2 bytes
file comment length 2 bytes 2 bytes
disk number start 2 bytes 2 bytes
internal file attributes 2 bytes 2 bytes
external file attributes 2 bytes 2 bytes
relative offset of local header 4 bytes 8 bytes
file name variable size variable size
extra field variable size variable size
file comment variable size variable size




End of central directory record:

Field PKZIP 2.04g Zip8

end of central dir signature 4 bytes (0x06054b50) 4 bytes (0x86854b50)
number of this disk 2 bytes 2 bytes
number of the disk with the start of the central directory 2 bytes 2 bytes
total number of entries in the central dir on this disk 2 bytes 4 bytes
total number of entries in the central dir 2 bytes 4 bytes
size of the central directory 4 bytes 4 bytes
offset of start of central directory with respect to the starting disk number 4 bytes 8 bytes
zip file comment length 2 bytes 2 bytes
zip file comment (variable size) (variable size)


(c) Bigspeed Computing Inc. 1998-. Mastering algorithms.