Filename extension | |
---|---|
Internet media type | application/x-7z-compressed |
Uniform Type Identifier (UTI) | org.7-zip.7-zip-archive |
Magic number | '7', 'z', 0xBC, 0xAF, 0x27, 0x1C |
Developed by | Igor Pavlov[1] |
Initial release | 1999; 22 years ago[2] |
Type of format | Data compression |
Open format? | Yes: GNU Lesser General Public License / Public domain |
Website | 7-zip.org |
7Z Opener is made to be lean and not take up a lot of space on your hard drive or memory on your computer. Its minimal interface makes using it a cinch - no manuals needed here. So no matter what file you've downloaded, or what archive your friends sent you in the email, this app will quickly get you to the contents without clogging your.
Zip, unzip, rar files online. Extract files from archive online, no installation, safe and free. Unzip, unrar decompression in cloud. Uncompress, unzipping tool. Compression ratio results are very dependent upon the data used for the tests. Usually, 7-Zip compresses to 7z format 30-70% better than to zip format. And 7-Zip compresses to zip format 2-10% better than most of other zip compatible programs. The 7z format provides the option to encrypt the filenames of a 7z archive. The 7z format does not store filesystem permissions (such as UNIX owner/group permissions or NTFS ACLs), and hence can be inappropriate for backup/archival purposes. Note: Like RAR, one can choose to encrypt Archive header as well - this will hide the file names inside the archive. Option for this is to use -mhe swith with 7z command line tool, or to check the checkbox 'Encrypt filenames' in the GUI.
7z is a compressed archive file format that supports several different data compression, encryption and pre-processing algorithms. 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 stable version of 7-Zip and LZMA SDK is version 19.00.[2]
The 7z file format specification is distributed with 7-Zip's source code. The specification can be found in plain text format in the 'doc' sub-directory of the source code distribution.
Features and enhancements[edit]
The 7z format provides the following main features:
- Open, modular architecture that allows any compression, conversion, or encryption method to be stacked.
- High compression ratios (depending on the compression method used).
- AES-256 encryption.
- Large file support (up to approximately 16 exbibytes, or 264 bytes).
- Unicode file names.
- Support for solid compression, where multiple files of like type are compressed within a single stream, in order to exploit the combined redundancy inherent in similar files.
- Compression and encryption of archive headers.
- Support for multi-part archives : e.g. xxx.7z.001, xxx.7z.002, ... (see the context menu items Split File... to create them and Combine Files... to re-assemble an archive from a set of multi-part component files).
- Support for custom codec plugin DLLs.
The format's open architecture allows additional future compression methods to be added to the standard.
Compression methods[edit]
The following compression methods are currently defined:
- LZMA – A variation of the LZ77 algorithm, using a sliding dictionary up to 4 GB in length for duplicate string elimination. The LZ stage is followed by entropy coding using a Markov chain-based range coder and binary trees.
- LZMA2 – modified version of LZMA providing better multithreading support and less expansion of incompressible data.[3]
- Bzip2 – The standard Burrows–Wheeler transform algorithm. Bzip2 uses two reversible transformations; BWT, then Move to front with Huffman coding for symbol reduction (the actual compression element).
- 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).
- DEFLATE – Standard algorithm based on 32 kB LZ77 and Huffman coding. Deflate is found in several file formats including ZIP, gzip, PNG and PDF. 7-Zip contains a from-scratch DEFLATE encoder that frequently beats the de facto standard zlib version in compression size, but at the expense of CPU usage.
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.
Pre-processing filters[edit]
The LZMA SDK comes with the BCJ and BCJ2 preprocessors included, so that later stages are able to achieve greater compression: For x86, ARM, PowerPC (PPC), IA-64 Itanium, and ARM Thumb processors, jump targets are 'normalized' [3] 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; all jumps to 5554, perhaps a common subroutine, are thus encoded identically, making them more compressible.
- BCJ – Converter for 32-bit x86 executables. Normalise target addresses of near jumps and calls from relative distances to absolute destinations.
- BCJ2– Pre-processor for 32-bit x86 executables. BCJ2 is an improvement on BCJ, adding additional x86 jump/call instruction processing. Near jump, near call, conditional near jump targets are split out and compressed separately in another stream.
- Delta encoding – delta filter, basic preprocessor for multimedia data.
Similar executable pre-processing technology is included in other software; the RAR compressor features displacement compression for 32-bit x86 executables and IA-64 executables, and the UPX runtime executable file compressor includes support for working with 16-bit values within DOS binary files.
Encryption[edit]
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 function. The SHA-256 is executed 218 (262144) times,[4] which causes a significant delay on slow PCs before compression or extraction starts. This technique is called key stretching and is used to make a brute-force search for the passphrase more difficult. Current GPU-based, and custom hardware attacks limit the effectiveness of this particular method of key stretching,[5] so it is still important to choose a strong password.The 7z format provides the option to encrypt the filenames of a 7z archive.
Limitations[edit]
The 7z format does not store filesystem permissions (such as UNIX owner/group permissions or NTFSACLs), and hence can be inappropriate for backup/archival purposes. A workaround on UNIX-like systems for this is to convert data to a tar bitstream before compressing with 7z. But it is worth noting that GNU tar (common in many UNIX environments) can also compress with the LZMA algorithm natively, without the use of 7z, and that in this case the suggested[6] file extension for the archive is '.tar.lzma' (or just '.tlz'), and not '.tar.7z'. On the other hand, it is important to note, that tar does not save the filesystem encoding, which means that tar compressed filenames can become unreadable if decompressed on a different computer. It is also possible to use LZMA2 by running it through the xz tool. Recent versions of GNU tar support the -J
switch, which runs TAR through XZ. The file extension is '.tar.xz' or '.txz'. This method of compression has been adopted with many distributions for packaging, such as Arch, Debian (deb), Fedora (rpm) and Slackware.
The 7z format does not allow extraction of some '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. The 7z format also lacks recovery records, making it vulnerable to data degradation unless used in conjunction with external solutions, like parchives, or within filesystems with robust error-correction. By way of comparison, zip files also lack a recovery feature.
See also[edit]
References[edit]
- ^'A Few Questions for Igor Pavlov'. Dr. Dobb's Data Compression Newsletter. 30 April 2003. Retrieved 26 December 2009.
- ^ abHistory of 7-zip changes
- ^ abCollin, Lasse. 'lzma_.lzma'. liblzma bindings. Archived from the original on 8 February 2010. Retrieved 3 January 2010.
Compared to LZMA1, LZMA2 adds support for LZMA_SYNC_FLUSH, uncompressed chunks (smaller expansion when trying to compress uncompressible data), possibility to change lc/lp/pb in the middle of encoding, and some other internal improvements.
- ^7-zip source code
- ^Colin Percival.scrypt.As presented in'Stronger Key Derivation via Sequential Memory-Hard Functions'.presented at BSDCan'09, May 2009.
- ^https://www.gnu.org/software/tar/manual/html_section/Compression.html
Further reading[edit]
- Salomon, David (2007). Data compression: the complete reference. Springer. p. 241. ISBN978-1-84628-602-5.
External links[edit]
- 7z on SourceForge.net
Download
- Supported OS: macOS 10.12 or later, 64-bit processor
- All-inclusive compression/decompression/browsing/editing App
- Extraction for 30+ formats, including: RAR/RAR5/7Z/ZIP
- Compressing an archive with password and multi-volume
- Fast compression with multi-core
7z Archive Apk
Bandizip is a powerful archiver for macOS users with a variety of convenient features.
Compression
- Supported formats: ZIP, 7Z(lzma2), ZIPX(xz), TAR, TGZ, GZ
- ZIP file modification (add/delete/rename)
- Encrypted archive creation
- Supports AES256 encryption algorithm
- Supports compression of 4GB+ size files
- Unicode or MBCS filename for ZIP format
- Multi-volume archive creation of ZIP/7z format
Bandizip | Mac Finder (Archive Utility) |
---|
May vary depending on the system environment.
Decompression
- Supported formats: 7Z, ACE, AES, ALZ, ARJ, BH, BIN, BZ, BZ2, CAB, Compound(MSI), EGG, GZ, IMG, ISO, ISZ, LHA, LZ, LZH, LZMA, PMA, RAR, RAR5, SFX(EXE), TAR, TBZ, TBZ2, TGZ, TLZ, TXZ, UDF, WIM, XPI, XZ, Z, ZIP, ZIPX, ZPAQ, ZST
- Easy view of an archive's file list
- Extraction of selected files only. Also supports drag & drop
- Availability of ZIP & RAR format archive comment
- One-step extraction of TGZ/TBZ formats
7z File Mac Terminal
7z Archive Msi
Various features
- File integrity check test to ensure whether an archive is damaged or not
- Supports Code-page change features
- Finder services menu integration