Upload 2.0.2
[physicsfs] / lzma / Methods.txt
1 7-Zip method IDs (4.56)
2 -----------------------
3
4 Each compression or crypto method in 7z has unique binary value (ID).
5 The length of ID in bytes is arbitrary but it can not exceed 63 bits (8 bytes).
6
7 If you want to add some new ID, you have two ways:
8 1) Write request for allocating IDs to 7-zip developers.
9 2) Generate 8-bytes ID:
10
11     7F ZZ ZZ ZZ ZZ ZZ MM MM 
12
13     7F              - Prefix for random IDs (1 byte)
14     ZZ ZZ ZZ ZZ ZZ  - Developer ID (5 bytes). Use real random bytes. 
15                       
16     MM MM           - Method ID (2 bytes)
17
18     You can notify 7-Zip developers about your Developer ID / Method ID.
19
20     Note: Use new ID only if old codec can not decode data encoded with new version.
21
22
23 List of defined IDs
24 -------------------
25       
26 00 - Copy
27 01 - Reserved
28 02 - Common
29    03 Swap
30       - 2 Swap2
31       - 4 Swap4
32    04 Delta (subject to change)
33
34 03 - 7z
35    01 - LZMA
36       01 - Version
37   
38    03 - Branch
39       01 - x86
40          03  - BCJ
41          1B  - BCJ2
42       02 - PPC
43          05 - BC_PPC_B (Big Endian)
44       03 - Alpha
45          01 - BC_Alpha
46       04 - IA64
47          01 - BC_IA64
48       05 - ARM
49          01 - BC_ARM
50       06 - M68
51          05 - BC_M68_B (Big Endian)
52       07 - ARM Thumb
53          01 - BC_ARMThumb
54       08 - SPARC
55          05 - BC_SPARC
56
57    04 - PPMD
58       01 - Version
59
60    7F -
61       01 - experimental methods.
62
63    80 - reserved for independent developers
64
65    E0 - Random IDs
66
67 04 - Misc
68    00 - Reserved
69    01 - Zip
70       00 - Copy (not used). Use {00} instead
71       01 - Shrink
72       06 - Implode
73       08 - Deflate
74       09 - Deflate64
75       12 - BZip2 (not used). Use {04 02 02} instead
76    02 - BZip
77       02 - BZip2
78    03 - Rar
79       01 - Rar15
80       02 - Rar20
81       03 - Rar29
82    04 - Arj
83       01 - Arj (1,2,3)
84       02 - Arj 4
85    05 - Z
86    06 - Lzh
87    07 - Reserved for 7z
88    08 - Cab
89    09 - NSIS
90       01 - DeflateNSIS
91       02 - BZip2NSIS
92
93
94 06 - Crypto 
95    00 - 
96    01 - AES
97       0x - AES-128
98       4x - AES-192
99       8x - AES-256
100       Cx - AES
101
102       x0 - ECB
103       x1 - CBC
104       x2 - CFB
105       x3 - OFB
106
107    07 - Reserved
108    0F - Reserved
109
110    F0 - Misc Ciphers (Real Ciphers without hashing algo)
111
112    F1 - Misc Ciphers (Combine)
113       01 - Zip
114          01 - Main Zip crypto algo
115       03 - RAR
116          02 - 
117          03 - Rar29 AES-128 + (modified SHA-1)
118       07 - 7z
119          01 - AES-256 + SHA-256
120
121 07 - Hash (subject to change)
122    00 - 
123    01 - CRC
124    02 - SHA-1
125    03 - SHA-256
126    04 - SHA-384
127    05 - SHA-512
128
129    F0 - Misc Hash
130
131    F1 - Misc
132       03 - RAR
133          03 - Rar29 Password Hashing (modified SHA1)
134       07 - 7z 
135          01 - SHA-256 Password Hashing
136     
137    
138
139
140 ---
141 End of document