aboutsummaryrefslogtreecommitdiff
path: root/DOC/Methods.txt
diff options
context:
space:
mode:
Diffstat (limited to 'DOC/Methods.txt')
-rw-r--r--DOC/Methods.txt173
1 files changed, 173 insertions, 0 deletions
diff --git a/DOC/Methods.txt b/DOC/Methods.txt
new file mode 100644
index 0000000..d4a1b1d
--- /dev/null
+++ b/DOC/Methods.txt
@@ -0,0 +1,173 @@
17-Zip method IDs for 7z and xz archives
2---------------------------------------
3
4Version: 18.06
5Date: 2018-06-30
6
7Each compression or crypto method in 7z is associated with unique binary value (ID).
8The length of ID in bytes is arbitrary but it can not exceed 63 bits (8 bytes).
9
10xz and 7z formats use same ID map.
11
12If you want to add some new ID, you have two ways:
13 1) Write request for allocating IDs to 7-Zip developers.
14 2) Generate 8-bytes ID:
15
16 3F ZZ ZZ ZZ ZZ ZZ MM MM
17
18 3F - Prefix for random IDs (1 byte)
19 ZZ ZZ ZZ ZZ ZZ - Developer ID (5 bytes). Use real random bytes.
20
21 MM MM - Method ID (2 bytes)
22
23 You can notify 7-Zip developers about your Developer ID / Method ID.
24
25 Note: Use new ID, if old codec can not decode data encoded with new version.
26
27
28List of defined IDs
29-------------------
30
3100 - Copy
32
3303 - Delta
3404 - BCJ (x86)
3505 - PPC (big-endian)
3606 - IA64
3707 - ARM (little-endian)
3808 - ARMT (little-endian)
3909 - SPARC
40
4121 - LZMA2
42
4302.. - Common
44 03 [Swap]
45 - 2 Swap2
46 - 4 Swap4
47
4803.. - 7z
49 01 -
50 01 - LZMA
51
52 03 - [Branch Codecs]
53 01 - [x86 Codecs]
54 03 - BCJ
55 1B - BCJ2 (4 packed streams)
56 02 -
57 05 - PPC (big-endian)
58 03 -
59 01 - Alpha
60 04 -
61 01 - IA64
62 05 -
63 01 - ARM (little-endian)
64 06 -
65 05 - M68 (big-endian)
66 07 -
67 01 - ARMT (little-endian)
68 08 -
69 05 - SPARC
70
71 04 -
72 01 - PPMD
73
74 7F -
75 01 - experimental method.
76
77
7804.. - Misc codecs
79
80 00 - Reserved
81
82 01 - [Zip]
83 00 - Copy (not used. Use {00} instead)
84 01 - Shrink
85 06 - Implode
86 08 - Deflate
87 09 - Deflate64
88 0A - Imploding
89 0C - BZip2 (not used. Use {040202} instead)
90 0E - LZMA (LZMA-zip)
91 5F - xz
92 60 - Jpeg
93 61 - WavPack
94 62 - PPMd (PPMd-zip)
95 63 - wzAES
96
97 02 -
98 02 - BZip2
99
100 03 - [Rar]
101 01 - Rar1
102 02 - Rar2
103 03 - Rar3
104 05 - Rar5
105
106 04 - [Arj]
107 01 - Arj(1,2,3)
108 02 - Arj4
109
110 05 - [Z]
111
112 06 - [Lzh]
113
114 07 - Reserved for 7z
115
116 08 - [Cab]
117
118 09 - [NSIS]
119 01 - DeflateNSIS
120 02 - BZip2NSIS
121
122 F7 - External codecs (that are not included to 7-Zip)
123
124 0x xx - reserved
125
126 10 xx - reserved (LZHAM)
127 01 - LZHAM
128
129 11 xx - reserved (Tino Reichardt)
130 01 - ZSTD
131 02 - BROTLI
132 04 - LZ4
133 05 - LZ5
134 06 - LIZARD
135
136 12 xx - reserverd (Denis Anisimov)
137
138 01 - WavPack2
139 FE - eSplitter
140 FF - RawSplitter
141
142
14306.. - Crypto
144
145 F0 - Ciphers without hashing algo
146
147 01 - [AES]
148 0x - AES-128
149 4x - AES-192
150 8x - AES-256
151 Cx - AES
152
153 x0 - ECB
154 x1 - CBC
155 x2 - CFB
156 x3 - OFB
157 x4 - CTR
158
159 F1 - Combine Ciphers
160
161 01 - [Zip]
162 01 - ZipCrypto (Main Zip crypto algo)
163
164 03 - [RAR]
165 02 -
166 03 - Rar29AES (AES-128 + modified SHA-1)
167
168 07 - [7z]
169 01 - 7zAES (AES-256 + SHA-256)
170
171
172---
173End of document