Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
WikiProject Computing (Rated C-class, Mid-importance)
WikiProject iconThis article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
C This article has been rated as C-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.


The text currently reads:

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.

That "and conditional jumps (but not short jumps and conditional jumps)" doesn't seem to make much sense. If someone knows what it's supposed to say, please correct. Otus (talk) 14:05, 27 August 2009 (UTC)Reply[reply]

Solid compression[edit]

Okay, what the heck is Solid compressing? I'm going to take it out of the main page just now, and we can put it back when I have some idea what it is. There's probably a better english-language phrase already in use. -- Finlay McWalter 23:41, 10 Nov 2003 (UTC)

A FAQ of solid archives: whkoh 03:59, Dec 1, 2003 (UTC)

I made and linked to a new page on solid compression. The term is also used in reference to the RAR format, so it's best to have it in one place. Graue 23:49, 14 May 2005 (UTC)Reply[reply]

Branch targets[edit]

The article mentions: "Compressors which encode branch targets to improve ..."

What is a branch target?

This refers to machine instructions. A particular type of instruction tells the CPU to 'branch' or 'jump' to another address based upon some condition. The specified address ('target') can be absolute or relative (to the address of the current instruction). The terminology "branch" here most likely also includes unconditional jump instructions.

How does this impact compression? Well, for example, if there are 20 branch instructions branching to the same address and the address specification is absolute, this repeated pattern can be easily compressed. However, if the address specification is relative, no pattern is obvious. I suspect that 'encoding branch target [addresses]' transforms the data stream so that relative addresses form patterns. -- Rick Jones Aug 07, 2005.

This has apparently been "acted on". ¦ Reisio 15:47, 29 October 2005 (UTC)Reply[reply]


Is 7z format documented anywhere? The 7-zip web site has a page of general info about the format (i.e. a brief list of supported features) but I mean an actual specification that an implementer could use. Thanks. Phr (talk) 23:36, 19 July 2006 (UTC)Reply[reply]

Check the source code file, subdirectory DOC/. Simosx 21:24, 29 July 2007 (UTC)Reply[reply]
I've just started describing the 7z file specification as a part of OSS alternative library development project, with knowledge from implementation experiences and standardization project experience as an editor. It may help to clarify the 7z format for other implementer. If any 3rd party become refer it, it will be able to be cited into the article. Miurahr (talk) 05:54, 28 June 2020 (UTC)Reply[reply]

WinZip's support of 7z[edit]

I don't believe winzip supports 7z as listed. -- 01:14, 23 July 2006 (UTC)Reply[reply]

Agreed, I just tried the latest winzip version (10?) and it had no clue what 7z was. -- 23:56, 5 August 2006 (UTC)Reply[reply]


"...converted from the machine language "jump 1655 bytes backwards" style notation to normalized "jump to address 5554" style notation."

Would this not break the CRC self check build into some applications? —The preceding unsigned comment was added by (talk) 13:09, 23 February 2007 (UTC).Reply[reply]

I don't know for sure, but I'd guess the process is reversed WHEN the files are extracted from the archive?

"No support" entry[edit]

Is this entry really necessary? It just seems superfluous. StriderSkorpion 19:25, 19 May 2007 (UTC)Reply[reply]

Changing Encryption to Security[edit]

I think it would be good to change the section Encryption to Security. Security is a superset of Encryption, and we can add issues such as the option to encrypt filenames. Simosx 00:40, 30 July 2007 (UTC)Reply[reply]

JZip article nominated for deletion[edit]

Please discuss on its AfD page. --AVRS 12:49, 6 September 2007 (UTC)Reply[reply]

LZMA error[edit]

This page states that the LZMA compression algorithm has a variable compression-dictionary size that can go up tp 1GB, both the 7zip[1] site and the LZMA Wikipedia page say it can go up to 4GB —Preceding unsigned comment added by AlucardNoir (talkcontribs) 10:56, 29 June 2008 (UTC)Reply[reply]

Unclear Wording[edit]

The page says that LZMA2 provides "better compression ratio for data than can't be compressed". That doesn't make sense. —Preceding unsigned comment added by Brantgurga (talkcontribs) 16:00, 2 November 2009 (UTC)Reply[reply]

It does make sense, it's just you who don't understand it. It just means that LZMA2 has less overhead when producing compressed output out data which cannot be compressed. Artem-S-Tashkinov (talk) 08:26, 20 December 2009 (UTC)Reply[reply]
I agree it is confusing as written. There is a tiny amount of overhead for metadata in any file compression algorithm (for storing filenames, checksums, attribute bits, etc.) But because the claim has no citation for someone to find out what it really means, a person trying to learn something new (probably a good reason for Wikipedia to exist) is left scratching their heads at an apparent self-contradiction. I will try to find a reliable source to back this claim up, and if I find one, I will cite that reference and improve the wording. Failing that, I would be inclined to delete the entire sentence because in its current state it harms the article more than it helps. The claim might not even be true, for all I know. CosineKitty (talk) 16:15, 21 December 2009 (UTC)Reply[reply]
I found an explanation in the LZMA source code and cited it. I revised the wording in a way I hope is less confusing: the source implies that when incompressible data is encountered, most compression algorithms will generate output that is bigger than the input. LZMA2 apparently causes less expansion than LZMA. CosineKitty (talk) 15:57, 3 January 2010 (UTC)Reply[reply]

