wnfs_unixfs_file/
codecs.rs

1/// Multicodecs, as defined in <https://github.com/multiformats/multicodec/blob/master/table.csv>.
2#[derive(
3    Debug, Clone, Copy, PartialEq, Eq, num_enum::IntoPrimitive, num_enum::TryFromPrimitive, Hash,
4)]
5#[repr(u64)]
6pub enum Codec {
7    Identity = 0x00,
8    Cidv1 = 0x01,
9    Cidv2 = 0x02,
10    Cidv3 = 0x03,
11    Ip4 = 0x04,
12    Tcp = 0x06,
13    Sha1 = 0x11,
14    Sha2256 = 0x12,
15    Sha2512 = 0x13,
16    Sha3512 = 0x14,
17    Sha3384 = 0x15,
18    Sha3256 = 0x16,
19    Sha3224 = 0x17,
20    Shake128 = 0x18,
21    Shake256 = 0x19,
22    Keccak224 = 0x1a,
23    Keccak256 = 0x1b,
24    Keccak384 = 0x1c,
25    Keccak512 = 0x1d,
26    Blake3 = 0x1e,
27    Sha2384 = 0x20,
28    Dccp = 0x21,
29    Murmur3X6464 = 0x22,
30    Murmur332 = 0x23,
31    Ip6 = 0x29,
32    Ip6zone = 0x2a,
33    Path = 0x2f,
34    Multicodec = 0x30,
35    Multihash = 0x31,
36    Multiaddr = 0x32,
37    Multibase = 0x33,
38    Dns = 0x35,
39    Dns4 = 0x36,
40    Dns6 = 0x37,
41    Dnsaddr = 0x38,
42    Protobuf = 0x50,
43    Cbor = 0x51,
44    Raw = 0x55,
45    DblSha2256 = 0x56,
46    Rlp = 0x60,
47    Bencode = 0x63,
48    DagPb = 0x70,
49    DagCbor = 0x71,
50    Libp2pKey = 0x72,
51    GitRaw = 0x78,
52    TorrentInfo = 0x7b,
53    TorrentFile = 0x7c,
54    LeofcoinBlock = 0x81,
55    LeofcoinTx = 0x82,
56    LeofcoinPr = 0x83,
57    Sctp = 0x84,
58    DagJose = 0x85,
59    DagCose = 0x86,
60    EthBlock = 0x90,
61    EthBlockList = 0x91,
62    EthTxTrie = 0x92,
63    EthTx = 0x93,
64    EthTxReceiptTrie = 0x94,
65    EthTxReceipt = 0x95,
66    EthStateTrie = 0x96,
67    EthAccountSnapshot = 0x97,
68    EthStorageTrie = 0x98,
69    EthReceiptLogTrie = 0x99,
70    EthRecieptLog = 0x9a,
71    Aes128 = 0xa0,
72    Aes192 = 0xa1,
73    Aes256 = 0xa2,
74    Chacha128 = 0xa3,
75    Chacha256 = 0xa4,
76    BitcoinBlock = 0xb0,
77    BitcoinTx = 0xb1,
78    BitcoinWitnessCommitment = 0xb2,
79    ZcashBlock = 0xc0,
80    ZcashTx = 0xc1,
81    Caip50 = 0xca,
82    Streamid = 0xce,
83    StellarBlock = 0xd0,
84    StellarTx = 0xd1,
85    Md4 = 0xd4,
86    Md5 = 0xd5,
87    Bmt = 0xd6,
88    DecredBlock = 0xe0,
89    DecredTx = 0xe1,
90    IpldNs = 0xe2,
91    IpfsNs = 0xe3,
92    SwarmNs = 0xe4,
93    IpnsNs = 0xe5,
94    Zeronet = 0xe6,
95    Secp256k1Pub = 0xe7,
96    Bls12_381G1Pub = 0xea,
97    Bls12_381G2Pub = 0xeb,
98    X25519Pub = 0xec,
99    Ed25519Pub = 0xed,
100    Bls12_381G1g2Pub = 0xee,
101    DashBlock = 0xf0,
102    DashTx = 0xf1,
103    SwarmManifest = 0xfa,
104    SwarmFeed = 0xfb,
105    Udp = 0x0111,
106    P2pWebrtcStar = 0x0113,
107    P2pWebrtcDirect = 0x0114,
108    P2pStardust = 0x0115,
109    P2pCircuit = 0x0122,
110    DagJson = 0x0129,
111    Udt = 0x012d,
112    Utp = 0x012e,
113    Unix = 0x0190,
114    Thread = 0x0196,
115    P2p = 0x01a5,
116    Https = 0x01bb,
117    Onion = 0x01bc,
118    Onion3 = 0x01bd,
119    Garlic64 = 0x01be,
120    Garlic32 = 0x01bf,
121    Tls = 0x01c0,
122    Noise = 0x01c6,
123    Quic = 0x01cc,
124    Webtransport = 0x01d1,
125    Ws = 0x01dd,
126    Wss = 0x01de,
127    P2pWebsocketStar = 0x01df,
128    Http = 0x01e0,
129    Swhid1Snp = 0x01f0,
130    Json = 0x0200,
131    Messagepack = 0x0201,
132    Car = 0x0202,
133    Libp2pPeerRecord = 0x0301,
134    Libp2pRelayRsvp = 0x0302,
135    CarIndexSorted = 0x0400,
136    CarMultihashIndexSorted = 0x0401,
137    TransportBitswap = 0x0900,
138    TransportGraphsyncFilecoinv1 = 0x0910,
139    Sha2256Trunc254Padded = 0x1012,
140    Sha2224 = 0x1013,
141    Sha2512224 = 0x1014,
142    Sha2512256 = 0x1015,
143    Murmur3X64128 = 0x1022,
144    Ripemd128 = 0x1052,
145    Ripemd160 = 0x1053,
146    Ripemd256 = 0x1054,
147    Ripemd320 = 0x1055,
148    X11 = 0x1100,
149    P256Pub = 0x1200,
150    P384Pub = 0x1201,
151    P521Pub = 0x1202,
152    Ed448Pub = 0x1203,
153    X448Pub = 0x1204,
154    RsaPub = 0x1205,
155    Ed25519Priv = 0x1300,
156    Secp256k1Priv = 0x1301,
157    X25519Priv = 0x1302,
158    Kangarootwelve = 0x1d01,
159    Sm3256 = 0x534d,
160    Blake2b8 = 0xb201,
161    Blake2b16 = 0xb202,
162    Blake2b24 = 0xb203,
163    Blake2b32 = 0xb204,
164    Blake2b40 = 0xb205,
165    Blake2b48 = 0xb206,
166    Blake2b56 = 0xb207,
167    Blake2b64 = 0xb208,
168    Blake2b72 = 0xb209,
169    Blake2b80 = 0xb20a,
170    Blake2b88 = 0xb20b,
171    Blake2b96 = 0xb20c,
172    Blake2b104 = 0xb20d,
173    Blake2b112 = 0xb20e,
174    Blake2b120 = 0xb20f,
175    Blake2b128 = 0xb210,
176    Blake2b136 = 0xb211,
177    Blake2b144 = 0xb212,
178    Blake2b152 = 0xb213,
179    Blake2b160 = 0xb214,
180    Blake2b168 = 0xb215,
181    Blake2b176 = 0xb216,
182    Blake2b184 = 0xb217,
183    Blake2b192 = 0xb218,
184    Blake2b200 = 0xb219,
185    Blake2b208 = 0xb21a,
186    Blake2b216 = 0xb21b,
187    Blake2b224 = 0xb21c,
188    Blake2b232 = 0xb21d,
189    Blake2b240 = 0xb21e,
190    Blake2b248 = 0xb21f,
191    Blake2b256 = 0xb220,
192    Blake2b264 = 0xb221,
193    Blake2b272 = 0xb222,
194    Blake2b280 = 0xb223,
195    Blake2b288 = 0xb224,
196    Blake2b296 = 0xb225,
197    Blake2b304 = 0xb226,
198    Blake2b312 = 0xb227,
199    Blake2b320 = 0xb228,
200    Blake2b328 = 0xb229,
201    Blake2b336 = 0xb22a,
202    Blake2b344 = 0xb22b,
203    Blake2b352 = 0xb22c,
204    Blake2b360 = 0xb22d,
205    Blake2b368 = 0xb22e,
206    Blake2b376 = 0xb22f,
207    Blake2b384 = 0xb230,
208    Blake2b392 = 0xb231,
209    Blake2b400 = 0xb232,
210    Blake2b408 = 0xb233,
211    Blake2b416 = 0xb234,
212    Blake2b424 = 0xb235,
213    Blake2b432 = 0xb236,
214    Blake2b440 = 0xb237,
215    Blake2b448 = 0xb238,
216    Blake2b456 = 0xb239,
217    Blake2b464 = 0xb23a,
218    Blake2b472 = 0xb23b,
219    Blake2b480 = 0xb23c,
220    Blake2b488 = 0xb23d,
221    Blake2b496 = 0xb23e,
222    Blake2b504 = 0xb23f,
223    Blake2b512 = 0xb240,
224    Blake2s8 = 0xb241,
225    Blake2s16 = 0xb242,
226    Blake2s24 = 0xb243,
227    Blake2s32 = 0xb244,
228    Blake2s40 = 0xb245,
229    Blake2s48 = 0xb246,
230    Blake2s56 = 0xb247,
231    Blake2s64 = 0xb248,
232    Blake2s72 = 0xb249,
233    Blake2s80 = 0xb24a,
234    Blake2s88 = 0xb24b,
235    Blake2s96 = 0xb24c,
236    Blake2s104 = 0xb24d,
237    Blake2s112 = 0xb24e,
238    Blake2s120 = 0xb24f,
239    Blake2s128 = 0xb250,
240    Blake2s136 = 0xb251,
241    Blake2s144 = 0xb252,
242    Blake2s152 = 0xb253,
243    Blake2s160 = 0xb254,
244    Blake2s168 = 0xb255,
245    Blake2s176 = 0xb256,
246    Blake2s184 = 0xb257,
247    Blake2s192 = 0xb258,
248    Blake2s200 = 0xb259,
249    Blake2s208 = 0xb25a,
250    Blake2s216 = 0xb25b,
251    Blake2s224 = 0xb25c,
252    Blake2s232 = 0xb25d,
253    Blake2s240 = 0xb25e,
254    Blake2s248 = 0xb25f,
255    Blake2s256 = 0xb260,
256    Skein2568 = 0xb301,
257    Skein25616 = 0xb302,
258    Skein25624 = 0xb303,
259    Skein25632 = 0xb304,
260    Skein25640 = 0xb305,
261    Skein25648 = 0xb306,
262    Skein25656 = 0xb307,
263    Skein25664 = 0xb308,
264    Skein25672 = 0xb309,
265    Skein25680 = 0xb30a,
266    Skein25688 = 0xb30b,
267    Skein25696 = 0xb30c,
268    Skein256104 = 0xb30d,
269    Skein256112 = 0xb30e,
270    Skein256120 = 0xb30f,
271    Skein256128 = 0xb310,
272    Skein256136 = 0xb311,
273    Skein256144 = 0xb312,
274    Skein256152 = 0xb313,
275    Skein256160 = 0xb314,
276    Skein256168 = 0xb315,
277    Skein256176 = 0xb316,
278    Skein256184 = 0xb317,
279    Skein256192 = 0xb318,
280    Skein256200 = 0xb319,
281    Skein256208 = 0xb31a,
282    Skein256216 = 0xb31b,
283    Skein256224 = 0xb31c,
284    Skein256232 = 0xb31d,
285    Skein256240 = 0xb31e,
286    Skein256248 = 0xb31f,
287    Skein256256 = 0xb320,
288    Skein5128 = 0xb321,
289    Skein51216 = 0xb322,
290    Skein51224 = 0xb323,
291    Skein51232 = 0xb324,
292    Skein51240 = 0xb325,
293    Skein51248 = 0xb326,
294    Skein51256 = 0xb327,
295    Skein51264 = 0xb328,
296    Skein51272 = 0xb329,
297    Skein51280 = 0xb32a,
298    Skein51288 = 0xb32b,
299    Skein51296 = 0xb32c,
300    Skein512104 = 0xb32d,
301    Skein512112 = 0xb32e,
302    Skein512120 = 0xb32f,
303    Skein512128 = 0xb330,
304    Skein512136 = 0xb331,
305    Skein512144 = 0xb332,
306    Skein512152 = 0xb333,
307    Skein512160 = 0xb334,
308    Skein512168 = 0xb335,
309    Skein512176 = 0xb336,
310    Skein512184 = 0xb337,
311    Skein512192 = 0xb338,
312    Skein512200 = 0xb339,
313    Skein512208 = 0xb33a,
314    Skein512216 = 0xb33b,
315    Skein512224 = 0xb33c,
316    Skein512232 = 0xb33d,
317    Skein512240 = 0xb33e,
318    Skein512248 = 0xb33f,
319    Skein512256 = 0xb340,
320    Skein512264 = 0xb341,
321    Skein512272 = 0xb342,
322    Skein512280 = 0xb343,
323    Skein512288 = 0xb344,
324    Skein512296 = 0xb345,
325    Skein512304 = 0xb346,
326    Skein512312 = 0xb347,
327    Skein512320 = 0xb348,
328    Skein512328 = 0xb349,
329    Skein512336 = 0xb34a,
330    Skein512344 = 0xb34b,
331    Skein512352 = 0xb34c,
332    Skein512360 = 0xb34d,
333    Skein512368 = 0xb34e,
334    Skein512376 = 0xb34f,
335    Skein512384 = 0xb350,
336    Skein512392 = 0xb351,
337    Skein512400 = 0xb352,
338    Skein512408 = 0xb353,
339    Skein512416 = 0xb354,
340    Skein512424 = 0xb355,
341    Skein512432 = 0xb356,
342    Skein512440 = 0xb357,
343    Skein512448 = 0xb358,
344    Skein512456 = 0xb359,
345    Skein512464 = 0xb35a,
346    Skein512472 = 0xb35b,
347    Skein512480 = 0xb35c,
348    Skein512488 = 0xb35d,
349    Skein512496 = 0xb35e,
350    Skein512504 = 0xb35f,
351    Skein512512 = 0xb360,
352    Skein10248 = 0xb361,
353    Skein102416 = 0xb362,
354    Skein102424 = 0xb363,
355    Skein102432 = 0xb364,
356    Skein102440 = 0xb365,
357    Skein102448 = 0xb366,
358    Skein102456 = 0xb367,
359    Skein102464 = 0xb368,
360    Skein102472 = 0xb369,
361    Skein102480 = 0xb36a,
362    Skein102488 = 0xb36b,
363    Skein102496 = 0xb36c,
364    Skein1024104 = 0xb36d,
365    Skein1024112 = 0xb36e,
366    Skein1024120 = 0xb36f,
367    Skein1024128 = 0xb370,
368    Skein1024136 = 0xb371,
369    Skein1024144 = 0xb372,
370    Skein1024152 = 0xb373,
371    Skein1024160 = 0xb374,
372    Skein1024168 = 0xb375,
373    Skein1024176 = 0xb376,
374    Skein1024184 = 0xb377,
375    Skein1024192 = 0xb378,
376    Skein1024200 = 0xb379,
377    Skein1024208 = 0xb37a,
378    Skein1024216 = 0xb37b,
379    Skein1024224 = 0xb37c,
380    Skein1024232 = 0xb37d,
381    Skein1024240 = 0xb37e,
382    Skein1024248 = 0xb37f,
383    Skein1024256 = 0xb380,
384    Skein1024264 = 0xb381,
385    Skein1024272 = 0xb382,
386    Skein1024280 = 0xb383,
387    Skein1024288 = 0xb384,
388    Skein1024296 = 0xb385,
389    Skein1024304 = 0xb386,
390    Skein1024312 = 0xb387,
391    Skein1024320 = 0xb388,
392    Skein1024328 = 0xb389,
393    Skein1024336 = 0xb38a,
394    Skein1024344 = 0xb38b,
395    Skein1024352 = 0xb38c,
396    Skein1024360 = 0xb38d,
397    Skein1024368 = 0xb38e,
398    Skein1024376 = 0xb38f,
399    Skein1024384 = 0xb390,
400    Skein1024392 = 0xb391,
401    Skein1024400 = 0xb392,
402    Skein1024408 = 0xb393,
403    Skein1024416 = 0xb394,
404    Skein1024424 = 0xb395,
405    Skein1024432 = 0xb396,
406    Skein1024440 = 0xb397,
407    Skein1024448 = 0xb398,
408    Skein1024456 = 0xb399,
409    Skein1024464 = 0xb39a,
410    Skein1024472 = 0xb39b,
411    Skein1024480 = 0xb39c,
412    Skein1024488 = 0xb39d,
413    Skein1024496 = 0xb39e,
414    Skein1024504 = 0xb39f,
415    Skein1024512 = 0xb3a0,
416    Skein1024520 = 0xb3a1,
417    Skein1024528 = 0xb3a2,
418    Skein1024536 = 0xb3a3,
419    Skein1024544 = 0xb3a4,
420    Skein1024552 = 0xb3a5,
421    Skein1024560 = 0xb3a6,
422    Skein1024568 = 0xb3a7,
423    Skein1024576 = 0xb3a8,
424    Skein1024584 = 0xb3a9,
425    Skein1024592 = 0xb3aa,
426    Skein1024600 = 0xb3ab,
427    Skein1024608 = 0xb3ac,
428    Skein1024616 = 0xb3ad,
429    Skein1024624 = 0xb3ae,
430    Skein1024632 = 0xb3af,
431    Skein1024640 = 0xb3b0,
432    Skein1024648 = 0xb3b1,
433    Skein1024656 = 0xb3b2,
434    Skein1024664 = 0xb3b3,
435    Skein1024672 = 0xb3b4,
436    Skein1024680 = 0xb3b5,
437    Skein1024688 = 0xb3b6,
438    Skein1024696 = 0xb3b7,
439    Skein1024704 = 0xb3b8,
440    Skein1024712 = 0xb3b9,
441    Skein1024720 = 0xb3ba,
442    Skein1024728 = 0xb3bb,
443    Skein1024736 = 0xb3bc,
444    Skein1024744 = 0xb3bd,
445    Skein1024752 = 0xb3be,
446    Skein1024760 = 0xb3bf,
447    Skein1024768 = 0xb3c0,
448    Skein1024776 = 0xb3c1,
449    Skein1024784 = 0xb3c2,
450    Skein1024792 = 0xb3c3,
451    Skein1024800 = 0xb3c4,
452    Skein1024808 = 0xb3c5,
453    Skein1024816 = 0xb3c6,
454    Skein1024824 = 0xb3c7,
455    Skein1024832 = 0xb3c8,
456    Skein1024840 = 0xb3c9,
457    Skein1024848 = 0xb3ca,
458    Skein1024856 = 0xb3cb,
459    Skein1024864 = 0xb3cc,
460    Skein1024872 = 0xb3cd,
461    Skein1024880 = 0xb3ce,
462    Skein1024888 = 0xb3cf,
463    Skein1024896 = 0xb3d0,
464    Skein1024904 = 0xb3d1,
465    Skein1024912 = 0xb3d2,
466    Skein1024920 = 0xb3d3,
467    Skein1024928 = 0xb3d4,
468    Skein1024936 = 0xb3d5,
469    Skein1024944 = 0xb3d6,
470    Skein1024952 = 0xb3d7,
471    Skein1024960 = 0xb3d8,
472    Skein1024968 = 0xb3d9,
473    Skein1024976 = 0xb3da,
474    Skein1024984 = 0xb3db,
475    Skein1024992 = 0xb3dc,
476    Skein10241000 = 0xb3dd,
477    Skein10241008 = 0xb3de,
478    Skein10241016 = 0xb3df,
479    Skein10241024 = 0xb3e0,
480    PoseidonBls12_381A2Fc1 = 0xb401,
481    PoseidonBls12_381A2Fc1Sc = 0xb402,
482    Iscc = 0xcc01,
483    ZeroxcertImprint256 = 0xce11,
484    FilCommitmentUnsealed = 0xf101,
485    FilCommitmentSealed = 0xf102,
486    Plaintextv2 = 0x706c61,
487    HolochainAdrV0 = 0x807124,
488    HolochainAdrV1 = 0x817124,
489    HolochainKeyV0 = 0x947124,
490    HolochainKeyV1 = 0x957124,
491    HolochainSigV0 = 0xa27124,
492    HolochainSigV1 = 0xa37124,
493    SkynetNs = 0xb19910,
494    ArweaveNs = 0xb29910,
495    SubspaceNs = 0xb39910,
496    KumandraNs = 0xb49910,
497}