The latest version of the zlib compression library, a free data-compression library that can be used on any type of computer and OS has been released by authors Jean-Loup Gailly and Mark Adler. Integrity checks on the uncompressed data are performed using either the CRC-32 checksum, which is more reliable, or the ADLER 32 checksum, which slightly less reliable but much faster. Developers can use this library to add general-purpose file-based and in-memory compression and decompression capabilities to their applications. For in-memory operations, the zlib compressed data format (RFC 1950) is used, which is designed to be fast and compact. For its compression algorithm (the only one it supports), deflate (RFC 1951) is used, employing an LZ77 compression variant and Huffman coding. Overhead expansion is five bytes per 32 KB block, plus six bytes for the entire stream, which is very small compared to what the LZW method can do. According to the authors, LZW can double or triple file sizes in extreme cases. The authors claim that typical compression ratios of zlib are between 2:1 and 5:1. The gzip format, RFC 1952, is supported. However, it only supports compressing files on a file system: no in-memory operations. The gzip format includes the directory information of individual files. Again, the format uses the deflate compression algorithm. It lacks support for the following formats/methods: PKZip 4.5, BZip2, and Deflate64.
Comments