LZMA2 decompression speed[edit]

I added that LZMA2 has ... "much faster than LZMA decompression speed." according to my own research and it was subsequently removed requiring "Citation needed". I decided no to take any action further since I have yet to find any reliable Internet sources which can be accepted as a citation. Artem-S-Tashkinov (talk) 08:32, 20 December 2009 (UTC)Reply[reply]

LZMA2 does not decompress faster. See LZMA2 announcement listed 2 simple modifications: work is divided into blocks that are compressed separately for faster (but worse compression) multithreading performance and data is further divided into sub-blocks that can be stored (to minimize expansion). So if your data was already compressed it did "decompress faster" since no decompression was needed. Samir000 (talk) 18:52, 20 December 2009 (UTC)Reply[reply]
Thanks for the link because it partly proved my theory: if you look at results of Image2, Source1, Database1, PGN1 and Pitches1 tests you will notice that LZMA2 decompression speed is from 30 to 60% better. Anyway, these results are quite mixed and they cannot be applied to all existing file types, so let's leave these findings out of this article (besides Igor warned that LZMA2 is an experimental codec and it may be removed or abandoned in the future). Artem-S-Tashkinov (talk) 23:44, 27 December 2009 (UTC)Reply[reply]
Apparently you are reading it incorrectly. DT = Decompression Time. So the difference is about 0% and the results aren't mixed at all. Samir000 (talk) 20:02, 29 December 2009 (UTC)Reply[reply]

Marvelous sentence (LZMA2)[edit]

"better compression ratio for data that can't be compressed"

Truly penned by a genius. -- (talk) 17:36, 29 December 2009 (UTC)Reply[reply]

MM compression[edit]

Why exactly does revision 339711452 fall under WP:FORUM definition/rule? Artem-S-Tashkinov (talk) 13:41, 25 January 2010 (UTC)Reply[reply]

I'm talking about this edit: The 7z format doesn't contain good filters for multimedia data[1], thus it doesn't compress well multimedia file formats like BMP, raw WAV audio, raw uncompressed video, etc. This is a recurring request and topic in 7-zip support forums. This problem can be partially resolved by using third-party multimedia preprocessors like MM compression library. Artem-S-Tashkinov (talk) 12:06, 10 February 2010 (UTC)Reply[reply]


file permissions[edit]

The article says that the 7z format does not store UNIX owner/group permissions, but when I compress/decompress a file with the compress dialog of Nautilus on Debian, the file created from the archive has the executable flag set iff the original file has it set —Preceding unsigned comment added by (talk) 17:25, 5 February 2010 (UTC)Reply[reply]

p7zip, aka. Portable 7zip, which port 7zip onto POSIX platforms such as Linux/Mac, support UNIX extension for file property. It allows Linux and Mac 7z commaand to store and retrieve permissions. Debian package is actually p7zip. Miurahr (talk) 02:35, 12 August 2020 (UTC)Reply[reply]
we can say 'Original 7zip application on Windows does not store filesystem permissions (such as UNIX owner/group permissions or NTFS ACLs), but p7zip store UNIX permissions as a UNIX extension of file property. Even storing permissions, it still does not store user/group name or id, and NTFS ACLs, it can be inappropriate for backup/archival purposes. Even inappropriate for archival, it is used for application packaging, such as Qt package distributions, because installer can handle these properties out of box.' Miurahr (talk) 02:43, 12 August 2020 (UTC)Reply[reply]


The initial version of this page was apparently copied from by However, looking at the history, it seems this IP address was being used by Igor Pavlov, copyright owner of the page copied, so this was not a copyright violation. --Chealer (talk) 21:11, 31 October 2012 (UTC)Reply[reply]

Differences between 7z and LZMA[edit]

Reading over the Lempel–Ziv–Markov chain algorithm article, it appears they have an "official" file format, LZMA2. If that is what it is saying, I'm not clear. Questions:

  1. does anyone actually use LZMA2 as a file format? I don't recall having ever seen it in the wild. But I don't see a lot of 7z either.
  2. is the LZA compression system used in 7z/7zip identical to that in the "natural" LZMA file? Or is it a separate implementation?

Maury Markowitz (talk) 13:21, 11 October 2015 (UTC)Reply[reply]

Encryption mode?[edit]

Which encryption mode does 7z use? CBC? GCM? Any kind of authenticated encryption? How does it check whether the user enters the right password? --RokerHRO (talk) 11:38, 28 November 2018 (UTC)Reply[reply]

7z use AES256-CBC mode. 7z produce secret key from user provided password, and cycle parameter and IV which are defined in 7z header. To produce a secret key implementation use SHA256 repeatedly. Roughly say, next pseudo code show logic 'for $i in 2^cycle times{ m = sha256.update($password.encode(UTF16-LE) + $IV + $i.as_long_long)}; return m[:32]'. Implementation just try to produce secret key and try decrypt data stream using AES256-CBC. Because 7z format has a CRC of unpacked stream, then implementation can know it is as same as recorded CRC or not. If not, the password may be wrong or archive is broken. Miurahr (talk) 04:51, 28 June 2020 (UTC)Reply[reply]