7z: Difference between revisions
No edit summary |
mNo edit summary |
||
Line 16: | Line 16: | ||
* BCJ2 - Converter for 32-bit x86 executables, see [[LZMA]]. Jump, call and conditional jump targets addresses are compressed separately. |
* BCJ2 - Converter for 32-bit x86 executables, see [[LZMA]]. Jump, call and conditional jump targets addresses are compressed separately. |
||
* [[Bzip2]] - Standard [[Burrows-Wheeler transform]] algorithm. Bzip2 uses (faster) Huffman coding, while Bzip is using (stronger) entropy coding. |
* [[Bzip2]] - Standard [[Burrows-Wheeler transform]] algorithm. Bzip2 uses (faster) Huffman coding, while Bzip is using (stronger) entropy coding. |
||
* [[DEFLATE]] - Standard [[LZ77]]-based algorithm |
* [[DEFLATE (algorithm)|DEFLATE]] - Standard [[LZ77]]-based algorithm |
||
7z also 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|SHA-256]] hash algorithm (with a large number of iterations, to make a brute-force search for the passphrase more difficult). |
7z also 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|SHA-256]] hash algorithm (with a large number of iterations, to make a brute-force search for the passphrase more difficult). |
Revision as of 01:54, 18 March 2005
In computing, 7z is an archive format which allows data compression using a number of compression algorithms. The format was initially implemented by the 7-Zip archiver but the file format is public and 7-Zip's implementation of it is publicly available under the GNU LGPL licence.
The main features of the 7z format are:
- Open, modular architecture (which allows any compression, conversion, or encryption method to be used)
- High compression ratio (depending on which compression method is used)
- Strong AES-256 encryption
- Support for large files (up to approximately 16 exabytes)
- Unicode file names
- Compression of archive headers
- allows compact archives: As with e.g. RAR and TGZ, one compressed data stream contains several files, as opposed to e.g. ZIP, where the archive file contains a separate compressed data stream for each archived file.
The format's open architecture allows additional compression methods to be added to the standard. The following are defined in the current version:
- LZMA - Improved and optimized version of LZ77 algorithm, using Markov chains/entropy coding and Patricia tries.
- PPMD - Dmitry Shkarin's 2002 PPMdH (PPMII/cPPMII) with small changes: PPMII is an improved version of the 1984 PPM compression algorithm (prediction by partial matching).
- BCJ - Converter for 32-bit x86 executables, see LZMA. Compresses target addresses of near jumps and calls.
- BCJ2 - Converter for 32-bit x86 executables, see LZMA. Jump, call and conditional jump targets addresses are compressed separately.
- Bzip2 - Standard Burrows-Wheeler transform algorithm. Bzip2 uses (faster) Huffman coding, while Bzip is using (stronger) entropy coding.
- DEFLATE - Standard LZ77-based algorithm
7z also 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 (with a large number of iterations, to make a brute-force search for the passphrase more difficult).
The MIME type of 7z is application/x-7z-compressed
.
Other compressors which use PPMII: RAR
Compressors which encode branch targets to improve program file compression ratio:
- UPX - for x86 16- and 32-bit binaries.
- 7-Zip - for x86 32-bit binaries, ARM, ARMThumb, PPC and IA64.
- RAR - for x86 32-bit and for IA64 Itanium. Also has preprocessors for true color data, audio data and tables.