7z is a compressed archive file format that supports several different data compression, encryption and pre-processing filters. The 7z format initially appeared as implemented by the 7-Zip archiver. The 7-Zip program is publicly available under the terms of the GNU Lesser General Public License. The LZMA SDK 4.62 was placed in the public domain in December 2008. The latest version of 7-Zip and LZMA SDK is version 4.65.
The MIME type of 7z is
The 7z format provides the following main features:
The format's open architecture allows additional future compression methods to be added to the standard.
The following compression methods are currently defined:
A suite of recompression tools called AdvanceCOMP contains a copy of the DEFLATE encoder from the 7-Zip implementation; these utilities can often be used to further compress the size of existing gzip, ZIP, PNG, or MNG files.
The LZMA SDK comes with the BCJ / BCJ2 preprocessor included, so that later stages are able to achieve greater compression: For x86, ARM, PowerPC (PPC), IA64 and ARM Thumb processors, jump targets are normalized before compression by changing relative position into absolute values. For x86, this means that near jumps, calls and conditional jumps (but not short jumps and conditional jumps) are converted from the machine language "jump 1655 bytes backwards" style notation to normalized "jump to address 5554" style notation.
Similar executable pre-processing technology is included in other software; the RAR compressor features displacement compression for 32-bit x86 executables and IA64 Itanium executables, and the UPX runtime executable file compressor includes support for working with 16 bit values within DOS binary files.
The 7z format supports encryption with the AES algorithm with a 256-bit key. The key is generated from a user-supplied passphrase using an algorithm based on the SHA-256 hash algorithm. The SHA-256 is executed 256K times which causes a significant delay on slow PCs before compression or extraction starts. This technique is called key strengthening and is used to make a brute-force search for the passphrase more difficult.The 7z format provides the option to encrypt the filenames of a 7z archive.
Unlike WinRAR, 7z cannot extract "broken files" - that is (for example) if one has the first segment of a series of 7z files, 7z cannot give the start of the files within the archive - it must wait until all segments are downloaded. WinZip has the same limitation.