7-Zip is a free and open source file archiver developed by Igor Pavlov in 1999. 7-Zip operates with the 7z archive format, but can read and write several other archive formats. The program can be used from a command line interface, graphical user interface, or with a window-based shell integration. The cross-platform version of the command line utility, p7zip, is also available.
7-Zip is free software distributed under the GNU Lesser General Public License (LGPL).
The 7z archive format
By default, 7-Zip creates 7z format archives with a .7z file extension. Each archive can contain multiple directories and files. As a container format, security or size reduction are achieved using a stacked combination of filters. These can consist of pre-processors, compression algorithms, and encryption filters.
The core .7z compression uses a variety of algorithms, the most common of which are bzip2, LZMA2, and LZMA.
LZMA is a relatively new system, making its debut as part of the 7z format. LZMA consists of a large LZ-based sliding dictionary up to 4 GB in size, backed by a range coder.
The native 7z file format is open and modular. All filenames are stored as Unicode.
The official 7z file format specification is distributed with the program’s source code. The specification can be found in plain text format in the ‘doc’ subdirectory of the source code distribution.
- The 256-bit AES cipher. Encryption can be enabled for both files and the 7z directory structure. When the directory structure is encrypted, users are required to supply a password to see the filenames contained within the archive. WinZip-developed zip file AES encryption standard is also available in 7-Zip to encrypt ZIP archives with AES 256-bit, but it does not offer filename encryption as in 7z archives.
- Volumes of dynamically variable sizes, allowing use for backups on removable media such as writable CDs and DVDs.
- Usability as a basic orthodox file manager when used in 2-panel mode.
- Multiple-core CPU threading settings can be configured.
- The ability to attempt to open EXE files as archives, allowing the decompression of data from inside many “Setup” or “Installer” or “Extract” type programs without having to launch them.
- The ability to unpack archives with corrupted file names, renaming the files as required.
- The ability to create self-extracting single- (but not multi-) volume archives.
- Command-line interface.