Skip to content

Commit 291950d

Browse files
authored
Merge pull request #105 from filip26/feat/v120
v2.0.0
2 parents 6cb5b43 + 13e192f commit 291950d

13 files changed

Lines changed: 57 additions & 38 deletions

.github/maven-central-settings.xml

Lines changed: 0 additions & 12 deletions
This file was deleted.

README.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ To include Copper Multicodec in your project, add the following dependency to yo
110110
<dependency>
111111
<groupId>com.apicatalog</groupId>
112112
<artifactId>copper-multicodec</artifactId>
113-
<version>1.1.0</version>
113+
<version>2.0.0</version>
114114
</dependency>
115115
```
116116

@@ -138,4 +138,3 @@ Fork and clone the project repository.
138138
- [Multicodec](https://github.com/multiformats/multicodec)
139139
- [Multihash](https://github.com/multiformats/multihash)
140140
- [unsigned-varint](https://github.com/multiformats/unsigned-varint)
141-

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<modelVersion>4.0.0</modelVersion>
66
<groupId>com.apicatalog</groupId>
77
<artifactId>copper-multicodec</artifactId>
8-
<version>1.1.0</version>
8+
<version>2.0.0</version>
99
<packaging>jar</packaging>
1010
<url>https://github.com/filip26/copper-multicodec</url>
1111
<scm>
@@ -25,7 +25,7 @@
2525
<junit.version>5.13.4</junit.version>
2626
</properties>
2727

28-
<name>Copper Multcodec</name>
28+
<name>Copper Multicodec</name>
2929

3030
<description>
3131
Multicodec &amp; Multihash API, Registry

src/main/java/com/apicatalog/multicodec/codec/CidCodec.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.apicatalog.multicodec.Multicodec.Tag;
77
import com.apicatalog.multicodec.Multicodec;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class CidCodec {
1111

1212
/** Cid: cidv1, CIDv1, status = permanent, code = 0x1 */

src/main/java/com/apicatalog/multicodec/codec/HashCodec.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.apicatalog.multicodec.Multicodec.Tag;
77
import com.apicatalog.multicodec.Multicodec;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class HashCodec {
1111

1212
/** Hash: crc32, CRC-32 non-cryptographic hash algorithm (IEEE 802.3), status = draft, code = 0x132 */

src/main/java/com/apicatalog/multicodec/codec/KeyCodec.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.apicatalog.multicodec.Multicodec.Tag;
77
import com.apicatalog.multicodec.Multicodec;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class KeyCodec {
1111

1212
/** Key: aes-128, 128-bit AES symmetric key, status = draft, code = 0xa0 */
@@ -93,6 +93,15 @@ public class KeyCodec {
9393
/** Key: lamport-sha3-512-pub, Lamport public key based on SHA3-512, status = draft, code = 0x1a14 */
9494
public static final Multicodec LAMPORT_SHA3_512_PUBLIC_KEY = Multicodec.of("lamport-sha3-512-pub", Tag.Key, 0x1a14, Multicodec.Status.Draft);
9595

96+
/** Key: mlkem-1024-pub, ML-KEM 1024 public key; as specified by FIPS 203, status = draft, code = 0x120d */
97+
public static final Multicodec MLKEM_1024_PUBLIC_KEY = Multicodec.of("mlkem-1024-pub", Tag.Key, 0x120d, Multicodec.Status.Draft);
98+
99+
/** Key: mlkem-512-pub, ML-KEM 512 public key; as specified by FIPS 203, status = draft, code = 0x120b */
100+
public static final Multicodec MLKEM_512_PUBLIC_KEY = Multicodec.of("mlkem-512-pub", Tag.Key, 0x120b, Multicodec.Status.Draft);
101+
102+
/** Key: mlkem-768-pub, ML-KEM 768 public key; as specified by FIPS 203, status = draft, code = 0x120c */
103+
public static final Multicodec MLKEM_768_PUBLIC_KEY = Multicodec.of("mlkem-768-pub", Tag.Key, 0x120c, Multicodec.Status.Draft);
104+
96105
/** Key: p256-priv, P-256 private key, status = draft, code = 0x1306 */
97106
public static final Multicodec P256_PRIVATE_KEY = Multicodec.of("p256-priv", Tag.Key, 0x1306, Multicodec.Status.Draft);
98107

@@ -123,6 +132,9 @@ public class KeyCodec {
123132
/** Key: secp256k1-pub, Secp256k1 public key (compressed), status = draft, code = 0xe7 */
124133
public static final Multicodec SECP256K1_PUBLIC_KEY = Multicodec.of("secp256k1-pub", Tag.Key, 0xe7, Multicodec.Status.Draft);
125134

135+
/** Key: sm2-priv, SM2 private key, status = draft, code = 0x1310 */
136+
public static final Multicodec SM2_PRIVATE_KEY = Multicodec.of("sm2-priv", Tag.Key, 0x1310, Multicodec.Status.Draft);
137+
126138
/** Key: sm2-pub, SM2 public key (compressed), status = draft, code = 0x1206 */
127139
public static final Multicodec SM2_PUBLIC_KEY = Multicodec.of("sm2-pub", Tag.Key, 0x1206, Multicodec.Status.Draft);
128140

@@ -172,6 +184,9 @@ public class KeyCodec {
172184
ALL.put(LAMPORT_SHA3_512_PRIVATE_KEY.code(), LAMPORT_SHA3_512_PRIVATE_KEY);
173185
ALL.put(LAMPORT_SHA3_512_PRIVATE_SHARE_KEY.code(), LAMPORT_SHA3_512_PRIVATE_SHARE_KEY);
174186
ALL.put(LAMPORT_SHA3_512_PUBLIC_KEY.code(), LAMPORT_SHA3_512_PUBLIC_KEY);
187+
ALL.put(MLKEM_1024_PUBLIC_KEY.code(), MLKEM_1024_PUBLIC_KEY);
188+
ALL.put(MLKEM_512_PUBLIC_KEY.code(), MLKEM_512_PUBLIC_KEY);
189+
ALL.put(MLKEM_768_PUBLIC_KEY.code(), MLKEM_768_PUBLIC_KEY);
175190
ALL.put(P256_PRIVATE_KEY.code(), P256_PRIVATE_KEY);
176191
ALL.put(P256_PUBLIC_KEY.code(), P256_PUBLIC_KEY);
177192
ALL.put(P384_PRIVATE_KEY.code(), P384_PRIVATE_KEY);
@@ -182,6 +197,7 @@ public class KeyCodec {
182197
ALL.put(RSA_PUBLIC_KEY.code(), RSA_PUBLIC_KEY);
183198
ALL.put(SECP256K1_PRIVATE_KEY.code(), SECP256K1_PRIVATE_KEY);
184199
ALL.put(SECP256K1_PUBLIC_KEY.code(), SECP256K1_PUBLIC_KEY);
200+
ALL.put(SM2_PRIVATE_KEY.code(), SM2_PRIVATE_KEY);
185201
ALL.put(SM2_PUBLIC_KEY.code(), SM2_PUBLIC_KEY);
186202
ALL.put(SR25519_PRIVATE_KEY.code(), SR25519_PRIVATE_KEY);
187203
ALL.put(SR25519_PUBLIC_KEY.code(), SR25519_PUBLIC_KEY);

src/main/java/com/apicatalog/multicodec/codec/MultiaddrCodec.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.apicatalog.multicodec.Multicodec.Tag;
77
import com.apicatalog.multicodec.Multicodec;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class MultiaddrCodec {
1111

1212
/** Multiaddr: certhash, TLS certificate's fingerprint as a multihash, status = draft, code = 0x1d2 */

src/main/java/com/apicatalog/multicodec/codec/MultiformatCodec.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
import com.apicatalog.multicodec.Multicodec.Tag;
77
import com.apicatalog.multicodec.Multicodec;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class MultiformatCodec {
1111

12-
/** Multiformat: caip-50, CAIP-50 multi-chain account id, status = draft, code = 0xca */
12+
/** Multiformat: caip-50, CAIP-50 multi-chain account ID, status = draft, code = 0xca */
1313
public static final Multicodec CAIP_50 = Multicodec.of("caip-50", Tag.Multiformat, 0xca, Multicodec.Status.Draft);
1414

1515
/** Multiformat: multiaddr, status = draft, code = 0x32 */

src/main/java/com/apicatalog/multicodec/codec/MultihashCodec.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,15 @@
66
import com.apicatalog.multicodec.Multicodec;
77
import com.apicatalog.multihash.Multihash;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class MultihashCodec {
1111

1212
/** Multihash: bcrypt-pbkdf, Bcrypt-PBKDF key derivation function, status = draft, code = 0xd00d */
1313
public static final Multihash BCRYPT_PBKDF = Multihash.of("bcrypt-pbkdf", 0xd00d, Multicodec.Status.Draft);
1414

15+
/** Multihash: bittorrent-pieces-root, BitTorrent v2 pieces root hash., status = draft, code = 0xb702 */
16+
public static final Multihash BITTORRENT_PIECES_ROOT = Multihash.of("bittorrent-pieces-root", 0xb702, Multicodec.Status.Draft);
17+
1518
/** Multihash: blake2b-104, status = draft, code = 0xb20d */
1619
public static final Multihash BLAKE2B_104 = Multihash.of("blake2b-104", 0xb20d, Multicodec.Status.Draft);
1720

@@ -306,6 +309,12 @@ public class MultihashCodec {
306309
/** Multihash: dbl-sha2-256, status = draft, code = 0x56 */
307310
public static final Multihash DBL_SHA2_256 = Multihash.of("dbl-sha2-256", 0x56, Multicodec.Status.Draft);
308311

312+
/** Multihash: ed2k, eDonkey2000 hash., status = draft, code = 0xed20 */
313+
public static final Multihash ED2K = Multihash.of("ed2k", 0xed20, Multicodec.Status.Draft);
314+
315+
/** Multihash: fr32-sha256-trunc254-padbintree, A balanced binary tree hash used in Filecoin Piece Commitments as described in FRC-0069, status = draft, code = 0x1011 */
316+
public static final Multihash FR32_SHA256_TRUNC254_PADBINTREE = Multihash.of("fr32-sha256-trunc254-padbintree", 0x1011, Multicodec.Status.Draft);
317+
309318
/** Multihash: identity, raw binary, status = permanent, code = 0x0 */
310319
public static final Multihash IDENTITY = Multihash.of("identity", 0x0, Multicodec.Status.Permanent);
311320

@@ -1078,6 +1087,7 @@ public class MultihashCodec {
10781087

10791088
static {
10801089
ALL.put(BCRYPT_PBKDF.code(), BCRYPT_PBKDF);
1090+
ALL.put(BITTORRENT_PIECES_ROOT.code(), BITTORRENT_PIECES_ROOT);
10811091
ALL.put(BLAKE2B_104.code(), BLAKE2B_104);
10821092
ALL.put(BLAKE2B_112.code(), BLAKE2B_112);
10831093
ALL.put(BLAKE2B_120.code(), BLAKE2B_120);
@@ -1176,6 +1186,8 @@ public class MultihashCodec {
11761186
ALL.put(BLAKE2S_96.code(), BLAKE2S_96);
11771187
ALL.put(BLAKE3.code(), BLAKE3);
11781188
ALL.put(DBL_SHA2_256.code(), DBL_SHA2_256);
1189+
ALL.put(ED2K.code(), ED2K);
1190+
ALL.put(FR32_SHA256_TRUNC254_PADBINTREE.code(), FR32_SHA256_TRUNC254_PADBINTREE);
11791191
ALL.put(IDENTITY.code(), IDENTITY);
11801192
ALL.put(KANGAROOTWELVE.code(), KANGAROOTWELVE);
11811193
ALL.put(KECCAK_224.code(), KECCAK_224);

src/main/java/com/apicatalog/multicodec/codec/NamespaceCodec.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.apicatalog.multicodec.Multicodec.Tag;
77
import com.apicatalog.multicodec.Multicodec;
88

9-
/** Multicodec Registry - generated: Wed Oct 02 16:27:05 CEST 2024 */
9+
/** Multicodec Registry - generated: Tue Jul 29 16:54:27 CEST 2025 */
1010
public class NamespaceCodec {
1111

1212
/** Namespace: arweave-ns, Arweave Namespace, status = draft, code = 0xb29910 */
@@ -36,7 +36,7 @@ public class NamespaceCodec {
3636
/** Namespace: skynet-ns, Skynet Namespace, status = draft, code = 0xb19910 */
3737
public static final Multicodec SKYNET_NS = Multicodec.of("skynet-ns", Tag.Namespace, 0xb19910, Multicodec.Status.Draft);
3838

39-
/** Namespace: streamid, Ceramic Stream Id, status = draft, code = 0xce */
39+
/** Namespace: streamid, Ceramic Stream ID, status = draft, code = 0xce */
4040
public static final Multicodec STREAMID = Multicodec.of("streamid", Tag.Namespace, 0xce, Multicodec.Status.Draft);
4141

4242
/** Namespace: subspace-ns, Subspace Network Namespace, status = draft, code = 0xb39910 */

0 commit comments

Comments
 (0)