diff --git a/Cargo.lock b/Cargo.lock
index 6c9ecc52cf6a7bfda823a5a72d2fb83796931baf..d8c9c24d24511c6943cda8db8ca720d67562ed72 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -71,6 +71,17 @@ dependencies = [
  "subtle 2.6.1",
 ]
 
+[[package]]
+name = "ahash"
+version = "0.7.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9"
+dependencies = [
+ "getrandom",
+ "once_cell",
+ "version_check",
+]
+
 [[package]]
 name = "ahash"
 version = "0.8.11"
@@ -95,9 +106,9 @@ dependencies = [
 
 [[package]]
 name = "allocator-api2"
-version = "0.2.21"
+version = "0.2.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
+checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9"
 
 [[package]]
 name = "alloy-primitives"
@@ -121,9 +132,9 @@ dependencies = [
 
 [[package]]
 name = "alloy-rlp"
-version = "0.3.11"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6"
+checksum = "da0822426598f95e45dd1ea32a738dac057529a709ee645fcc516ffa4cbde08f"
 dependencies = [
  "arrayvec 0.7.6",
  "bytes",
@@ -141,7 +152,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "syn-solidity",
  "tiny-keccak",
 ]
@@ -214,20 +225,19 @@ dependencies = [
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.7"
+version = "3.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e"
+checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125"
 dependencies = [
  "anstyle",
- "once_cell",
  "windows-sys 0.59.0",
 ]
 
 [[package]]
 name = "anyhow"
-version = "1.0.95"
+version = "1.0.93"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04"
+checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775"
 
 [[package]]
 name = "approx"
@@ -249,7 +259,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -258,7 +268,7 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fb00293ba84f51ce3bd026bd0de55899c4e68f0a39a5728cebae3a73ffdc0a4f"
 dependencies = [
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-std 0.4.0",
 ]
@@ -270,7 +280,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "20c7021f180a0cbea0380eba97c2af3c57074cdaffe0eef7e840e1c9f2841e55"
 dependencies = [
  "ark-bls12-377",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-models-ext",
  "ark-std 0.4.0",
 ]
@@ -281,7 +291,7 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c775f0d12169cba7aae4caeb547bb6a50781c7449a8aa53793827c9ec4abf488"
 dependencies = [
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-serialize 0.4.2",
  "ark-std 0.4.0",
@@ -294,7 +304,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b1dc4b3d08f19e8ec06e949712f95b8361e43f1391d94f65e4234df03480631c"
 dependencies = [
  "ark-bls12-381",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-models-ext",
  "ark-serialize 0.4.2",
@@ -308,7 +318,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2e0605daf0cc5aa2034b78d008aaf159f56901d92a52ee4f6ecdfdac4f426700"
 dependencies = [
  "ark-bls12-377",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-std 0.4.0",
 ]
@@ -320,7 +330,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ccee5fba47266f460067588ee1bf070a9c760bf2050c1c509982c5719aadb4f2"
 dependencies = [
  "ark-bw6-761",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-models-ext",
  "ark-std 0.4.0",
@@ -333,7 +343,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba"
 dependencies = [
  "ark-ff 0.4.2",
- "ark-poly 0.4.2",
+ "ark-poly",
  "ark-serialize 0.4.2",
  "ark-std 0.4.0",
  "derivative",
@@ -344,27 +354,6 @@ dependencies = [
  "zeroize",
 ]
 
-[[package]]
-name = "ark-ec"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43d68f2d516162846c1238e755a7c4d131b892b70cc70c471a8e3ca3ed818fce"
-dependencies = [
- "ahash",
- "ark-ff 0.5.0",
- "ark-poly 0.5.0",
- "ark-serialize 0.5.0",
- "ark-std 0.5.0",
- "educe",
- "fnv",
- "hashbrown 0.15.2",
- "itertools 0.13.0",
- "num-bigint",
- "num-integer",
- "num-traits 0.2.19",
- "zeroize",
-]
-
 [[package]]
 name = "ark-ed-on-bls12-377"
 version = "0.4.0"
@@ -372,7 +361,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b10d901b9ac4b38f9c32beacedfadcdd64e46f8d7f8e88c1ae1060022cf6f6c6"
 dependencies = [
  "ark-bls12-377",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-std 0.4.0",
 ]
@@ -383,7 +372,7 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "524a4fb7540df2e1a8c2e67a83ba1d1e6c3947f4f9342cc2359fc2e789ad731d"
 dependencies = [
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ed-on-bls12-377",
  "ark-ff 0.4.2",
  "ark-models-ext",
@@ -397,7 +386,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f9cde0f2aa063a2a5c28d39b47761aa102bda7c13c84fc118a61b87c7b2f785c"
 dependencies = [
  "ark-bls12-381",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-std 0.4.0",
 ]
@@ -408,7 +397,7 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d15185f1acb49a07ff8cbe5f11a1adc5a93b19e211e325d826ae98e98e124346"
 dependencies = [
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ed-on-bls12-381-bandersnatch",
  "ark-ff 0.4.2",
  "ark-models-ext",
@@ -453,26 +442,6 @@ dependencies = [
  "zeroize",
 ]
 
-[[package]]
-name = "ark-ff"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a177aba0ed1e0fbb62aa9f6d0502e9b46dad8c2eab04c14258a1212d2557ea70"
-dependencies = [
- "ark-ff-asm 0.5.0",
- "ark-ff-macros 0.5.0",
- "ark-serialize 0.5.0",
- "ark-std 0.5.0",
- "arrayvec 0.7.6",
- "digest 0.10.7",
- "educe",
- "itertools 0.13.0",
- "num-bigint",
- "num-traits 0.2.19",
- "paste",
- "zeroize",
-]
-
 [[package]]
 name = "ark-ff-asm"
 version = "0.3.0"
@@ -493,16 +462,6 @@ dependencies = [
  "syn 1.0.109",
 ]
 
-[[package]]
-name = "ark-ff-asm"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60"
-dependencies = [
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "ark-ff-macros"
 version = "0.3.0"
@@ -528,26 +487,13 @@ dependencies = [
  "syn 1.0.109",
 ]
 
-[[package]]
-name = "ark-ff-macros"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3"
-dependencies = [
- "num-bigint",
- "num-traits 0.2.19",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "ark-models-ext"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3e9eab5d4b5ff2f228b763d38442adc9b084b0a465409b059fac5c2308835ec2"
 dependencies = [
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-serialize 0.4.2",
  "ark-std 0.4.0",
@@ -567,28 +513,13 @@ dependencies = [
  "hashbrown 0.13.2",
 ]
 
-[[package]]
-name = "ark-poly"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579305839da207f02b89cd1679e50e67b4331e2f9294a57693e5051b7703fe27"
-dependencies = [
- "ahash",
- "ark-ff 0.5.0",
- "ark-serialize 0.5.0",
- "ark-std 0.5.0",
- "educe",
- "fnv",
- "hashbrown 0.15.2",
-]
-
 [[package]]
 name = "ark-scale"
 version = "0.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5f69c00b3b529be29528a6f2fd5fa7b1790f8bed81b9cdca17e326538545a179"
 dependencies = [
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-serialize 0.4.2",
  "ark-std 0.4.0",
@@ -596,21 +527,6 @@ dependencies = [
  "scale-info",
 ]
 
-[[package]]
-name = "ark-secret-scalar"
-version = "0.0.2"
-source = "git+https://github.com/duniter/ring-vrf#93af77b15de3bb34f1c46913599f4f4c4faa3215"
-dependencies = [
- "ark-ec 0.4.2",
- "ark-ff 0.4.2",
- "ark-serialize 0.4.2",
- "ark-std 0.4.0",
- "ark-transcript",
- "digest 0.10.7",
- "getrandom_or_panic",
- "zeroize",
-]
-
 [[package]]
 name = "ark-serialize"
 version = "0.3.0"
@@ -627,25 +543,12 @@ version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5"
 dependencies = [
- "ark-serialize-derive 0.4.2",
+ "ark-serialize-derive",
  "ark-std 0.4.0",
  "digest 0.10.7",
  "num-bigint",
 ]
 
-[[package]]
-name = "ark-serialize"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f4d068aaf107ebcd7dfb52bc748f8030e0fc930ac8e360146ca54c1203088f7"
-dependencies = [
- "ark-serialize-derive 0.5.0",
- "ark-std 0.5.0",
- "arrayvec 0.7.6",
- "digest 0.10.7",
- "num-bigint",
-]
-
 [[package]]
 name = "ark-serialize-derive"
 version = "0.4.2"
@@ -657,17 +560,6 @@ dependencies = [
  "syn 1.0.109",
 ]
 
-[[package]]
-name = "ark-serialize-derive"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "ark-std"
 version = "0.3.0"
@@ -689,29 +581,6 @@ dependencies = [
  "rayon",
 ]
 
-[[package]]
-name = "ark-std"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "246a225cc6131e9ee4f24619af0f19d67761fff15d7ccc22e42b80846e69449a"
-dependencies = [
- "num-traits 0.2.19",
- "rand",
-]
-
-[[package]]
-name = "ark-transcript"
-version = "0.0.2"
-source = "git+https://github.com/duniter/ring-vrf#93af77b15de3bb34f1c46913599f4f4c4faa3215"
-dependencies = [
- "ark-ff 0.4.2",
- "ark-serialize 0.4.2",
- "ark-std 0.4.0",
- "digest 0.10.7",
- "rand_core",
- "sha3",
-]
-
 [[package]]
 name = "array-bytes"
 version = "6.2.3"
@@ -739,6 +608,12 @@ version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
 
+[[package]]
+name = "ascii"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e"
+
 [[package]]
 name = "asn1-rs"
 version = "0.5.2"
@@ -791,7 +666,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "synstructure 0.13.1",
 ]
 
@@ -814,7 +689,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -825,8 +700,8 @@ checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9"
 
 [[package]]
 name = "asset-test-utils"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "18.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-pallet-parachain-system",
  "cumulus-pallet-xcmp-queue",
@@ -854,8 +729,8 @@ dependencies = [
 
 [[package]]
 name = "assets-common"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -935,7 +810,7 @@ dependencies = [
  "futures-lite",
  "parking",
  "polling",
- "rustix 0.38.43",
+ "rustix 0.38.40",
  "slab",
  "tracing",
  "windows-sys 0.59.0",
@@ -947,7 +822,7 @@ version = "3.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
 dependencies = [
- "event-listener 5.4.0",
+ "event-listener 5.3.1",
  "event-listener-strategy",
  "pin-project-lite",
 ]
@@ -976,9 +851,9 @@ dependencies = [
  "async-task",
  "blocking",
  "cfg-if",
- "event-listener 5.4.0",
+ "event-listener 5.3.1",
  "futures-lite",
- "rustix 0.38.43",
+ "rustix 0.38.40",
  "tracing",
 ]
 
@@ -994,7 +869,7 @@ dependencies = [
  "cfg-if",
  "futures-core",
  "futures-io",
- "rustix 0.38.43",
+ "rustix 0.38.40",
  "signal-hook-registry",
  "slab",
  "windows-sys 0.59.0",
@@ -1008,13 +883,13 @@ checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
 
 [[package]]
 name = "async-trait"
-version = "0.1.85"
+version = "0.1.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056"
+checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -1055,13 +930,13 @@ dependencies = [
 
 [[package]]
 name = "auto_impl"
-version = "1.2.1"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73"
+checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -1080,32 +955,11 @@ dependencies = [
  "cfg-if",
  "libc",
  "miniz_oxide",
- "object 0.36.7",
+ "object 0.36.5",
  "rustc-demangle",
  "windows-targets 0.52.6",
 ]
 
-[[package]]
-name = "bandersnatch_vrfs"
-version = "0.0.4"
-source = "git+https://github.com/duniter/ring-vrf#93af77b15de3bb34f1c46913599f4f4c4faa3215"
-dependencies = [
- "ark-bls12-381",
- "ark-ec 0.4.2",
- "ark-ed-on-bls12-381-bandersnatch",
- "ark-ff 0.4.2",
- "ark-serialize 0.4.2",
- "ark-std 0.4.0",
- "dleq_vrf",
- "rand_chacha",
- "rand_core",
- "ring 0.1.0",
- "sha2 0.10.8",
- "sp-ark-bls12-381",
- "sp-ark-ed-on-bls12-381-bandersnatch",
- "zeroize",
-]
-
 [[package]]
 name = "base-x"
 version = "0.2.11"
@@ -1148,23 +1002,13 @@ version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
 
-[[package]]
-name = "beef"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1"
-dependencies = [
- "serde",
-]
-
 [[package]]
 name = "binary-merkle-tree"
-version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "15.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "hash-db",
  "log",
- "parity-scale-codec",
 ]
 
 [[package]]
@@ -1176,22 +1020,6 @@ dependencies = [
  "serde",
 ]
 
-[[package]]
-name = "bip32"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b"
-dependencies = [
- "bs58",
- "hmac 0.12.1",
- "k256",
- "rand_core",
- "ripemd",
- "sha2 0.10.8",
- "subtle 2.6.1",
- "zeroize",
-]
-
 [[package]]
 name = "bip39"
 version = "2.1.0"
@@ -1199,8 +1027,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33415e24172c1b7d6066f6d999545375ab8e1d95421d6784bdfff9496f292387"
 dependencies = [
  "bitcoin_hashes",
- "serde",
- "unicode-normalization",
 ]
 
 [[package]]
@@ -1242,9 +1068,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.8.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
+checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
 
 [[package]]
 name = "bitvec"
@@ -1314,9 +1140,9 @@ dependencies = [
 
 [[package]]
 name = "blake3"
-version = "1.5.5"
+version = "1.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e"
+checksum = "d82033247fd8e890df8f740e407ad4d038debb9eb1f40533fffb32e7d17dc6f7"
 dependencies = [
  "arrayref",
  "arrayvec 0.7.6",
@@ -1368,19 +1194,10 @@ dependencies = [
  "serde",
 ]
 
-[[package]]
-name = "bounded-vec"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68534a48cbf63a4b1323c433cf21238c9ec23711e0df13b08c33e5c2082663ce"
-dependencies = [
- "thiserror 1.0.69",
-]
-
 [[package]]
 name = "bp-header-chain"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-runtime",
  "finality-grandpa",
@@ -1391,13 +1208,13 @@ dependencies = [
  "sp-consensus-grandpa",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "bp-messages"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-runtime",
@@ -1407,13 +1224,13 @@ dependencies = [
  "serde",
  "sp-core",
  "sp-io",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "bp-parachains"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-polkadot-core",
@@ -1424,43 +1241,44 @@ dependencies = [
  "scale-info",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "bp-polkadot"
-version = "0.5.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-polkadot-core",
  "bp-runtime",
  "frame-support",
  "sp-api",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "bp-polkadot-core"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-messages",
  "bp-runtime",
  "frame-support",
  "frame-system",
  "parity-scale-codec",
+ "parity-util-mem",
  "scale-info",
  "serde",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "bp-relayers"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-messages",
@@ -1472,13 +1290,13 @@ dependencies = [
  "parity-scale-codec",
  "scale-info",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "bp-runtime"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -1493,15 +1311,15 @@ dependencies = [
  "sp-io",
  "sp-runtime",
  "sp-state-machine",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-trie",
  "trie-db",
 ]
 
 [[package]]
 name = "bp-test-utils"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-parachains",
@@ -1514,14 +1332,14 @@ dependencies = [
  "sp-consensus-grandpa",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-trie",
 ]
 
 [[package]]
 name = "bp-xcm-bridge-hub"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.4.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-messages",
  "bp-runtime",
@@ -1531,14 +1349,14 @@ dependencies = [
  "serde",
  "sp-core",
  "sp-io",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
 ]
 
 [[package]]
 name = "bp-xcm-bridge-hub-router"
-version = "0.6.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.14.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -1549,8 +1367,8 @@ dependencies = [
 
 [[package]]
 name = "bridge-hub-common"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -1560,14 +1378,14 @@ dependencies = [
  "snowbridge-core",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
 ]
 
 [[package]]
 name = "bridge-hub-test-utils"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "asset-test-utils",
  "bp-header-chain",
@@ -1601,7 +1419,7 @@ dependencies = [
  "sp-io",
  "sp-keyring",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "staging-xcm",
  "staging-xcm-builder",
  "staging-xcm-executor",
@@ -1609,8 +1427,8 @@ dependencies = [
 
 [[package]]
 name = "bridge-runtime-common"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-messages",
@@ -1632,28 +1450,32 @@ dependencies = [
  "scale-info",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-trie",
- "sp-weights",
  "staging-xcm",
  "tuplex",
 ]
 
+[[package]]
+name = "bs58"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3"
+
 [[package]]
 name = "bs58"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4"
 dependencies = [
- "sha2 0.10.8",
  "tinyvec",
 ]
 
 [[package]]
 name = "bstr"
-version = "1.11.3"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "531a9155a481e2ee699d4f98f43c0ca4ff8ee1bfd55c31e9e98fb29d2b176fe0"
+checksum = "1a68f1f47cdf0ec8ee4b941b2eee2a80cb796db73118c0dd09ac63fbe405be22"
 dependencies = [
  "memchr",
  "serde",
@@ -1694,9 +1516,9 @@ checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce"
 
 [[package]]
 name = "bytemuck"
-version = "1.21.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3"
+checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d"
 
 [[package]]
 name = "byteorder"
@@ -1706,9 +1528,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.9.0"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
+checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da"
 
 [[package]]
 name = "c2-chacha"
@@ -1731,9 +1553,9 @@ dependencies = [
 
 [[package]]
 name = "cargo-platform"
-version = "0.1.9"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea"
+checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc"
 dependencies = [
  "serde",
 ]
@@ -1746,7 +1568,7 @@ checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a"
 dependencies = [
  "camino",
  "cargo-platform",
- "semver 1.0.25",
+ "semver 1.0.23",
  "serde",
  "serde_json",
  "thiserror 1.0.69",
@@ -1754,9 +1576,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.2.10"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229"
+checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47"
 dependencies = [
  "jobserver",
  "libc",
@@ -1832,9 +1654,9 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.39"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -1892,9 +1714,9 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.5.27"
+version = "4.5.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796"
+checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -1902,64 +1724,53 @@ dependencies = [
 
 [[package]]
 name = "clap_builder"
-version = "4.5.27"
+version = "4.5.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7"
+checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec"
 dependencies = [
  "anstream",
  "anstyle",
  "clap_lex",
- "strsim 0.11.1",
+ "strsim",
  "terminal_size",
 ]
 
 [[package]]
 name = "clap_complete"
-version = "4.5.42"
+version = "4.5.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33a7e468e750fa4b6be660e8b5651ad47372e8fb114030b594c2d75d48c5ffd0"
+checksum = "d9647a559c112175f17cf724dc72d3645680a883c58481332779192b0d8e7a01"
 dependencies = [
  "clap",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.5.24"
+version = "4.5.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c"
+checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab"
 dependencies = [
  "heck 0.5.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "clap_lex"
-version = "0.7.4"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6"
+checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7"
 
 [[package]]
 name = "cmake"
-version = "0.1.52"
+version = "0.1.51"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c682c223677e0e5b6b7f63a64b9351844c3f1b1678a68b7ee617e30fb082620e"
+checksum = "fb1e43aa7fd152b1f968787f7dbcdeb306d1867ff373c69955211876c053f91a"
 dependencies = [
  "cc",
 ]
 
-[[package]]
-name = "coarsetime"
-version = "0.1.35"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4252bf230cb600c19826a575b31c8c9c84c6f11acfab6dfcad2e941b10b6f8e2"
-dependencies = [
- "libc",
- "wasix",
- "wasm-bindgen",
-]
-
 [[package]]
 name = "codespan-reporting"
 version = "0.11.1"
@@ -1976,6 +1787,19 @@ version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990"
 
+[[package]]
+name = "combine"
+version = "3.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da3da6baa321ec19e1cc41d31bf599f00c783d0517095cdaf0332e3fe8d20680"
+dependencies = [
+ "ascii",
+ "byteorder",
+ "either",
+ "memchr",
+ "unreachable",
+]
+
 [[package]]
 name = "combine"
 version = "4.6.7"
@@ -1988,31 +1812,15 @@ dependencies = [
 
 [[package]]
 name = "comfy-table"
-version = "7.1.3"
+version = "7.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24f165e7b643266ea80cb858aed492ad9280e3e05ce24d4a99d7d7b889b6a4d9"
+checksum = "e0d05af1e006a2407bedef5af410552494ce5be9090444dbbcb57258c1af3d56"
 dependencies = [
  "strum 0.26.3",
  "strum_macros 0.26.4",
  "unicode-width 0.2.0",
 ]
 
-[[package]]
-name = "common"
-version = "0.1.0"
-source = "git+https://github.com/w3f/ring-proof?rev=665f5f5#665f5f51af5734c7b6d90b985dd6861d4c5b4752"
-dependencies = [
- "ark-ec 0.4.2",
- "ark-ff 0.4.2",
- "ark-poly 0.4.2",
- "ark-serialize 0.4.2",
- "ark-std 0.4.0",
- "fflonk",
- "getrandom_or_panic",
- "merlin",
- "rand_chacha",
-]
-
 [[package]]
 name = "common-path"
 version = "1.0.0"
@@ -2069,22 +1877,22 @@ dependencies = [
 
 [[package]]
 name = "console"
-version = "0.15.10"
+version = "0.15.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b"
+checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb"
 dependencies = [
  "encode_unicode",
+ "lazy_static",
  "libc",
- "once_cell",
- "unicode-width 0.2.0",
- "windows-sys 0.59.0",
+ "unicode-width 0.1.14",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "const-hex"
-version = "1.14.0"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c"
+checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -2162,16 +1970,6 @@ dependencies = [
  "libc",
 ]
 
-[[package]]
-name = "core-foundation"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
 [[package]]
 name = "core-foundation-sys"
 version = "0.8.7"
@@ -2207,9 +2005,9 @@ dependencies = [
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.16"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3"
+checksum = "0ca741a962e1b0bff6d724a1a0958b686406e853bb14061f218562e1896f95e6"
 dependencies = [
  "libc",
 ]
@@ -2312,6 +2110,21 @@ dependencies = [
  "wasmtime-types",
 ]
 
+[[package]]
+name = "crc"
+version = "3.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636"
+dependencies = [
+ "crc-catalog",
+]
+
+[[package]]
+name = "crc-catalog"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5"
+
 [[package]]
 name = "crc32fast"
 version = "1.4.2"
@@ -2323,18 +2136,18 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.14"
+version = "0.5.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471"
+checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2"
 dependencies = [
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.6"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
  "crossbeam-epoch",
  "crossbeam-utils",
@@ -2351,18 +2164,18 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-queue"
-version = "0.3.12"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115"
+checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35"
 dependencies = [
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.21"
+version = "0.8.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
+checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
 
 [[package]]
 name = "crunchy"
@@ -2474,7 +2287,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "regex",
- "syn 2.0.96",
+ "syn 2.0.87",
  "synthez",
 ]
 
@@ -2492,32 +2305,10 @@ dependencies = [
  "regex-syntax 0.7.5",
 ]
 
-[[package]]
-name = "cumulus-client-parachain-inherent"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "async-trait",
- "cumulus-primitives-core",
- "cumulus-primitives-parachain-inherent",
- "cumulus-relay-chain-interface",
- "cumulus-test-relay-sproof-builder",
- "parity-scale-codec",
- "sc-client-api",
- "sp-api",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-inherents",
- "sp-runtime",
- "sp-state-machine",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-trie",
- "tracing",
-]
-
 [[package]]
 name = "cumulus-pallet-aura-ext"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-pallet-parachain-system",
  "frame-support",
@@ -2533,8 +2324,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-pallet-dmp-queue"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-benchmarking",
@@ -2550,8 +2341,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-pallet-parachain-system"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bytes",
  "cumulus-pallet-parachain-system-proc-macro",
@@ -2571,12 +2362,12 @@ dependencies = [
  "polkadot-runtime-parachains",
  "scale-info",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-inherents",
  "sp-io",
  "sp-runtime",
  "sp-state-machine",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-trie",
  "sp-version",
  "staging-xcm",
@@ -2587,18 +2378,18 @@ dependencies = [
 [[package]]
 name = "cumulus-pallet-parachain-system-proc-macro"
 version = "0.6.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "cumulus-pallet-session-benchmarking"
-version = "9.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "19.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -2610,8 +2401,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-pallet-solo-to-para"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-pallet-parachain-system",
  "frame-support",
@@ -2625,8 +2416,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-pallet-xcm"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -2640,8 +2431,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-pallet-xcmp-queue"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bounded-collections",
  "bp-xcm-bridge-hub-router",
@@ -2665,8 +2456,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-ping"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-pallet-xcm",
  "cumulus-primitives-core",
@@ -2680,8 +2471,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-primitives-aura"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.15.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "sp-api",
  "sp-consensus-aura",
@@ -2689,8 +2480,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-primitives-core"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "polkadot-core-primitives",
@@ -2705,8 +2496,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-primitives-parachain-inherent"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "async-trait",
  "cumulus-primitives-core",
@@ -2719,23 +2510,22 @@ dependencies = [
 
 [[package]]
 name = "cumulus-primitives-proof-size-hostfunction"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
+ "sp-runtime-interface",
  "sp-trie",
 ]
 
 [[package]]
 name = "cumulus-primitives-storage-weight-reclaim"
-version = "1.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "8.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "cumulus-primitives-proof-size-hostfunction",
  "docify",
- "frame-benchmarking",
  "frame-support",
  "frame-system",
  "log",
@@ -2746,8 +2536,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-primitives-timestamp"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "sp-inherents",
@@ -2756,8 +2546,8 @@ dependencies = [
 
 [[package]]
 name = "cumulus-primitives-utility"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -2771,29 +2561,10 @@ dependencies = [
  "staging-xcm-executor",
 ]
 
-[[package]]
-name = "cumulus-relay-chain-interface"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "async-trait",
- "cumulus-primitives-core",
- "futures 0.3.31",
- "jsonrpsee-core 0.24.7",
- "parity-scale-codec",
- "polkadot-overseer",
- "sc-client-api",
- "sp-api",
- "sp-blockchain",
- "sp-state-machine",
- "sp-version",
- "thiserror 1.0.69",
-]
-
 [[package]]
 name = "cumulus-test-relay-sproof-builder"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "parity-scale-codec",
@@ -2827,76 +2598,51 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "cxx"
-version = "1.0.137"
+version = "1.0.130"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fc894913dccfed0f84106062c284fa021c3ba70cb1d78797d6f5165d4492e45"
+checksum = "23c042a0ba58aaff55299632834d1ea53ceff73d62373f62c9ae60890ad1b942"
 dependencies = [
  "cc",
- "cxxbridge-cmd",
  "cxxbridge-flags",
  "cxxbridge-macro",
- "foldhash",
  "link-cplusplus",
 ]
 
 [[package]]
 name = "cxx-build"
-version = "1.0.137"
+version = "1.0.130"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "503b2bfb6b3e8ce7f95d865a67419451832083d3186958290cee6c53e39dfcfe"
+checksum = "45dc1c88d0fdac57518a9b1f6c4f4fb2aca8f3c30c0d03d7d8518b47ca0bcea6"
 dependencies = [
  "cc",
  "codespan-reporting",
  "proc-macro2",
  "quote",
  "scratch",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "cxxbridge-cmd"
-version = "1.0.137"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0d2cb64a95b4b5a381971482235c4db2e0208302a962acdbe314db03cbbe2fb"
-dependencies = [
- "clap",
- "codespan-reporting",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "cxxbridge-flags"
-version = "1.0.137"
+version = "1.0.130"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f797b0206463c9c2a68ed605ab28892cca784f1ef066050f4942e3de26ad885"
+checksum = "aa7ed7d30b289e2592cc55bc2ccd89803a63c913e008e6eb59f06cddf45bb52f"
 
 [[package]]
 name = "cxxbridge-macro"
-version = "1.0.137"
+version = "1.0.130"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e79010a2093848e65a3e0f7062d3f02fb2ef27f866416dfe436fccfa73d3bb59"
+checksum = "0b8c465d22de46b851c04630a5fc749a26005b263632ed2e0d9cc81518ead78d"
 dependencies = [
  "proc-macro2",
  "quote",
  "rustversion",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "darling"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850"
-dependencies = [
- "darling_core 0.14.4",
- "darling_macro 0.14.4",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -2905,22 +2651,8 @@ version = "0.20.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989"
 dependencies = [
- "darling_core 0.20.10",
- "darling_macro 0.20.10",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote",
- "strsim 0.10.0",
- "syn 1.0.109",
+ "darling_core",
+ "darling_macro",
 ]
 
 [[package]]
@@ -2933,19 +2665,8 @@ dependencies = [
  "ident_case",
  "proc-macro2",
  "quote",
- "strsim 0.11.1",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e"
-dependencies = [
- "darling_core 0.14.4",
- "quote",
- "syn 1.0.109",
+ "strsim",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -2954,9 +2675,9 @@ version = "0.20.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
 dependencies = [
- "darling_core 0.20.10",
+ "darling_core",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -2974,15 +2695,15 @@ dependencies = [
 
 [[package]]
 name = "data-encoding"
-version = "2.7.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e60eed09d8c01d3cee5b7d30acb059b76614c918fa0f992e0dd6eeb10daad6f"
+checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
 
 [[package]]
 name = "data-encoding-macro"
-version = "0.1.16"
+version = "0.1.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b16d9d0d88a5273d830dac8b78ceb217ffc9b1d5404e5597a3542515329405b"
+checksum = "f1559b6cba622276d6d63706db152618eeb15b89b3e4041446b05876e352e639"
 dependencies = [
  "data-encoding",
  "data-encoding-macro-internal",
@@ -2990,12 +2711,12 @@ dependencies = [
 
 [[package]]
 name = "data-encoding-macro-internal"
-version = "0.1.14"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1145d32e826a7748b69ee8fc62d3e6355ff7f1051df53141e7048162fc90481b"
+checksum = "332d754c0af53bc87c108fed664d121ecf59207ec4196041f04d6ab9002ad33f"
 dependencies = [
  "data-encoding",
- "syn 2.0.96",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -3078,7 +2799,7 @@ checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -3089,7 +2810,7 @@ checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -3102,7 +2823,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rustc_version 0.4.1",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -3122,7 +2843,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "unicode-xid",
 ]
 
@@ -3212,7 +2933,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -3231,26 +2952,10 @@ dependencies = [
  "sp-core",
  "sp-distance",
  "sp-runtime",
- "subxt 0.38.0",
+ "subxt",
  "tokio",
 ]
 
-[[package]]
-name = "dleq_vrf"
-version = "0.0.2"
-source = "git+https://github.com/duniter/ring-vrf#93af77b15de3bb34f1c46913599f4f4c4faa3215"
-dependencies = [
- "ark-ec 0.4.2",
- "ark-ff 0.4.2",
- "ark-scale",
- "ark-secret-scalar",
- "ark-serialize 0.4.2",
- "ark-std 0.4.0",
- "ark-transcript",
- "arrayvec 0.7.6",
- "zeroize",
-]
-
 [[package]]
 name = "docify"
 version = "0.2.9"
@@ -3272,7 +2977,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "regex",
- "syn 2.0.96",
+ "syn 2.0.87",
  "termcolor",
  "toml 0.8.19",
  "walkdir",
@@ -3325,33 +3030,36 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813"
 name = "duniter"
 version = "0.8.0"
 dependencies = [
+ "array-bytes",
  "async-io",
- "bs58",
+ "async-trait",
+ "bs58 0.5.1",
  "clap",
  "clap_complete",
  "common-runtime",
  "dc-distance",
  "distance-oracle",
+ "env_logger 0.10.2",
  "frame-benchmarking",
  "frame-benchmarking-cli",
- "frame-metadata-hash-extension",
  "frame-system",
  "futures 0.3.31",
  "g1-runtime",
  "gdev-runtime",
  "gtest-runtime",
  "hex",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "memmap2 0.9.5",
  "num-format",
  "pallet-grandpa",
  "pallet-im-online",
- "pallet-oneshot-account",
  "pallet-transaction-payment",
  "pallet-transaction-payment-rpc",
  "pallet-transaction-payment-rpc-runtime-api",
  "pallet-treasury",
+ "parity-scale-codec",
+ "parking_lot 0.12.3",
  "sc-basic-authorship",
  "sc-chain-spec",
  "sc-cli",
@@ -3366,6 +3074,8 @@ dependencies = [
  "sc-executor",
  "sc-keystore",
  "sc-network",
+ "sc-network-sync",
+ "sc-network-test",
  "sc-offchain",
  "sc-rpc",
  "sc-rpc-api",
@@ -3373,6 +3083,7 @@ dependencies = [
  "sc-telemetry",
  "sc-transaction-pool",
  "sc-transaction-pool-api",
+ "sc-utils",
  "serde",
  "serde_json",
  "serde_yaml",
@@ -3393,7 +3104,7 @@ dependencies = [
  "sp-offchain",
  "sp-runtime",
  "sp-session",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-storage",
  "sp-timestamp",
  "sp-transaction-pool",
  "sp-transaction-storage-proof",
@@ -3412,7 +3123,7 @@ dependencies = [
  "ctrlc",
  "cucumber",
  "distance-oracle",
- "env_logger 0.11.6",
+ "env_logger 0.11.5",
  "hex",
  "notify",
  "notify-debouncer-mini",
@@ -3422,7 +3133,7 @@ dependencies = [
  "sp-core",
  "sp-keyring",
  "sp-runtime",
- "subxt 0.38.0",
+ "subxt",
  "tokio",
 ]
 
@@ -3435,7 +3146,7 @@ dependencies = [
  "parity-scale-codec",
  "sp-core",
  "sp-runtime",
- "subxt 0.38.0",
+ "subxt",
  "tokio",
 ]
 
@@ -3525,18 +3236,6 @@ dependencies = [
  "zeroize",
 ]
 
-[[package]]
-name = "educe"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d7bc049e1bd8cdeb31b68bbd586a9464ecf9f3944af3958a7a9d0f8b9799417"
-dependencies = [
- "enum-ordinalize",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "either"
 version = "1.13.0"
@@ -3565,9 +3264,9 @@ dependencies = [
 
 [[package]]
 name = "encode_unicode"
-version = "1.0.0"
+version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0"
+checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
 
 [[package]]
 name = "enum-as-inner"
@@ -3590,47 +3289,27 @@ dependencies = [
  "heck 0.5.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "enum-ordinalize"
-version = "4.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5"
-dependencies = [
- "enum-ordinalize-derive",
-]
-
-[[package]]
-name = "enum-ordinalize-derive"
-version = "4.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "enumflags2"
-version = "0.7.11"
+version = "0.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba2f4b465f5318854c6f8dd686ede6c0a9dc67d4b1ac241cf0eb51521a309147"
+checksum = "d232db7f5956f3f14313dc2f87985c58bd2c695ce124c8cdd984e08e15ac133d"
 dependencies = [
  "enumflags2_derive",
 ]
 
 [[package]]
 name = "enumflags2_derive"
-version = "0.7.11"
+version = "0.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc4caf64a58d7a6d65ab00639b046ff54399a39f5f2554728895ace4b297cd79"
+checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -3641,14 +3320,14 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "env_filter"
-version = "0.1.3"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0"
+checksum = "4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab"
 dependencies = [
  "log",
 ]
@@ -3668,9 +3347,9 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.11.6"
+version = "0.11.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcaee3d8e3cfc3fd92428d477bc97fc29ec8716d180c0d74c643bb26166660e0"
+checksum = "e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d"
 dependencies = [
  "env_filter",
  "log",
@@ -3690,12 +3369,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
 name = "errno"
-version = "0.3.10"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d"
+checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
 dependencies = [
  "libc",
- "windows-sys 0.59.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -3704,7 +3383,7 @@ version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "09d398648d65820a727d6a81e58b962f874473396a047e4c30bafe3240953417"
 dependencies = [
- "ethereum-types 0.14.1",
+ "ethereum-types",
  "tiny-keccak",
 ]
 
@@ -3716,20 +3395,9 @@ checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60"
 dependencies = [
  "crunchy",
  "fixed-hash",
- "tiny-keccak",
-]
-
-[[package]]
-name = "ethbloom"
-version = "0.14.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c321610643004cf908ec0f5f2aa0d8f1f8e14b540562a2887a1111ff1ecbf7b"
-dependencies = [
- "crunchy",
- "fixed-hash",
- "impl-codec 0.7.0",
+ "impl-codec 0.6.0",
  "impl-rlp",
- "impl-serde 0.5.0",
+ "impl-serde 0.4.0",
  "scale-info",
  "tiny-keccak",
 ]
@@ -3740,26 +3408,14 @@ version = "0.14.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee"
 dependencies = [
- "ethbloom 0.13.0",
- "fixed-hash",
- "primitive-types 0.12.2",
- "uint 0.9.5",
-]
-
-[[package]]
-name = "ethereum-types"
-version = "0.15.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ab15ed80916029f878e0267c3a9f92b67df55e79af370bf66199059ae2b4ee3"
-dependencies = [
- "ethbloom 0.14.1",
+ "ethbloom",
  "fixed-hash",
- "impl-codec 0.7.0",
+ "impl-codec 0.6.0",
  "impl-rlp",
- "impl-serde 0.5.0",
- "primitive-types 0.13.1",
+ "impl-serde 0.4.0",
+ "primitive-types 0.12.2",
  "scale-info",
- "uint 0.10.0",
+ "uint 0.9.5",
 ]
 
 [[package]]
@@ -3770,19 +3426,9 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
 
 [[package]]
 name = "event-listener"
-version = "4.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
-dependencies = [
- "concurrent-queue",
- "pin-project-lite",
-]
-
-[[package]]
-name = "event-listener"
-version = "5.4.0"
+version = "5.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3492acde4c3fc54c845eaab3eed8bd00c7a7d881f78bfc801e43a93dec1331ae"
+checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -3791,11 +3437,11 @@ dependencies = [
 
 [[package]]
 name = "event-listener-strategy"
-version = "0.5.3"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3e4e0dd3673c1139bf041f3008816d9cf2946bbfac2945c09e523b8d7b05b2"
+checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
 dependencies = [
- "event-listener 5.4.0",
+ "event-listener 5.3.1",
  "pin-project-lite",
 ]
 
@@ -3817,10 +3463,10 @@ dependencies = [
  "blake2 0.10.6",
  "file-guard",
  "fs-err",
- "prettyplease",
+ "prettyplease 0.2.25",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -3848,9 +3494,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.3.0"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
+checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4"
 
 [[package]]
 name = "fastrlp"
@@ -3863,41 +3509,6 @@ dependencies = [
  "bytes",
 ]
 
-[[package]]
-name = "fastrlp"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce8dba4714ef14b8274c371879b175aa55b16b30f269663f19d576f380018dc4"
-dependencies = [
- "arrayvec 0.7.6",
- "auto_impl",
- "bytes",
-]
-
-[[package]]
-name = "fatality"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec6f82451ff7f0568c6181287189126d492b5654e30a788add08027b6363d019"
-dependencies = [
- "fatality-proc-macro",
- "thiserror 1.0.69",
-]
-
-[[package]]
-name = "fatality-proc-macro"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb42427514b063d97ce21d5199f36c0c307d981434a6be32582bc79fe5bd2303"
-dependencies = [
- "expander",
- "indexmap 2.7.1",
- "proc-macro-crate 3.2.0",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "fdlimit"
 version = "0.3.0"
@@ -3918,19 +3529,6 @@ dependencies = [
  "subtle 2.6.1",
 ]
 
-[[package]]
-name = "fflonk"
-version = "0.1.1"
-source = "git+https://github.com/w3f/fflonk#eda051ea3b80042e844a3ebd17c2f60536e6ee3f"
-dependencies = [
- "ark-ec 0.5.0",
- "ark-ff 0.5.0",
- "ark-poly 0.5.0",
- "ark-serialize 0.5.0",
- "ark-std 0.5.0",
- "merlin",
-]
-
 [[package]]
 name = "fiat-crypto"
 version = "0.2.9"
@@ -3985,16 +3583,6 @@ dependencies = [
  "scale-info",
 ]
 
-[[package]]
-name = "finito"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2384245d85162258a14b43567a9ee3598f5ae746a1581fb5d3d2cb780f0dbf95"
-dependencies = [
- "futures-timer",
- "pin-project",
-]
-
 [[package]]
 name = "fixed-hash"
 version = "0.8.0"
@@ -4041,15 +3629,30 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "foldhash"
-version = "0.1.4"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f"
+checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2"
 
 [[package]]
-name = "fork-tree"
-version = "12.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+[[package]]
+name = "fork-tree"
+version = "13.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
+dependencies = [
  "parity-scale-codec",
 ]
 
@@ -4080,8 +3683,8 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa"
 
 [[package]]
 name = "frame-benchmarking"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-support-procedural",
@@ -4097,35 +3700,31 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
+ "sp-storage",
  "static_assertions",
 ]
 
 [[package]]
 name = "frame-benchmarking-cli"
-version = "32.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "43.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "Inflector",
  "array-bytes",
  "chrono",
  "clap",
  "comfy-table",
- "cumulus-client-parachain-inherent",
- "cumulus-primitives-proof-size-hostfunction",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
  "gethostname",
  "handlebars",
- "hex",
  "itertools 0.11.0",
+ "lazy_static",
  "linked-hash-map",
  "log",
  "parity-scale-codec",
- "polkadot-parachain-primitives",
- "polkadot-primitives",
  "rand",
  "rand_pcg",
  "sc-block-builder",
@@ -4134,40 +3733,32 @@ dependencies = [
  "sc-client-api",
  "sc-client-db",
  "sc-executor",
- "sc-executor-common",
  "sc-service",
  "sc-sysinfo",
  "serde",
  "serde_json",
  "sp-api",
- "sp-block-builder",
  "sp-blockchain",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
  "sp-database",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-genesis-builder",
  "sp-inherents",
  "sp-io",
  "sp-keystore",
  "sp-runtime",
  "sp-state-machine",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-timestamp",
- "sp-transaction-pool",
+ "sp-storage",
  "sp-trie",
- "sp-version",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "subxt 0.37.0",
- "subxt-signer",
+ "sp-wasm-interface",
  "thiserror 1.0.69",
  "thousands",
 ]
 
 [[package]]
 name = "frame-benchmarking-pallet-pov"
-version = "18.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "28.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4194,19 +3785,19 @@ dependencies = [
 
 [[package]]
 name = "frame-election-provider-solution-type"
-version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "14.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "frame-election-provider-support"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-election-provider-solution-type",
  "frame-support",
@@ -4221,8 +3812,8 @@ dependencies = [
 
 [[package]]
 name = "frame-executive"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "aquamarine",
  "frame-support",
@@ -4234,7 +3825,7 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
 ]
 
 [[package]]
@@ -4272,25 +3863,12 @@ dependencies = [
  "serde",
 ]
 
-[[package]]
-name = "frame-metadata"
-version = "18.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "daaf440c68eb2c3d88e5760fe8c7af3f9fee9181fab6c2f2c4e7cc48dcc40bb8"
-dependencies = [
- "cfg-if",
- "parity-scale-codec",
- "scale-info",
- "serde",
-]
-
 [[package]]
 name = "frame-metadata-hash-extension"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.6.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "array-bytes",
- "const-hex",
  "docify",
  "frame-support",
  "frame-system",
@@ -4302,16 +3880,15 @@ dependencies = [
 
 [[package]]
 name = "frame-support"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "aquamarine",
  "array-bytes",
- "binary-merkle-tree",
  "bitflags 1.3.2",
  "docify",
  "environmental",
- "frame-metadata 18.0.0",
+ "frame-metadata 16.0.0",
  "frame-support-procedural",
  "impl-trait-for-tuples",
  "k256",
@@ -4327,7 +3904,7 @@ dependencies = [
  "sp-arithmetic",
  "sp-core",
  "sp-crypto-hashing-proc-macro",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-debug-derive",
  "sp-genesis-builder",
  "sp-inherents",
  "sp-io",
@@ -4335,9 +3912,8 @@ dependencies = [
  "sp-runtime",
  "sp-staking",
  "sp-state-machine",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-trie",
+ "sp-std",
+ "sp-tracing",
  "sp-weights",
  "static_assertions",
  "tt-call",
@@ -4345,8 +3921,8 @@ dependencies = [
 
 [[package]]
 name = "frame-support-procedural"
-version = "23.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "30.0.3"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "Inflector",
  "cfg-expr",
@@ -4359,36 +3935,36 @@ dependencies = [
  "proc-macro-warning 1.0.2",
  "proc-macro2",
  "quote",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "syn 2.0.96",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "frame-support-procedural-tools"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "13.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support-procedural-tools-derive",
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "frame-support-procedural-tools-derive"
-version = "11.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "12.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "frame-system"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cfg-if",
  "docify",
@@ -4400,15 +3976,15 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-version",
  "sp-weights",
 ]
 
 [[package]]
 name = "frame-system-benchmarking"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -4421,8 +3997,8 @@ dependencies = [
 
 [[package]]
 name = "frame-system-rpc-runtime-api"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "parity-scale-codec",
@@ -4431,8 +4007,8 @@ dependencies = [
 
 [[package]]
 name = "frame-try-runtime"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "parity-scale-codec",
@@ -4541,9 +4117,9 @@ checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6"
 
 [[package]]
 name = "futures-lite"
-version = "2.6.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5edaec856126859abb19ed65f39e90fea3a9574b9707f13539acf4abf7eb532"
+checksum = "cef40d21ae2c515b51041df9ed313ed21e572df340ea58a922a0aefe7e8891a1"
 dependencies = [
  "fastrand",
  "futures-core",
@@ -4560,7 +4136,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -4590,10 +4166,6 @@ name = "futures-timer"
 version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24"
-dependencies = [
- "gloo-timers",
- "send_wrapper 0.4.0",
-]
 
 [[package]]
 name = "futures-util"
@@ -4630,7 +4202,6 @@ dependencies = [
  "common-runtime",
  "frame-benchmarking",
  "frame-executive",
- "frame-metadata-hash-extension",
  "frame-support",
  "frame-system",
  "frame-system-benchmarking",
@@ -4705,7 +4276,6 @@ dependencies = [
  "common-runtime",
  "frame-benchmarking",
  "frame-executive",
- "frame-metadata-hash-extension",
  "frame-support",
  "frame-system",
  "frame-system-benchmarking",
@@ -4850,7 +4420,7 @@ dependencies = [
  "quote",
  "serde",
  "serde_json",
- "syn 2.0.96",
+ "syn 2.0.87",
  "textwrap",
  "thiserror 1.0.69",
  "typed-builder",
@@ -4882,10 +4452,6 @@ name = "gimli"
 version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f"
-dependencies = [
- "fallible-iterator 0.3.0",
- "stable_deref_trait",
-]
 
 [[package]]
 name = "git-version"
@@ -4904,14 +4470,14 @@ checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "glob"
-version = "0.3.2"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2"
+checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "globset"
@@ -4943,57 +4509,11 @@ version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0bf760ebf69878d9fd8f110c89703d90ce35095324d1f1edcb595c63945ee757"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "ignore",
  "walkdir",
 ]
 
-[[package]]
-name = "gloo-net"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06f627b1a58ca3d42b45d6104bf1e1a03799df472df00988b6ba21accc10580"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-sink",
- "gloo-utils",
- "http 1.2.0",
- "js-sys",
- "pin-project",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
-]
-
-[[package]]
-name = "gloo-timers"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c"
-dependencies = [
- "futures-channel",
- "futures-core",
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "gloo-utils"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa"
-dependencies = [
- "js-sys",
- "serde",
- "serde_json",
- "wasm-bindgen",
- "web-sys",
-]
-
 [[package]]
 name = "governor"
 version = "0.6.3"
@@ -5025,11 +4545,11 @@ dependencies = [
 
 [[package]]
 name = "graphql-parser"
-version = "0.4.1"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a818c0d883d7c0801df27be910917750932be279c7bc82dc541b8769425f409"
+checksum = "d2ebc8013b4426d5b81a4364c419a95ed0b404af2b82e2457de52d9348f0e474"
 dependencies = [
- "combine",
+ "combine 3.8.1",
  "thiserror 1.0.69",
 ]
 
@@ -5090,7 +4610,6 @@ dependencies = [
  "common-runtime",
  "frame-benchmarking",
  "frame-executive",
- "frame-metadata-hash-extension",
  "frame-support",
  "frame-system",
  "frame-system-benchmarking",
@@ -5170,7 +4689,7 @@ dependencies = [
  "futures-sink",
  "futures-util",
  "http 0.2.12",
- "indexmap 2.7.1",
+ "indexmap 2.6.0",
  "slab",
  "tokio",
  "tokio-util",
@@ -5179,17 +4698,17 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.4.7"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e"
+checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205"
 dependencies = [
  "atomic-waker",
  "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
- "http 1.2.0",
- "indexmap 2.7.1",
+ "http 1.1.0",
+ "indexmap 2.6.0",
  "slab",
  "tokio",
  "tokio-util",
@@ -5230,6 +4749,9 @@ name = "hashbrown"
 version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+dependencies = [
+ "ahash 0.7.8",
+]
 
 [[package]]
 name = "hashbrown"
@@ -5237,7 +4759,7 @@ version = "0.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
 ]
 
 [[package]]
@@ -5246,16 +4768,16 @@ version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
  "allocator-api2",
  "serde",
 ]
 
 [[package]]
 name = "hashbrown"
-version = "0.15.2"
+version = "0.15.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
+checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3"
 dependencies = [
  "allocator-api2",
  "equivalent",
@@ -5313,51 +4835,6 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46"
 
-[[package]]
-name = "hickory-proto"
-version = "0.24.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447afdcdb8afb9d0a852af6dc65d9b285ce720ed7a59e42a8bf2e931c67bc1b5"
-dependencies = [
- "async-trait",
- "cfg-if",
- "data-encoding",
- "enum-as-inner 0.6.1",
- "futures-channel",
- "futures-io",
- "futures-util",
- "idna 1.0.3",
- "ipnet",
- "once_cell",
- "rand",
- "thiserror 1.0.69",
- "tinyvec",
- "tokio",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "hickory-resolver"
-version = "0.24.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a2e2aba9c389ce5267d31cf1e4dace82390ae276b0b364ea55630b1fa1b44b4"
-dependencies = [
- "cfg-if",
- "futures-util",
- "hickory-proto",
- "ipconfig",
- "lru-cache",
- "once_cell",
- "parking_lot 0.12.3",
- "rand",
- "resolv-conf",
- "smallvec",
- "thiserror 1.0.69",
- "tokio",
- "tracing",
-]
-
 [[package]]
 name = "hkdf"
 version = "0.12.4"
@@ -5397,6 +4874,15 @@ dependencies = [
  "hmac 0.8.1",
 ]
 
+[[package]]
+name = "home"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
 [[package]]
 name = "hostname"
 version = "0.3.1"
@@ -5421,9 +4907,9 @@ dependencies = [
 
 [[package]]
 name = "http"
-version = "1.2.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
 dependencies = [
  "bytes",
  "fnv",
@@ -5448,7 +4934,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184"
 dependencies = [
  "bytes",
- "http 1.2.0",
+ "http 1.1.0",
 ]
 
 [[package]]
@@ -5459,7 +4945,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f"
 dependencies = [
  "bytes",
  "futures-util",
- "http 1.2.0",
+ "http 1.1.0",
  "http-body 1.0.1",
  "pin-project-lite",
 ]
@@ -5484,9 +4970,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "hyper"
-version = "0.14.32"
+version = "0.14.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7"
+checksum = "8c08302e8fa335b151b788c775ff56e7a03ae64ff85c548ee820fecb70356e85"
 dependencies = [
  "bytes",
  "futures-channel",
@@ -5499,7 +4985,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tokio",
  "tower-service",
  "tracing",
@@ -5508,15 +4994,15 @@ dependencies = [
 
 [[package]]
 name = "hyper"
-version = "1.5.2"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0"
+checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a"
 dependencies = [
  "bytes",
  "futures-channel",
  "futures-util",
- "h2 0.4.7",
- "http 1.2.0",
+ "h2 0.4.6",
+ "http 1.1.0",
  "http-body 1.0.1",
  "httparse",
  "httpdate",
@@ -5535,7 +5021,7 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
 dependencies = [
  "futures-util",
  "http 0.2.12",
- "hyper 0.14.32",
+ "hyper 0.14.31",
  "log",
  "rustls 0.21.12",
  "rustls-native-certs 0.6.3",
@@ -5545,22 +5031,20 @@ dependencies = [
 
 [[package]]
 name = "hyper-rustls"
-version = "0.27.5"
+version = "0.27.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2"
+checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333"
 dependencies = [
  "futures-util",
- "http 1.2.0",
- "hyper 1.5.2",
+ "http 1.1.0",
+ "hyper 1.5.0",
  "hyper-util",
- "log",
- "rustls 0.23.21",
- "rustls-native-certs 0.8.1",
+ "rustls 0.23.16",
  "rustls-pki-types",
  "tokio",
- "tokio-rustls 0.26.1",
+ "tokio-rustls 0.26.0",
  "tower-service",
- "webpki-roots 0.26.7",
+ "webpki-roots 0.26.6",
 ]
 
 [[package]]
@@ -5572,11 +5056,11 @@ dependencies = [
  "bytes",
  "futures-channel",
  "futures-util",
- "http 1.2.0",
+ "http 1.1.0",
  "http-body 1.0.1",
- "hyper 1.5.2",
+ "hyper 1.5.0",
  "pin-project-lite",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tokio",
  "tower-service",
  "tracing",
@@ -5720,7 +5204,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -5783,21 +5267,17 @@ dependencies = [
 
 [[package]]
 name = "if-watch"
-version = "3.2.1"
+version = "3.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdf9d64cfcf380606e64f9a0bcf493616b65331199f984151a6fa11a7b3cde38"
+checksum = "d6b0422c86d7ce0e97169cc42e04ae643caf278874a7a3c87b8150a220dc7e1e"
 dependencies = [
  "async-io",
- "core-foundation 0.9.4",
+ "core-foundation",
  "fnv",
  "futures 0.3.31",
  "if-addrs",
  "ipnet",
  "log",
- "netlink-packet-core",
- "netlink-packet-route",
- "netlink-proto",
- "netlink-sys",
  "rtnetlink",
  "system-configuration",
  "tokio",
@@ -5815,7 +5295,7 @@ dependencies = [
  "bytes",
  "futures 0.3.31",
  "http 0.2.12",
- "hyper 0.14.32",
+ "hyper 0.14.31",
  "log",
  "rand",
  "tokio",
@@ -5857,24 +5337,13 @@ dependencies = [
  "parity-scale-codec",
 ]
 
-[[package]]
-name = "impl-num-traits"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "803d15461ab0dcc56706adf266158acbc44ccf719bf7d0af30705f58b90a4b8c"
-dependencies = [
- "integer-sqrt",
- "num-traits 0.2.19",
- "uint 0.10.0",
-]
-
 [[package]]
 name = "impl-rlp"
-version = "0.4.0"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54ed8ad1f3877f7e775b8cbf30ed1bd3209a95401817f19a0eb4402d13f8cf90"
+checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808"
 dependencies = [
- "rlp 0.6.1",
+ "rlp",
 ]
 
 [[package]]
@@ -5897,13 +5366,13 @@ dependencies = [
 
 [[package]]
 name = "impl-trait-for-tuples"
-version = "0.2.3"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9"
+checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -5938,12 +5407,12 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.7.1"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652"
+checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da"
 dependencies = [
  "equivalent",
- "hashbrown 0.15.2",
+ "hashbrown 0.15.1",
 ]
 
 [[package]]
@@ -6007,12 +5476,9 @@ dependencies = [
 
 [[package]]
 name = "inventory"
-version = "0.3.17"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b31349d02fe60f80bbbab1a9402364cad7460626d6030494b08ac4a2075bf81"
-dependencies = [
- "rustversion",
-]
+checksum = "f958d3d68f4167080a18141e10381e7634563984a537f2a49a30fd8e53ac5767"
 
 [[package]]
 name = "io-lifetimes"
@@ -6037,7 +5503,7 @@ version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f"
 dependencies = [
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "widestring",
  "windows-sys 0.48.0",
  "winreg",
@@ -6045,9 +5511,9 @@ dependencies = [
 
 [[package]]
 name = "ipnet"
-version = "2.11.0"
+version = "2.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130"
+checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708"
 
 [[package]]
 name = "is-terminal"
@@ -6104,9 +5570,9 @@ dependencies = [
 
 [[package]]
 name = "itoa"
-version = "1.0.14"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jni"
@@ -6115,7 +5581,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec"
 dependencies = [
  "cesu8",
- "combine",
+ "combine 4.6.7",
  "jni-sys",
  "log",
  "thiserror 1.0.69",
@@ -6139,97 +5605,27 @@ dependencies = [
 
 [[package]]
 name = "js-sys"
-version = "0.3.77"
+version = "0.3.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f"
+checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9"
 dependencies = [
- "once_cell",
  "wasm-bindgen",
 ]
 
-[[package]]
-name = "jsonrpsee"
-version = "0.22.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfdb12a2381ea5b2e68c3469ec604a007b367778cdb14d09612c8069ebd616ad"
-dependencies = [
- "jsonrpsee-client-transport 0.22.5",
- "jsonrpsee-core 0.22.5",
- "jsonrpsee-http-client 0.22.5",
- "jsonrpsee-types 0.22.5",
-]
-
-[[package]]
-name = "jsonrpsee"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b089779ad7f80768693755a031cc14a7766aba707cbe886674e3f79e9b7e47"
-dependencies = [
- "jsonrpsee-core 0.23.2",
- "jsonrpsee-types 0.23.2",
- "jsonrpsee-ws-client 0.23.2",
-]
-
 [[package]]
 name = "jsonrpsee"
 version = "0.24.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843"
 dependencies = [
- "jsonrpsee-client-transport 0.24.7",
- "jsonrpsee-core 0.24.7",
- "jsonrpsee-http-client 0.24.7",
+ "jsonrpsee-client-transport",
+ "jsonrpsee-core",
  "jsonrpsee-proc-macros",
  "jsonrpsee-server",
- "jsonrpsee-types 0.24.7",
- "jsonrpsee-wasm-client",
- "jsonrpsee-ws-client 0.24.7",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "jsonrpsee-client-transport"
-version = "0.22.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4978087a58c3ab02efc5b07c5e5e2803024536106fd5506f558db172c889b3aa"
-dependencies = [
- "futures-util",
- "http 0.2.12",
- "jsonrpsee-core 0.22.5",
- "pin-project",
- "rustls-native-certs 0.7.3",
- "rustls-pki-types",
- "soketto 0.7.1",
- "thiserror 1.0.69",
- "tokio",
- "tokio-rustls 0.25.0",
- "tokio-util",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "jsonrpsee-client-transport"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08163edd8bcc466c33d79e10f695cdc98c00d1e6ddfb95cec41b6b0279dd5432"
-dependencies = [
- "base64 0.22.1",
- "futures-util",
- "http 1.2.0",
- "jsonrpsee-core 0.23.2",
- "pin-project",
- "rustls 0.23.21",
- "rustls-pki-types",
- "rustls-platform-verifier",
- "soketto 0.8.1",
- "thiserror 1.0.69",
+ "jsonrpsee-types",
+ "jsonrpsee-ws-client",
  "tokio",
- "tokio-rustls 0.26.1",
- "tokio-util",
  "tracing",
- "url",
 ]
 
 [[package]]
@@ -6239,19 +5635,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "548125b159ba1314104f5bb5f38519e03a41862786aa3925cf349aae9cdd546e"
 dependencies = [
  "base64 0.22.1",
- "futures-channel",
  "futures-util",
- "gloo-net",
- "http 1.2.0",
- "jsonrpsee-core 0.24.7",
+ "http 1.1.0",
+ "jsonrpsee-core",
  "pin-project",
- "rustls 0.23.21",
+ "rustls 0.23.16",
  "rustls-pki-types",
  "rustls-platform-verifier",
- "soketto 0.8.1",
+ "soketto",
  "thiserror 1.0.69",
  "tokio",
- "tokio-rustls 0.26.1",
+ "tokio-rustls 0.26.0",
  "tokio-util",
  "tracing",
  "url",
@@ -6259,19 +5653,22 @@ dependencies = [
 
 [[package]]
 name = "jsonrpsee-core"
-version = "0.22.5"
+version = "0.24.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4b257e1ec385e07b0255dde0b933f948b5c8b8c28d42afda9587c3a967b896d"
+checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280"
 dependencies = [
- "anyhow",
  "async-trait",
- "beef",
+ "bytes",
  "futures-timer",
  "futures-util",
- "hyper 0.14.32",
- "jsonrpsee-types 0.22.5",
+ "http 1.1.0",
+ "http-body 1.0.1",
+ "http-body-util",
+ "jsonrpsee-types",
+ "parking_lot 0.12.3",
  "pin-project",
- "rustc-hash 1.1.0",
+ "rand",
+ "rustc-hash 2.0.0",
  "serde",
  "serde_json",
  "thiserror 1.0.69",
@@ -6281,110 +5678,16 @@ dependencies = [
 ]
 
 [[package]]
-name = "jsonrpsee-core"
-version = "0.23.2"
+name = "jsonrpsee-proc-macros"
+version = "0.24.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79712302e737d23ca0daa178e752c9334846b08321d439fd89af9a384f8c830b"
-dependencies = [
- "anyhow",
- "async-trait",
- "beef",
- "futures-timer",
- "futures-util",
- "jsonrpsee-types 0.23.2",
- "pin-project",
- "rustc-hash 1.1.0",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
- "tokio",
- "tokio-stream",
- "tracing",
-]
-
-[[package]]
-name = "jsonrpsee-core"
-version = "0.24.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280"
-dependencies = [
- "async-trait",
- "bytes",
- "futures-timer",
- "futures-util",
- "http 1.2.0",
- "http-body 1.0.1",
- "http-body-util",
- "jsonrpsee-types 0.24.7",
- "parking_lot 0.12.3",
- "pin-project",
- "rand",
- "rustc-hash 2.1.0",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
- "tokio",
- "tokio-stream",
- "tracing",
- "wasm-bindgen-futures",
-]
-
-[[package]]
-name = "jsonrpsee-http-client"
-version = "0.22.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ccf93fc4a0bfe05d851d37d7c32b7f370fe94336b52a2f0efc5f1981895c2e5"
-dependencies = [
- "async-trait",
- "hyper 0.14.32",
- "hyper-rustls 0.24.2",
- "jsonrpsee-core 0.22.5",
- "jsonrpsee-types 0.22.5",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
- "tokio",
- "tower 0.4.13",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "jsonrpsee-http-client"
-version = "0.24.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3638bc4617f96675973253b3a45006933bde93c2fd8a6170b33c777cc389e5b"
-dependencies = [
- "async-trait",
- "base64 0.22.1",
- "http-body 1.0.1",
- "hyper 1.5.2",
- "hyper-rustls 0.27.5",
- "hyper-util",
- "jsonrpsee-core 0.24.7",
- "jsonrpsee-types 0.24.7",
- "rustls 0.23.21",
- "rustls-platform-verifier",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
- "tokio",
- "tower 0.4.13",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "jsonrpsee-proc-macros"
-version = "0.24.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d"
+checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d"
 dependencies = [
  "heck 0.5.0",
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -6394,98 +5697,48 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "82ad8ddc14be1d4290cd68046e7d1d37acd408efed6d3ca08aefcc3ad6da069c"
 dependencies = [
  "futures-util",
- "http 1.2.0",
+ "http 1.1.0",
  "http-body 1.0.1",
  "http-body-util",
- "hyper 1.5.2",
+ "hyper 1.5.0",
  "hyper-util",
- "jsonrpsee-core 0.24.7",
- "jsonrpsee-types 0.24.7",
+ "jsonrpsee-core",
+ "jsonrpsee-types",
  "pin-project",
  "route-recognizer",
  "serde",
  "serde_json",
- "soketto 0.8.1",
+ "soketto",
  "thiserror 1.0.69",
  "tokio",
  "tokio-stream",
  "tokio-util",
- "tower 0.4.13",
+ "tower",
  "tracing",
 ]
 
-[[package]]
-name = "jsonrpsee-types"
-version = "0.22.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "150d6168405890a7a3231a3c74843f58b8959471f6df76078db2619ddee1d07d"
-dependencies = [
- "anyhow",
- "beef",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
-]
-
-[[package]]
-name = "jsonrpsee-types"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9c465fbe385238e861fdc4d1c85e04ada6c1fd246161d26385c1b311724d2af"
-dependencies = [
- "beef",
- "http 1.2.0",
- "serde",
- "serde_json",
- "thiserror 1.0.69",
-]
-
 [[package]]
 name = "jsonrpsee-types"
 version = "0.24.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a178c60086f24cc35bb82f57c651d0d25d99c4742b4d335de04e97fa1f08a8a1"
 dependencies = [
- "http 1.2.0",
+ "http 1.1.0",
  "serde",
  "serde_json",
  "thiserror 1.0.69",
 ]
 
-[[package]]
-name = "jsonrpsee-wasm-client"
-version = "0.24.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a01cd500915d24ab28ca17527e23901ef1be6d659a2322451e1045532516c25"
-dependencies = [
- "jsonrpsee-client-transport 0.24.7",
- "jsonrpsee-core 0.24.7",
- "jsonrpsee-types 0.24.7",
-]
-
-[[package]]
-name = "jsonrpsee-ws-client"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c28759775f5cb2f1ea9667672d3fe2b0e701d1f4b7b67954e60afe7fd058b5e"
-dependencies = [
- "http 1.2.0",
- "jsonrpsee-client-transport 0.23.2",
- "jsonrpsee-core 0.23.2",
- "jsonrpsee-types 0.23.2",
- "url",
-]
-
 [[package]]
 name = "jsonrpsee-ws-client"
 version = "0.24.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0fe322e0896d0955a3ebdd5bf813571c53fea29edd713bc315b76620b327e86d"
 dependencies = [
- "http 1.2.0",
- "jsonrpsee-client-transport 0.24.7",
- "jsonrpsee-core 0.24.7",
- "jsonrpsee-types 0.24.7",
+ "http 1.1.0",
+ "jsonrpsee-client-transport",
+ "jsonrpsee-core",
+ "jsonrpsee-types",
  "url",
 ]
 
@@ -6512,16 +5765,6 @@ dependencies = [
  "cpufeatures",
 ]
 
-[[package]]
-name = "keccak-hash"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b286e6b663fb926e1eeb68528e69cb70ed46c6d65871a21b2215ae8154c6d3c"
-dependencies = [
- "primitive-types 0.12.2",
- "tiny-keccak",
-]
-
 [[package]]
 name = "keccak-hash"
 version = "0.11.0"
@@ -6579,9 +5822,9 @@ dependencies = [
 
 [[package]]
 name = "lazy-regex"
-version = "3.4.1"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60c7310b93682b36b98fa7ea4de998d3463ccbebd94d935d6b48ba5b6ffa7126"
+checksum = "8d8e41c97e6bc7ecb552016274b99fbb5d035e8de288c582d9b933af6677bfda"
 dependencies = [
  "lazy-regex-proc_macros",
  "once_cell",
@@ -6590,14 +5833,14 @@ dependencies = [
 
 [[package]]
 name = "lazy-regex-proc_macros"
-version = "3.4.1"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ba01db5ef81e17eb10a5e0f2109d1b3a3e29bac3070fdbd7d156bf7dbd206a1"
+checksum = "76e1d8b05d672c53cb9c7b920bbba8783845ae4f0b076e02a3db1d02c81b4163"
 dependencies = [
  "proc-macro2",
  "quote",
  "regex",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -6608,9 +5851,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
 
 [[package]]
 name = "libc"
-version = "0.2.169"
+version = "0.2.162"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
+checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398"
 
 [[package]]
 name = "libm"
@@ -6693,7 +5936,7 @@ dependencies = [
  "libp2p-identity",
  "log",
  "multiaddr 0.18.2",
- "multihash 0.19.3",
+ "multihash 0.19.2",
  "multistream-select",
  "once_cell",
  "parking_lot 0.12.3",
@@ -6738,7 +5981,7 @@ dependencies = [
  "libp2p-identity",
  "libp2p-swarm",
  "log",
- "lru",
+ "lru 0.12.5",
  "quick-protobuf",
  "quick-protobuf-codec",
  "smallvec",
@@ -6748,14 +5991,14 @@ dependencies = [
 
 [[package]]
 name = "libp2p-identity"
-version = "0.2.10"
+version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "257b5621d159b32282eac446bed6670c39c7dc68a200a992d8f056afa0066f6d"
+checksum = "55cca1eb2bc1fd29f099f3daaab7effd01e1a54b7c577d0ed082521034d912e8"
 dependencies = [
- "bs58",
+ "bs58 0.5.1",
  "ed25519-dalek",
  "hkdf",
- "multihash 0.19.3",
+ "multihash 0.19.2",
  "quick-protobuf",
  "rand",
  "sha2 0.10.8",
@@ -6808,7 +6051,7 @@ dependencies = [
  "log",
  "rand",
  "smallvec",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tokio",
  "trust-dns-proto 0.22.0",
  "void",
@@ -6844,7 +6087,7 @@ dependencies = [
  "libp2p-identity",
  "log",
  "multiaddr 0.18.2",
- "multihash 0.19.3",
+ "multihash 0.19.2",
  "once_cell",
  "quick-protobuf",
  "rand",
@@ -6893,7 +6136,7 @@ dependencies = [
  "rand",
  "ring 0.16.20",
  "rustls 0.21.12",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "thiserror 1.0.69",
  "tokio",
 ]
@@ -6949,7 +6192,7 @@ dependencies = [
  "proc-macro-warning 0.4.2",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -6965,7 +6208,7 @@ dependencies = [
  "libp2p-core",
  "libp2p-identity",
  "log",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tokio",
 ]
 
@@ -7013,7 +6256,7 @@ dependencies = [
  "futures 0.3.31",
  "js-sys",
  "libp2p-core",
- "send_wrapper 0.6.0",
+ "send_wrapper",
  "wasm-bindgen",
  "wasm-bindgen-futures",
 ]
@@ -7033,7 +6276,7 @@ dependencies = [
  "parking_lot 0.12.3",
  "pin-project-lite",
  "rw-stream-sink",
- "soketto 0.8.1",
+ "soketto",
  "thiserror 1.0.69",
  "url",
  "webpki-roots 0.25.4",
@@ -7058,9 +6301,9 @@ version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "libc",
- "redox_syscall 0.5.8",
+ "redox_syscall 0.5.7",
 ]
 
 [[package]]
@@ -7113,9 +6356,9 @@ dependencies = [
 
 [[package]]
 name = "libz-sys"
-version = "1.1.21"
+version = "1.1.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df9b68e50e6e0b26f672573834882eb57759f6db9b3be2ea3c35c91188bb4eaa"
+checksum = "d2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472"
 dependencies = [
  "cc",
  "cmake",
@@ -7141,9 +6384,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "linked_hash_set"
-version = "0.1.5"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bae85b5be22d9843c80e5fc80e9b64c8a3b1f98f867c709956eca3efff4e92e2"
+checksum = "47186c6da4d81ca383c7c47c1bfc80f4b95f4720514d860a5407aaf4233f9588"
 dependencies = [
  "linked-hash-map",
 ]
@@ -7165,9 +6408,9 @@ checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.15"
+version = "0.4.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab"
+checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
 
 [[package]]
 name = "lioness"
@@ -7183,28 +6426,27 @@ dependencies = [
 
 [[package]]
 name = "litemap"
-version = "0.7.4"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104"
+checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704"
 
 [[package]]
 name = "litep2p"
-version = "0.8.4"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b0fef34af8847e816003bf7fdeac5ea50b9a7a88441ac927a6166b5e812ab79"
+checksum = "0f46c51c205264b834ceed95c8b195026e700494bc3991aaba3b4ea9e20626d9"
 dependencies = [
  "async-trait",
- "bs58",
+ "bs58 0.4.0",
  "bytes",
  "cid 0.10.1",
  "ed25519-dalek",
  "futures 0.3.31",
  "futures-timer",
  "hex-literal",
- "hickory-resolver",
- "indexmap 2.7.1",
+ "indexmap 2.6.0",
  "libc",
- "mockall 0.13.1",
+ "mockall 0.12.1",
  "multiaddr 0.17.1",
  "multihash 0.17.0",
  "network-interface",
@@ -7212,7 +6454,8 @@ dependencies = [
  "parking_lot 0.12.3",
  "pin-project",
  "prost 0.12.6",
- "prost-build",
+ "prost-build 0.11.9",
+ "quinn 0.9.4",
  "rand",
  "rcgen",
  "ring 0.16.20",
@@ -7222,17 +6465,20 @@ dependencies = [
  "simple-dns",
  "smallvec",
  "snow",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "static_assertions",
+ "str0m",
  "thiserror 1.0.69",
  "tokio",
  "tokio-stream",
  "tokio-tungstenite",
  "tokio-util",
  "tracing",
+ "trust-dns-resolver",
  "uint 0.9.5",
  "unsigned-varint 0.8.0",
  "url",
+ "webpki",
  "x25519-dalek",
  "x509-parser 0.16.0",
  "yasna",
@@ -7251,9 +6497,18 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.25"
+version = "0.4.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"
+checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
+
+[[package]]
+name = "lru"
+version = "0.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6e8aaa3f231bb4bd57b84b2d5dc3ae7f350265df8aa96492e0bc394a1571909"
+dependencies = [
+ "hashbrown 0.12.3",
+]
 
 [[package]]
 name = "lru"
@@ -7261,7 +6516,7 @@ version = "0.12.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38"
 dependencies = [
- "hashbrown 0.15.2",
+ "hashbrown 0.15.1",
 ]
 
 [[package]]
@@ -7275,9 +6530,9 @@ dependencies = [
 
 [[package]]
 name = "lz4"
-version = "1.28.1"
+version = "1.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a20b523e860d03443e98350ceaac5e71c6ba89aea7d960769ec3ce37f4de5af4"
+checksum = "4d1febb2b4a79ddd1980eede06a8f7902197960aa0383ffcfdd62fe723036725"
 dependencies = [
  "lz4-sys",
 ]
@@ -7310,7 +6565,7 @@ dependencies = [
  "macro_magic_core",
  "macro_magic_macros",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -7324,7 +6579,7 @@ dependencies = [
  "macro_magic_core_macros",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -7335,7 +6590,7 @@ checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -7346,7 +6601,7 @@ checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869"
 dependencies = [
  "macro_magic_core",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -7398,7 +6653,7 @@ version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64"
 dependencies = [
- "rustix 0.38.43",
+ "rustix 0.38.40",
 ]
 
 [[package]]
@@ -7439,13 +6694,13 @@ dependencies = [
 
 [[package]]
 name = "merkleized-metadata"
-version = "0.2.0"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38c592efaf1b3250df14c8f3c2d952233f0302bb81d3586db2f303666c1cd607"
+checksum = "f313fcff1d2a4bcaa2deeaa00bf7530d77d5f7bd0467a117dde2e29a75a7a17a"
 dependencies = [
  "array-bytes",
  "blake3",
- "frame-metadata 18.0.0",
+ "frame-metadata 16.0.0",
  "parity-scale-codec",
  "scale-decode 0.13.1",
  "scale-info",
@@ -7477,9 +6732,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.8.3"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924"
+checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1"
 dependencies = [
  "adler2",
 ]
@@ -7498,10 +6753,11 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "1.0.3"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
+checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec"
 dependencies = [
+ "hermit-abi 0.3.9",
  "libc",
  "wasi",
  "windows-sys 0.52.0",
@@ -7549,15 +6805,16 @@ dependencies = [
 
 [[package]]
 name = "mockall"
-version = "0.13.1"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39a6bfcc6c8c7eed5ee98b9c3e33adc726054389233e201c95dab2d41a3839d2"
+checksum = "43766c2b5203b10de348ffe19f7e54564b64f3d6018ff7648d1e2d6d3a0f0a48"
 dependencies = [
  "cfg-if",
  "downcast",
  "fragile",
- "mockall_derive 0.13.1",
- "predicates 3.1.3",
+ "lazy_static",
+ "mockall_derive 0.12.1",
+ "predicates 3.1.2",
  "predicates-tree",
 ]
 
@@ -7575,14 +6832,14 @@ dependencies = [
 
 [[package]]
 name = "mockall_derive"
-version = "0.13.1"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25ca3004c2efe9011bd4e461bd8256445052b9615405b4f7ea43fc8ca5c20898"
+checksum = "af7cbce79ec385a1d4f54baa90a76401eb15d9cab93685f62e7e9f942aa00ae2"
 dependencies = [
  "cfg-if",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -7621,7 +6878,7 @@ dependencies = [
  "data-encoding",
  "libp2p-identity",
  "multibase",
- "multihash 0.19.3",
+ "multihash 0.19.2",
  "percent-encoding",
  "serde",
  "static_assertions",
@@ -7676,9 +6933,9 @@ dependencies = [
 
 [[package]]
 name = "multihash"
-version = "0.19.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b430e7953c29dd6a09afc29ff0bb69c6e306329ee6794700aee27b76a1aea8d"
+checksum = "cc41f430805af9d1cf4adae4ed2149c759b877b01d909a1f40256188d09345d2"
 dependencies = [
  "core2",
  "unsigned-varint 0.8.0",
@@ -7698,6 +6955,12 @@ dependencies = [
  "synstructure 0.12.6",
 ]
 
+[[package]]
+name = "multimap"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
+
 [[package]]
 name = "multimap"
 version = "0.10.0"
@@ -7742,28 +7005,23 @@ dependencies = [
  "rand",
 ]
 
-[[package]]
-name = "nanorand"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
-
 [[package]]
 name = "netlink-packet-core"
-version = "0.7.0"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72724faf704479d67b388da142b186f916188505e7e0b26719019c525882eda4"
+checksum = "345b8ab5bd4e71a2986663e88c56856699d060e78e152e6e9d7966fcd5491297"
 dependencies = [
  "anyhow",
  "byteorder",
+ "libc",
  "netlink-packet-utils",
 ]
 
 [[package]]
 name = "netlink-packet-route"
-version = "0.17.1"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "053998cea5a306971f88580d0829e90f270f940befd7cf928da179d4187a5a66"
+checksum = "d9ea4302b9759a7a88242299225ea3688e63c85ea136371bb6cf94fd674efaab"
 dependencies = [
  "anyhow",
  "bitflags 1.3.2",
@@ -7787,23 +7045,24 @@ dependencies = [
 
 [[package]]
 name = "netlink-proto"
-version = "0.11.4"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2741a6c259755922e3ed29ebce3b299cc2160c4acae94b465b5938ab02c2bbe"
+checksum = "65b4b14489ab424703c092062176d52ba55485a89c076b4f9db05092b7223aa6"
 dependencies = [
  "bytes",
  "futures 0.3.31",
  "log",
  "netlink-packet-core",
  "netlink-sys",
- "thiserror 2.0.11",
+ "thiserror 1.0.69",
+ "tokio",
 ]
 
 [[package]]
 name = "netlink-sys"
-version = "0.8.7"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16c903aa70590cb93691bf97a767c8d1d6122d2cc9070433deb3bbf36ce8bd23"
+checksum = "416060d346fbaf1f23f9512963e3e878f1a78e707cb699ba9215761754244307"
 dependencies = [
  "bytes",
  "futures 0.3.31",
@@ -7826,9 +7085,9 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.26.4"
+version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
 dependencies = [
  "bitflags 1.3.2",
  "cfg-if",
@@ -7841,7 +7100,7 @@ version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "cfg-if",
  "cfg_aliases 0.2.1",
  "libc",
@@ -7853,16 +7112,10 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c"
 
-[[package]]
-name = "no-std-net"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43794a0ace135be66a25d3ae77d41b91615fb68ae937f904090203e81f755b65"
-
 [[package]]
 name = "node-primitives"
 version = "2.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "sp-core",
  "sp-runtime",
@@ -7925,7 +7178,7 @@ version = "6.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "crossbeam-channel",
  "filetime",
  "fsevent-sys",
@@ -7991,7 +7244,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -8076,9 +7329,9 @@ dependencies = [
 
 [[package]]
 name = "object"
-version = "0.36.7"
+version = "0.36.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87"
+checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e"
 dependencies = [
  "memchr",
 ]
@@ -8119,6 +7372,32 @@ version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
 
+[[package]]
+name = "openssl"
+version = "0.10.68"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5"
+dependencies = [
+ "bitflags 2.6.0",
+ "cfg-if",
+ "foreign-types",
+ "libc",
+ "once_cell",
+ "openssl-macros",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-macros"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.87",
+]
+
 [[package]]
 name = "openssl-probe"
 version = "0.1.5"
@@ -8126,43 +7405,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
-name = "option-ext"
-version = "0.2.0"
+name = "openssl-src"
+version = "300.4.0+3.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
+checksum = "a709e02f2b4aca747929cca5ed248880847c650233cf8b8cdc48f40aaf4898a6"
+dependencies = [
+ "cc",
+]
 
 [[package]]
-name = "orchestra"
-version = "0.4.0"
+name = "openssl-sys"
+version = "0.9.104"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41f6bbacc8c189a3f2e45e0fd0436e5d97f194db888e721bdbc3973e7dbed4c2"
+checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741"
 dependencies = [
- "async-trait",
- "dyn-clonable",
- "futures 0.3.31",
- "futures-timer",
- "orchestra-proc-macro",
- "pin-project",
- "prioritized-metered-channel",
- "thiserror 1.0.69",
- "tracing",
+ "cc",
+ "libc",
+ "openssl-src",
+ "pkg-config",
+ "vcpkg",
 ]
 
 [[package]]
-name = "orchestra-proc-macro"
-version = "0.4.0"
+name = "option-ext"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7b1d40dd8f367db3c65bec8d3dd47d4a604ee8874480738f93191bddab4e0e0"
-dependencies = [
- "expander",
- "indexmap 2.7.1",
- "itertools 0.11.0",
- "petgraph",
- "proc-macro-crate 3.2.0",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
+checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
 
 [[package]]
 name = "overload"
@@ -8172,27 +7440,27 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
 
 [[package]]
 name = "pallet-alliance"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
  "frame-system",
  "log",
  "pallet-collective",
- "pallet-identity 29.0.0",
+ "pallet-identity 38.0.0",
  "parity-scale-codec",
  "scale-info",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-io",
  "sp-runtime",
 ]
 
 [[package]]
 name = "pallet-asset-conversion"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "20.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8209,8 +7477,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-asset-conversion-ops"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.6.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8227,10 +7495,9 @@ dependencies = [
 
 [[package]]
 name = "pallet-asset-conversion-tx-payment"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "20.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "frame-benchmarking",
  "frame-support",
  "frame-system",
  "pallet-asset-conversion",
@@ -8242,8 +7509,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-asset-rate"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8256,8 +7523,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-asset-tx-payment"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8273,8 +7540,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-assets"
-version = "29.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "40.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8289,8 +7556,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-assets-freezer"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.5.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8304,8 +7571,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-atomic-swap"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8318,8 +7585,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-aura"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8334,8 +7601,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-authority-discovery"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8369,8 +7636,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-authorship"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8382,8 +7649,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-babe"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8405,8 +7672,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-bags-list"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "aquamarine",
  "docify",
@@ -8421,13 +7688,13 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
 ]
 
 [[package]]
 name = "pallet-balances"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -8441,8 +7708,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-beefy"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8460,8 +7727,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-beefy-mmr"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "array-bytes",
  "binary-merkle-tree",
@@ -8485,8 +7752,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-bounties"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8502,8 +7769,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-bridge-grandpa"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-runtime",
@@ -8516,13 +7783,13 @@ dependencies = [
  "scale-info",
  "sp-consensus-grandpa",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "pallet-bridge-messages"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-messages",
@@ -8534,14 +7801,14 @@ dependencies = [
  "parity-scale-codec",
  "scale-info",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-trie",
 ]
 
 [[package]]
 name = "pallet-bridge-parachains"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-parachains",
@@ -8555,13 +7822,13 @@ dependencies = [
  "parity-scale-codec",
  "scale-info",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "pallet-bridge-relayers"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-header-chain",
  "bp-messages",
@@ -8579,13 +7846,13 @@ dependencies = [
  "scale-info",
  "sp-arithmetic",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "pallet-broker"
-version = "0.6.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -8619,8 +7886,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-child-bounties"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8637,8 +7904,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-collator-selection"
-version = "9.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "19.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8656,10 +7923,9 @@ dependencies = [
 
 [[package]]
 name = "pallet-collective"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "docify",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -8673,8 +7939,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-collective-content"
-version = "0.6.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8687,8 +7953,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-contracts"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitflags 1.3.2",
  "environmental",
@@ -8710,17 +7976,17 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
  "wasm-instrument",
- "wasmi 0.32.3",
+ "wasmi",
 ]
 
 [[package]]
 name = "pallet-contracts-mock-network"
-version = "3.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "14.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8745,7 +8011,7 @@ dependencies = [
  "sp-io",
  "sp-keystore",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "staging-xcm",
  "staging-xcm-builder",
  "staging-xcm-executor",
@@ -8754,29 +8020,30 @@ dependencies = [
 
 [[package]]
 name = "pallet-contracts-proc-macro"
-version = "18.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "23.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "pallet-contracts-uapi"
-version = "5.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "12.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitflags 1.3.2",
  "parity-scale-codec",
  "paste",
+ "polkavm-derive 0.9.1",
  "scale-info",
 ]
 
 [[package]]
 name = "pallet-conviction-voting"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "assert_matches",
  "frame-benchmarking",
@@ -8791,8 +8058,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-core-fellowship"
-version = "12.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "22.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8809,8 +8076,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-delegated-staking"
-version = "1.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "5.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8824,8 +8091,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-democracy"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8841,8 +8108,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-dev-mode"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "20.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -8919,7 +8186,7 @@ version = "1.0.0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -8944,8 +8211,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-election-provider-multi-phase"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -8966,8 +8233,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-election-provider-support-benchmarking"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -8979,8 +8246,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-elections-phragmen"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -8997,8 +8264,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-fast-unstake"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -9015,8 +8282,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-glutton"
-version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "24.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "blake2 0.10.6",
  "frame-benchmarking",
@@ -9033,8 +8300,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-grandpa"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9058,7 +8325,7 @@ name = "pallet-identity"
 version = "1.0.0"
 dependencies = [
  "base64 0.22.1",
- "bs58",
+ "bs58 0.5.1",
  "duniter-primitives",
  "ed25519-dalek",
  "frame-benchmarking",
@@ -9077,8 +8344,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-identity"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "enumflags2",
  "frame-benchmarking",
@@ -9093,8 +8360,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-im-online"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9112,8 +8379,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-indices"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9128,8 +8395,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-insecure-randomness-collective-flip"
-version = "16.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "26.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9141,8 +8408,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-lottery"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9171,8 +8438,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-membership"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9187,8 +8454,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-message-queue"
-version = "31.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "41.0.2"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "environmental",
  "frame-benchmarking",
@@ -9206,10 +8473,9 @@ dependencies = [
 
 [[package]]
 name = "pallet-migrations"
-version = "1.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "8.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "cfg-if",
  "docify",
  "frame-benchmarking",
  "frame-support",
@@ -9224,8 +8490,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-mixnet"
-version = "0.4.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.14.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9243,8 +8509,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-mmr"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9260,19 +8526,23 @@ dependencies = [
 
 [[package]]
 name = "pallet-multisig"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
  "log",
  "parity-scale-codec",
- "polkadot-sdk-frame",
  "scale-info",
+ "sp-io",
+ "sp-runtime",
 ]
 
 [[package]]
 name = "pallet-nft-fractionalization"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "21.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9287,8 +8557,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-nfts"
-version = "22.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "32.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "enumflags2",
  "frame-benchmarking",
@@ -9304,8 +8574,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-nfts-runtime-api"
-version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "24.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "pallet-nfts",
  "parity-scale-codec",
@@ -9314,8 +8584,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-nis"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9329,8 +8599,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-node-authorization"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9344,8 +8614,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-nomination-pools"
-version = "25.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "35.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9357,13 +8627,13 @@ dependencies = [
  "sp-io",
  "sp-runtime",
  "sp-staking",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
 ]
 
 [[package]]
 name = "pallet-nomination-pools-benchmarking"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "36.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -9376,14 +8646,14 @@ dependencies = [
  "parity-scale-codec",
  "scale-info",
  "sp-runtime",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
  "sp-staking",
 ]
 
 [[package]]
 name = "pallet-nomination-pools-runtime-api"
-version = "23.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "33.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "pallet-nomination-pools",
  "parity-scale-codec",
@@ -9407,8 +8677,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-offences"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9423,8 +8693,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-offences-benchmarking"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -9435,7 +8705,7 @@ dependencies = [
  "pallet-balances",
  "pallet-grandpa",
  "pallet-im-online",
- "pallet-offences 27.0.0",
+ "pallet-offences 37.0.0",
  "pallet-session",
  "pallet-staking",
  "parity-scale-codec",
@@ -9463,8 +8733,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-paged-list"
-version = "0.6.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -9480,8 +8750,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-parameters"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.9.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -9497,8 +8767,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-preimage"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9528,12 +8798,16 @@ dependencies = [
 
 [[package]]
 name = "pallet-proxy"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
  "parity-scale-codec",
- "polkadot-sdk-frame",
  "scale-info",
+ "sp-io",
+ "sp-runtime",
 ]
 
 [[package]]
@@ -9554,8 +8828,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-ranked-collective"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9572,8 +8846,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-recovery"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9586,8 +8860,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-referenda"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9603,8 +8877,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-remark"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9619,55 +8893,43 @@ dependencies = [
 
 [[package]]
 name = "pallet-revive"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.2.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitflags 1.3.2",
- "derive_more 0.99.18",
  "environmental",
- "ethereum-types 0.15.1",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
- "hex",
  "impl-trait-for-tuples",
- "jsonrpsee 0.24.7",
  "log",
  "pallet-balances",
  "pallet-revive-fixtures",
  "pallet-revive-proc-macro",
  "pallet-revive-uapi",
- "pallet-transaction-payment",
  "parity-scale-codec",
  "paste",
- "polkavm 0.13.0",
- "rlp 0.6.1",
+ "polkavm 0.10.0",
  "scale-info",
  "serde",
  "sp-api",
- "sp-arithmetic",
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-weights",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
- "subxt-signer",
 ]
 
 [[package]]
 name = "pallet-revive-fixtures"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.2.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "anyhow",
  "frame-system",
- "log",
  "parity-wasm",
- "polkavm-linker 0.14.0",
- "sp-core",
- "sp-io",
+ "polkavm-linker 0.10.0",
  "sp-runtime",
  "tempfile",
  "toml 0.8.19",
@@ -9675,8 +8937,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-revive-mock-network"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.2.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9700,7 +8962,7 @@ dependencies = [
  "sp-io",
  "sp-keystore",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "staging-xcm",
  "staging-xcm-builder",
  "staging-xcm-executor",
@@ -9709,30 +8971,30 @@ dependencies = [
 
 [[package]]
 name = "pallet-revive-proc-macro"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.1.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "pallet-revive-uapi"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.1.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitflags 1.3.2",
  "parity-scale-codec",
  "paste",
- "polkavm-derive 0.14.0",
+ "polkavm-derive 0.10.0",
  "scale-info",
 ]
 
 [[package]]
 name = "pallet-root-offences"
-version = "25.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "35.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9746,8 +9008,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-root-testing"
-version = "4.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "14.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9760,8 +9022,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-safe-mode"
-version = "9.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "19.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -9778,8 +9040,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-salary"
-version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "23.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9796,8 +9058,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-scheduler"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -9813,8 +9075,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-scored-pool"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9826,8 +9088,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-session"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9859,8 +9121,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-session-benchmarking"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9875,8 +9137,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-skip-feeless-payment"
-version = "3.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "13.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9906,8 +9168,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-society"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9923,8 +9185,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-staking"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-election-provider-support",
@@ -9944,8 +9206,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-staking-reward-fn"
-version = "19.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "22.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "log",
  "sp-arithmetic",
@@ -9953,8 +9215,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-staking-runtime-api"
-version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "24.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -9963,8 +9225,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-state-trie-migration"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "40.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9979,8 +9241,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-statement"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "20.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -9996,8 +9258,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-sudo"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -10011,8 +9273,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-timestamp"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -10024,14 +9286,14 @@ dependencies = [
  "sp-inherents",
  "sp-io",
  "sp-runtime",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-storage",
  "sp-timestamp",
 ]
 
 [[package]]
 name = "pallet-tips"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10048,10 +9310,9 @@ dependencies = [
 
 [[package]]
 name = "pallet-transaction-payment"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "frame-benchmarking",
  "frame-support",
  "frame-system",
  "parity-scale-codec",
@@ -10064,10 +9325,10 @@ dependencies = [
 
 [[package]]
 name = "pallet-transaction-payment-rpc"
-version = "30.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "41.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "pallet-transaction-payment-rpc-runtime-api",
  "parity-scale-codec",
  "sp-api",
@@ -10080,8 +9341,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-transaction-payment-rpc-runtime-api"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "pallet-transaction-payment",
  "parity-scale-codec",
@@ -10092,8 +9353,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-transaction-storage"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10111,15 +9372,14 @@ dependencies = [
 
 [[package]]
 name = "pallet-treasury"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
  "impl-trait-for-tuples",
- "log",
  "pallet-balances",
  "parity-scale-codec",
  "scale-info",
@@ -10130,8 +9390,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-tx-pause"
-version = "9.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "19.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -10147,8 +9407,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-uniques"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10195,23 +9455,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-utility"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "frame-benchmarking",
- "frame-support",
- "frame-system",
- "parity-scale-codec",
- "scale-info",
- "sp-core",
- "sp-io",
- "sp-runtime",
-]
-
-[[package]]
-name = "pallet-verify-signature"
-version = "1.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10221,13 +9466,12 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-weights",
 ]
 
 [[package]]
 name = "pallet-vesting"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10240,8 +9484,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-whitelist"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10254,13 +9498,14 @@ dependencies = [
 
 [[package]]
 name = "pallet-xcm"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bounded-collections",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
+ "log",
  "pallet-balances",
  "parity-scale-codec",
  "scale-info",
@@ -10277,8 +9522,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-xcm-benchmarks"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -10295,8 +9540,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-xcm-bridge-hub"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.13.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-messages",
  "bp-runtime",
@@ -10309,7 +9554,7 @@ dependencies = [
  "scale-info",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
  "staging-xcm-executor",
@@ -10317,8 +9562,8 @@ dependencies = [
 
 [[package]]
 name = "pallet-xcm-bridge-hub-router"
-version = "0.5.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.15.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bp-xcm-bridge-hub-router",
  "frame-benchmarking",
@@ -10329,15 +9574,15 @@ dependencies = [
  "scale-info",
  "sp-core",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
 ]
 
 [[package]]
 name = "parachains-common"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "18.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "cumulus-primitives-utility",
@@ -10366,8 +9611,8 @@ dependencies = [
 
 [[package]]
 name = "parachains-runtimes-test-utils"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-pallet-parachain-system",
  "cumulus-pallet-xcmp-queue",
@@ -10387,7 +9632,7 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "staging-parachain-info",
  "staging-xcm",
  "staging-xcm-executor",
@@ -10461,6 +9706,35 @@ dependencies = [
  "syn 1.0.109",
 ]
 
+[[package]]
+name = "parity-util-mem"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d32c34f4f5ca7f9196001c0aba5a1f9a5a12382c8944b8b0f90233282d1e8f8"
+dependencies = [
+ "cfg-if",
+ "ethereum-types",
+ "hashbrown 0.12.3",
+ "impl-trait-for-tuples",
+ "lru 0.8.1",
+ "parity-util-mem-derive",
+ "parking_lot 0.12.3",
+ "primitive-types 0.12.2",
+ "smallvec",
+ "winapi",
+]
+
+[[package]]
+name = "parity-util-mem-derive"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2"
+dependencies = [
+ "proc-macro2",
+ "syn 1.0.109",
+ "synstructure 0.12.6",
+]
+
 [[package]]
 name = "parity-wasm"
 version = "0.45.0"
@@ -10516,7 +9790,7 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.5.8",
+ "redox_syscall 0.5.7",
  "smallvec",
  "windows-targets 0.52.6",
 ]
@@ -10598,20 +9872,20 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "pest"
-version = "2.7.15"
+version = "2.7.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc"
+checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442"
 dependencies = [
  "memchr",
- "thiserror 2.0.11",
+ "thiserror 1.0.69",
  "ucd-trie",
 ]
 
 [[package]]
 name = "pest_derive"
-version = "2.7.15"
+version = "2.7.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "816518421cfc6887a0d62bf441b6ffb4536fcc926395a69e1a85852d4363f57e"
+checksum = "d214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd"
 dependencies = [
  "pest",
  "pest_generator",
@@ -10619,22 +9893,22 @@ dependencies = [
 
 [[package]]
 name = "pest_generator"
-version = "2.7.15"
+version = "2.7.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d1396fd3a870fc7838768d171b4616d5c91f6cc25e377b673d714567d99377b"
+checksum = "eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e"
 dependencies = [
  "pest",
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "pest_meta"
-version = "2.7.15"
+version = "2.7.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1e58089ea25d717bfd31fb534e4f3afcc2cc569c70de3e239778991ea3b7dea"
+checksum = "b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d"
 dependencies = [
  "once_cell",
  "pest",
@@ -10648,34 +9922,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
 dependencies = [
  "fixedbitset",
- "indexmap 2.7.1",
+ "indexmap 2.6.0",
 ]
 
 [[package]]
 name = "pin-project"
-version = "1.1.8"
+version = "1.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916"
+checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95"
 dependencies = [
  "pin-project-internal",
 ]
 
 [[package]]
 name = "pin-project-internal"
-version = "1.1.8"
+version = "1.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb"
+checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.16"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b"
+checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff"
 
 [[package]]
 name = "pin-utils"
@@ -10732,8 +10006,8 @@ dependencies = [
 
 [[package]]
 name = "polkadot-core-primitives"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "15.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -10741,131 +10015,10 @@ dependencies = [
  "sp-runtime",
 ]
 
-[[package]]
-name = "polkadot-node-metrics"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "bs58",
- "futures 0.3.31",
- "futures-timer",
- "log",
- "parity-scale-codec",
- "polkadot-primitives",
- "prioritized-metered-channel",
- "sc-cli",
- "sc-service",
- "sc-tracing",
- "substrate-prometheus-endpoint",
- "tracing-gum",
-]
-
-[[package]]
-name = "polkadot-node-network-protocol"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "async-channel 1.9.0",
- "async-trait",
- "bitvec",
- "derive_more 0.99.18",
- "fatality",
- "futures 0.3.31",
- "hex",
- "parity-scale-codec",
- "polkadot-node-primitives",
- "polkadot-primitives",
- "rand",
- "sc-authority-discovery",
- "sc-network",
- "sc-network-types",
- "sp-runtime",
- "strum 0.26.3",
- "thiserror 1.0.69",
- "tracing-gum",
-]
-
-[[package]]
-name = "polkadot-node-primitives"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "bitvec",
- "bounded-vec",
- "futures 0.3.31",
- "futures-timer",
- "parity-scale-codec",
- "polkadot-parachain-primitives",
- "polkadot-primitives",
- "sc-keystore",
- "schnorrkel",
- "serde",
- "sp-application-crypto",
- "sp-consensus-babe",
- "sp-consensus-slots",
- "sp-core",
- "sp-keystore",
- "sp-maybe-compressed-blob",
- "sp-runtime",
- "thiserror 1.0.69",
- "zstd 0.12.4",
-]
-
-[[package]]
-name = "polkadot-node-subsystem-types"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "async-trait",
- "bitvec",
- "derive_more 0.99.18",
- "fatality",
- "futures 0.3.31",
- "orchestra",
- "polkadot-node-network-protocol",
- "polkadot-node-primitives",
- "polkadot-primitives",
- "polkadot-statement-table",
- "sc-client-api",
- "sc-network",
- "sc-network-types",
- "sc-transaction-pool-api",
- "smallvec",
- "sp-api",
- "sp-authority-discovery",
- "sp-blockchain",
- "sp-consensus-babe",
- "sp-runtime",
- "substrate-prometheus-endpoint",
- "thiserror 1.0.69",
-]
-
-[[package]]
-name = "polkadot-overseer"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "async-trait",
- "futures 0.3.31",
- "futures-timer",
- "orchestra",
- "parking_lot 0.12.3",
- "polkadot-node-metrics",
- "polkadot-node-network-protocol",
- "polkadot-node-primitives",
- "polkadot-node-subsystem-types",
- "polkadot-primitives",
- "sc-client-api",
- "sp-api",
- "sp-core",
- "tikv-jemalloc-ctl",
- "tracing-gum",
-]
-
 [[package]]
 name = "polkadot-parachain-primitives"
-version = "6.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "14.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bounded-collections",
  "derive_more 0.99.18",
@@ -10880,8 +10033,8 @@ dependencies = [
 
 [[package]]
 name = "polkadot-primitives"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "16.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitvec",
  "hex-literal",
@@ -10902,14 +10055,12 @@ dependencies = [
  "sp-keystore",
  "sp-runtime",
  "sp-staking",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "thiserror 1.0.69",
 ]
 
 [[package]]
 name = "polkadot-runtime-common"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitvec",
  "frame-benchmarking",
@@ -10925,7 +10076,7 @@ dependencies = [
  "pallet-broker",
  "pallet-election-provider-multi-phase",
  "pallet-fast-unstake",
- "pallet-identity 29.0.0",
+ "pallet-identity 38.0.0",
  "pallet-session",
  "pallet-staking",
  "pallet-staking-reward-fn",
@@ -10945,7 +10096,6 @@ dependencies = [
  "sp-core",
  "sp-inherents",
  "sp-io",
- "sp-keyring",
  "sp-npos-elections",
  "sp-runtime",
  "sp-session",
@@ -10958,20 +10108,20 @@ dependencies = [
 
 [[package]]
 name = "polkadot-runtime-metrics"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "bs58",
+ "bs58 0.5.1",
  "frame-benchmarking",
  "parity-scale-codec",
  "polkadot-primitives",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
 ]
 
 [[package]]
 name = "polkadot-runtime-parachains"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bitflags 1.3.2",
  "bitvec",
@@ -11011,15 +10161,15 @@ dependencies = [
  "sp-runtime",
  "sp-session",
  "sp-staking",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-executor",
 ]
 
 [[package]]
 name = "polkadot-sdk"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.7.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "asset-test-utils",
  "assets-common",
@@ -11105,12 +10255,12 @@ dependencies = [
  "pallet-fast-unstake",
  "pallet-glutton",
  "pallet-grandpa",
- "pallet-identity 29.0.0",
+ "pallet-identity 38.0.0",
  "pallet-im-online",
  "pallet-indices",
  "pallet-insecure-randomness-collective-flip",
  "pallet-lottery",
- "pallet-membership 28.0.0",
+ "pallet-membership 38.0.0",
  "pallet-message-queue",
  "pallet-migrations",
  "pallet-mixnet",
@@ -11124,7 +10274,7 @@ dependencies = [
  "pallet-nomination-pools",
  "pallet-nomination-pools-benchmarking",
  "pallet-nomination-pools-runtime-api",
- "pallet-offences 27.0.0",
+ "pallet-offences 37.0.0",
  "pallet-offences-benchmarking",
  "pallet-paged-list",
  "pallet-parameters",
@@ -11144,7 +10294,7 @@ dependencies = [
  "pallet-scheduler",
  "pallet-scored-pool",
  "pallet-session",
- "pallet-session-benchmarking 28.0.0",
+ "pallet-session-benchmarking 38.0.0",
  "pallet-skip-feeless-payment",
  "pallet-society",
  "pallet-staking",
@@ -11162,7 +10312,6 @@ dependencies = [
  "pallet-tx-pause",
  "pallet-uniques",
  "pallet-utility",
- "pallet-verify-signature",
  "pallet-vesting",
  "pallet-whitelist",
  "pallet-xcm",
@@ -11209,10 +10358,10 @@ dependencies = [
  "sp-consensus-slots",
  "sp-core",
  "sp-core-hashing",
- "sp-crypto-ec-utils 0.10.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-ec-utils",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "sp-debug-derive",
+ "sp-externalities",
  "sp-genesis-builder",
  "sp-inherents",
  "sp-io",
@@ -11224,20 +10373,20 @@ dependencies = [
  "sp-npos-elections",
  "sp-offchain",
  "sp-runtime",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
  "sp-session",
  "sp-staking",
  "sp-state-machine",
  "sp-statement-store",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
+ "sp-storage",
  "sp-timestamp",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "sp-transaction-pool",
  "sp-transaction-storage-proof",
  "sp-trie",
  "sp-version",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-wasm-interface",
  "sp-weights",
  "staging-parachain-info",
  "staging-xcm",
@@ -11250,8 +10399,8 @@ dependencies = [
 
 [[package]]
 name = "polkadot-sdk-frame"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.7.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -11270,29 +10419,16 @@ dependencies = [
  "sp-consensus-aura",
  "sp-consensus-grandpa",
  "sp-core",
- "sp-genesis-builder",
  "sp-inherents",
  "sp-io",
- "sp-keyring",
  "sp-offchain",
  "sp-runtime",
  "sp-session",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-storage",
  "sp-transaction-pool",
  "sp-version",
 ]
 
-[[package]]
-name = "polkadot-statement-table"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "parity-scale-codec",
- "polkadot-primitives",
- "sp-core",
- "tracing-gum",
-]
-
 [[package]]
 name = "polkavm"
 version = "0.9.3"
@@ -11308,15 +10444,15 @@ dependencies = [
 
 [[package]]
 name = "polkavm"
-version = "0.13.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57e79a14b15ed38cb5b9a1e38d02e933f19e3d180ae5b325fed606c5e5b9177e"
+checksum = "b7ec0c5935f2eff23cfc4653002f4f8d12b37f87a720e0631282d188c32089d6"
 dependencies = [
  "libc",
  "log",
- "polkavm-assembler 0.13.0",
- "polkavm-common 0.13.0",
- "polkavm-linux-raw 0.13.0",
+ "polkavm-assembler 0.10.0",
+ "polkavm-common 0.10.0",
+ "polkavm-linux-raw 0.10.0",
 ]
 
 [[package]]
@@ -11330,9 +10466,9 @@ dependencies = [
 
 [[package]]
 name = "polkavm-assembler"
-version = "0.13.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e8da55465000feb0a61bbf556ed03024db58f3420eca37721fc726b3b2136bf"
+checksum = "d8e4fd5a43100bf1afe9727b8130d01f966f5cfc9144d5604b21e795c2bcd80e"
 dependencies = [
  "log",
 ]
@@ -11348,20 +10484,14 @@ dependencies = [
 
 [[package]]
 name = "polkavm-common"
-version = "0.13.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "084b4339aae7dfdaaa5aa7d634110afd95970e0737b6fb2a0cb10db8b56b753c"
+checksum = "0097b48bc0bedf9f3f537ce8f37e8f1202d8d83f9b621bdb21ff2c59b9097c50"
 dependencies = [
  "log",
- "polkavm-assembler 0.13.0",
+ "polkavm-assembler 0.10.0",
 ]
 
-[[package]]
-name = "polkavm-common"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711952a783e9c5ad407cdacb1ed147f36d37c5d43417c1091d86456d2999417b"
-
 [[package]]
 name = "polkavm-derive"
 version = "0.9.1"
@@ -11373,11 +10503,11 @@ dependencies = [
 
 [[package]]
 name = "polkavm-derive"
-version = "0.14.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4832a0aebf6cefc988bb7b2d74ea8c86c983164672e2fc96300f356a1babfc1"
+checksum = "0dcc701385c08c31bdb0569f0c51a290c580d892fa77f1dd88a7352a62679ecf"
 dependencies = [
- "polkavm-derive-impl-macro 0.14.0",
+ "polkavm-derive-impl-macro 0.10.0",
 ]
 
 [[package]]
@@ -11389,19 +10519,19 @@ dependencies = [
  "polkavm-common 0.9.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "polkavm-derive-impl"
-version = "0.14.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e339fc7c11310fe5adf711d9342278ac44a75c9784947937cce12bd4f30842f2"
+checksum = "7855353a5a783dd5d09e3b915474bddf66575f5a3cf45dec8d1c5e051ba320dc"
 dependencies = [
- "polkavm-common 0.14.0",
+ "polkavm-common 0.10.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -11411,17 +10541,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8ba81f7b5faac81e528eb6158a6f3c9e0bb1008e0ffa19653bc8dea925ecb429"
 dependencies = [
  "polkavm-derive-impl 0.9.0",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "polkavm-derive-impl-macro"
-version = "0.14.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b569754b15060d03000c09e3bf11509d527f60b75d79b4c30c3625b5071d9702"
+checksum = "9324fe036de37c17829af233b46ef6b5562d4a0c09bb7fdb9f8378856dee30cf"
 dependencies = [
- "polkavm-derive-impl 0.14.0",
- "syn 2.0.96",
+ "polkavm-derive-impl 0.10.0",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -11441,15 +10571,15 @@ dependencies = [
 
 [[package]]
 name = "polkavm-linker"
-version = "0.14.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0959ac3b0f4fd5caf5c245c637705f19493efe83dba31a83bbba928b93b0116a"
+checksum = "5d704edfe7bdcc876784f19436d53d515b65eb07bc9a0fae77085d552c2dbbb5"
 dependencies = [
- "gimli 0.31.1",
+ "gimli 0.28.1",
  "hashbrown 0.14.5",
  "log",
- "object 0.36.7",
- "polkavm-common 0.14.0",
+ "object 0.36.5",
+ "polkavm-common 0.10.0",
  "regalloc2 0.9.3",
  "rustc-demangle",
 ]
@@ -11462,9 +10592,9 @@ checksum = "26e85d3456948e650dff0cfc85603915847faf893ed1e66b020bb82ef4557120"
 
 [[package]]
 name = "polkavm-linux-raw"
-version = "0.13.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "686c4dd9c9c16cc22565b51bdbb269792318d0fd2e6b966b5f6c788534cad0e9"
+checksum = "26e45fa59c7e1bb12ef5289080601e9ec9b31435f6e32800a5c90c132453d126"
 
 [[package]]
 name = "polling"
@@ -11476,7 +10606,7 @@ dependencies = [
  "concurrent-queue",
  "hermit-abi 0.4.0",
  "pin-project-lite",
- "rustix 0.38.43",
+ "rustix 0.38.40",
  "tracing",
  "windows-sys 0.59.0",
 ]
@@ -11506,9 +10636,9 @@ dependencies = [
 
 [[package]]
 name = "portable-atomic"
-version = "1.10.0"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6"
+checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2"
 
 [[package]]
 name = "portpicker"
@@ -11550,9 +10680,9 @@ dependencies = [
 
 [[package]]
 name = "predicates"
-version = "3.1.3"
+version = "3.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5d19ee57562043d37e82899fade9a22ebab7be9cef5026b07fda9cdd4293573"
+checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97"
 dependencies = [
  "anstyle",
  "predicates-core",
@@ -11560,15 +10690,15 @@ dependencies = [
 
 [[package]]
 name = "predicates-core"
-version = "1.0.9"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa"
+checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931"
 
 [[package]]
 name = "predicates-tree"
-version = "1.0.12"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c"
+checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13"
 dependencies = [
  "predicates-core",
  "termtree",
@@ -11576,12 +10706,22 @@ dependencies = [
 
 [[package]]
 name = "prettyplease"
-version = "0.2.29"
+version = "0.1.25"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86"
+dependencies = [
+ "proc-macro2",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "prettyplease"
+version = "0.2.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6924ced06e1f7dfe3fa48d57b9f74f55d8915f5036121bef647ef4b204895fac"
+checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033"
 dependencies = [
  "proc-macro2",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -11592,6 +10732,7 @@ checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2"
 dependencies = [
  "fixed-hash",
  "impl-codec 0.6.0",
+ "impl-rlp",
  "impl-serde 0.4.0",
  "scale-info",
  "uint 0.9.5",
@@ -11605,29 +10746,11 @@ checksum = "d15600a7d856470b7d278b3fe0e311fe28c2526348549f8ef2ff7db3299c87f5"
 dependencies = [
  "fixed-hash",
  "impl-codec 0.7.0",
- "impl-num-traits",
- "impl-rlp",
  "impl-serde 0.5.0",
  "scale-info",
  "uint 0.10.0",
 ]
 
-[[package]]
-name = "prioritized-metered-channel"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a172e6cc603231f2cf004232eabcecccc0da53ba576ab286ef7baa0cfc7927ad"
-dependencies = [
- "coarsetime",
- "crossbeam-queue",
- "derive_more 0.99.18",
- "futures 0.3.31",
- "futures-timer",
- "nanorand",
- "thiserror 1.0.69",
- "tracing",
-]
-
 [[package]]
 name = "proc-macro-crate"
 version = "1.1.3"
@@ -11690,7 +10813,7 @@ dependencies = [
  "proc-macro-error-attr2",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -11701,7 +10824,7 @@ checksum = "3d1eaa7fa0aa1929ffdf7eeb6eac234dde6268914a14ad44d23521ab6a9b258e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -11712,14 +10835,14 @@ checksum = "834da187cfe638ae8abb0203f0b33e5ccdb02a28e7199f2f47b3e2754f50edca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.93"
+version = "1.0.89"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99"
+checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
 dependencies = [
  "unicode-ident",
 ]
@@ -11758,7 +10881,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -11769,7 +10892,7 @@ checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d"
 dependencies = [
  "bit-set",
  "bit-vec",
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "lazy_static",
  "num-traits 0.2.19",
  "rand",
@@ -11781,6 +10904,16 @@ dependencies = [
  "unarray",
 ]
 
+[[package]]
+name = "prost"
+version = "0.11.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd"
+dependencies = [
+ "bytes",
+ "prost-derive 0.11.9",
+]
+
 [[package]]
 name = "prost"
 version = "0.12.6"
@@ -11792,68 +10925,90 @@ dependencies = [
 ]
 
 [[package]]
-name = "prost"
-version = "0.13.4"
+name = "prost-build"
+version = "0.11.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c0fef6c4230e4ccf618a35c59d7ede15dea37de8427500f50aff708806e42ec"
+checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270"
 dependencies = [
  "bytes",
- "prost-derive 0.13.4",
+ "heck 0.4.1",
+ "itertools 0.10.5",
+ "lazy_static",
+ "log",
+ "multimap 0.8.3",
+ "petgraph",
+ "prettyplease 0.1.25",
+ "prost 0.11.9",
+ "prost-types 0.11.9",
+ "regex",
+ "syn 1.0.109",
+ "tempfile",
+ "which",
 ]
 
 [[package]]
 name = "prost-build"
-version = "0.13.4"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0f3e5beed80eb580c68e2c600937ac2c4eedabdfd5ef1e5b7ea4f3fba84497b"
+checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4"
 dependencies = [
+ "bytes",
  "heck 0.5.0",
- "itertools 0.13.0",
+ "itertools 0.12.1",
  "log",
- "multimap",
+ "multimap 0.10.0",
  "once_cell",
  "petgraph",
- "prettyplease",
- "prost 0.13.4",
- "prost-types",
+ "prettyplease 0.2.25",
+ "prost 0.12.6",
+ "prost-types 0.12.6",
  "regex",
- "syn 2.0.96",
+ "syn 2.0.87",
  "tempfile",
 ]
 
 [[package]]
 name = "prost-derive"
-version = "0.12.6"
+version = "0.11.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
+checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
 dependencies = [
  "anyhow",
- "itertools 0.12.1",
+ "itertools 0.10.5",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "prost-derive"
-version = "0.13.4"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "157c5a9d7ea5c2ed2d9fb8f495b64759f7816c7eaea54ba3978f0d63000162e3"
+checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
 dependencies = [
  "anyhow",
- "itertools 0.13.0",
+ "itertools 0.12.1",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "prost-types"
-version = "0.13.4"
+version = "0.11.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13"
+dependencies = [
+ "prost 0.11.9",
+]
+
+[[package]]
+name = "prost-types"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc2f1e56baa61e93533aebc21af4d2134b70f66275e0fcdf3cbe43d77ff7e8fc"
+checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0"
 dependencies = [
- "prost 0.13.4",
+ "prost 0.12.6",
 ]
 
 [[package]]
@@ -11867,9 +11022,9 @@ dependencies = [
 
 [[package]]
 name = "quanta"
-version = "0.12.5"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e"
+checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5"
 dependencies = [
  "crossbeam-utils",
  "libc",
@@ -11908,6 +11063,24 @@ dependencies = [
  "unsigned-varint 0.7.2",
 ]
 
+[[package]]
+name = "quinn"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2e8b432585672228923edbbf64b8b12c14e1112f62e88737655b4a083dbcd78e"
+dependencies = [
+ "bytes",
+ "pin-project-lite",
+ "quinn-proto 0.9.6",
+ "quinn-udp 0.3.2",
+ "rustc-hash 1.1.0",
+ "rustls 0.20.9",
+ "thiserror 1.0.69",
+ "tokio",
+ "tracing",
+ "webpki",
+]
+
 [[package]]
 name = "quinn"
 version = "0.10.2"
@@ -11935,15 +11108,33 @@ dependencies = [
  "bytes",
  "pin-project-lite",
  "quinn-proto 0.11.9",
- "quinn-udp 0.5.9",
- "rustc-hash 2.1.0",
- "rustls 0.23.21",
- "socket2 0.5.8",
- "thiserror 2.0.11",
+ "quinn-udp 0.5.7",
+ "rustc-hash 2.0.0",
+ "rustls 0.23.16",
+ "socket2 0.5.7",
+ "thiserror 2.0.3",
  "tokio",
  "tracing",
 ]
 
+[[package]]
+name = "quinn-proto"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94b0b33c13a79f669c85defaf4c275dc86a0c0372807d0ca3d78e0bb87274863"
+dependencies = [
+ "bytes",
+ "rand",
+ "ring 0.16.20",
+ "rustc-hash 1.1.0",
+ "rustls 0.20.9",
+ "slab",
+ "thiserror 1.0.69",
+ "tinyvec",
+ "tracing",
+ "webpki",
+]
+
 [[package]]
 name = "quinn-proto"
 version = "0.10.6"
@@ -11971,16 +11162,29 @@ dependencies = [
  "getrandom",
  "rand",
  "ring 0.17.8",
- "rustc-hash 2.1.0",
- "rustls 0.23.21",
+ "rustc-hash 2.0.0",
+ "rustls 0.23.16",
  "rustls-pki-types",
  "slab",
- "thiserror 2.0.11",
+ "thiserror 2.0.3",
  "tinyvec",
  "tracing",
  "web-time",
 ]
 
+[[package]]
+name = "quinn-udp"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4"
+dependencies = [
+ "libc",
+ "quinn-proto 0.9.6",
+ "socket2 0.4.10",
+ "tracing",
+ "windows-sys 0.42.0",
+]
+
 [[package]]
 name = "quinn-udp"
 version = "0.4.1"
@@ -11989,30 +11193,30 @@ checksum = "055b4e778e8feb9f93c4e439f71dc2156ef13360b432b799e179a8c4cdf0b1d7"
 dependencies = [
  "bytes",
  "libc",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tracing",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "quinn-udp"
-version = "0.5.9"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904"
+checksum = "7d5a626c6807713b15cac82a6acaccd6043c9a5408c24baae07611fec3f243da"
 dependencies = [
  "cfg_aliases 0.2.1",
  "libc",
  "once_cell",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tracing",
  "windows-sys 0.59.0",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.38"
+version = "1.0.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc"
+checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
 dependencies = [
  "proc-macro2",
 ]
@@ -12083,11 +11287,11 @@ dependencies = [
 
 [[package]]
 name = "raw-cpuid"
-version = "11.3.0"
+version = "11.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6928fa44c097620b706542d428957635951bade7143269085389d42c8a4927e"
+checksum = "1ab240315c661615f2ee9f0f2cd32d5a7343a84d5ebcccb99d46e6637565e7b0"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
 ]
 
 [[package]]
@@ -12128,22 +11332,6 @@ dependencies = [
  "yasna",
 ]
 
-[[package]]
-name = "reconnecting-jsonrpsee-ws-client"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06fa4f17e09edfc3131636082faaec633c7baa269396b4004040bc6c52f49f65"
-dependencies = [
- "cfg_aliases 0.2.1",
- "finito",
- "futures 0.3.31",
- "jsonrpsee 0.23.2",
- "serde_json",
- "thiserror 1.0.69",
- "tokio",
- "tracing",
-]
-
 [[package]]
 name = "redox_syscall"
 version = "0.2.16"
@@ -12155,11 +11343,11 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.5.8"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834"
+checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
 ]
 
 [[package]]
@@ -12190,7 +11378,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -12270,19 +11458,19 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
 
 [[package]]
 name = "reqwest"
-version = "0.12.12"
+version = "0.12.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da"
+checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f"
 dependencies = [
  "base64 0.22.1",
  "bytes",
  "futures-core",
  "futures-util",
- "http 1.2.0",
+ "http 1.1.0",
  "http-body 1.0.1",
  "http-body-util",
- "hyper 1.5.2",
- "hyper-rustls 0.27.5",
+ "hyper 1.5.0",
+ "hyper-rustls 0.27.3",
  "hyper-util",
  "ipnet",
  "js-sys",
@@ -12292,7 +11480,7 @@ dependencies = [
  "percent-encoding",
  "pin-project-lite",
  "quinn 0.11.6",
- "rustls 0.23.21",
+ "rustls 0.23.16",
  "rustls-pemfile 2.2.0",
  "rustls-pki-types",
  "serde",
@@ -12300,14 +11488,13 @@ dependencies = [
  "serde_urlencoded",
  "sync_wrapper",
  "tokio",
- "tokio-rustls 0.26.1",
- "tower 0.5.2",
+ "tokio-rustls 0.26.0",
  "tower-service",
  "url",
  "wasm-bindgen",
  "wasm-bindgen-futures",
  "web-sys",
- "webpki-roots 0.26.7",
+ "webpki-roots 0.26.6",
  "windows-registry",
 ]
 
@@ -12331,23 +11518,6 @@ dependencies = [
  "subtle 2.6.1",
 ]
 
-[[package]]
-name = "ring"
-version = "0.1.0"
-source = "git+https://github.com/w3f/ring-proof?rev=665f5f5#665f5f51af5734c7b6d90b985dd6861d4c5b4752"
-dependencies = [
- "ark-ec 0.4.2",
- "ark-ff 0.4.2",
- "ark-poly 0.4.2",
- "ark-serialize 0.4.2",
- "ark-std 0.4.0",
- "arrayvec 0.7.6",
- "blake2 0.10.6",
- "common",
- "fflonk",
- "merlin",
-]
-
 [[package]]
 name = "ring"
 version = "0.16.20"
@@ -12378,15 +11548,6 @@ dependencies = [
  "windows-sys 0.52.0",
 ]
 
-[[package]]
-name = "ripemd"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f"
-dependencies = [
- "digest 0.10.7",
-]
-
 [[package]]
 name = "rlp"
 version = "0.5.2"
@@ -12397,20 +11558,10 @@ dependencies = [
  "rustc-hex",
 ]
 
-[[package]]
-name = "rlp"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa24e92bb2a83198bb76d661a71df9f7076b8c420b8696e4d3d97d50d94479e3"
-dependencies = [
- "bytes",
- "rustc-hex",
-]
-
 [[package]]
 name = "rococo-runtime-constants"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -12442,18 +11593,15 @@ dependencies = [
 
 [[package]]
 name = "rtnetlink"
-version = "0.13.1"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a552eb82d19f38c3beed3f786bd23aa434ceb9ac43ab44419ca6d67a7e186c0"
+checksum = "322c53fd76a18698f1c27381d58091de3a043d356aa5bd0d510608b565f469a0"
 dependencies = [
  "futures 0.3.31",
  "log",
- "netlink-packet-core",
  "netlink-packet-route",
- "netlink-packet-utils",
  "netlink-proto",
- "netlink-sys",
- "nix 0.26.4",
+ "nix 0.24.3",
  "thiserror 1.0.69",
  "tokio",
 ]
@@ -12470,24 +11618,22 @@ dependencies = [
 
 [[package]]
 name = "ruint"
-version = "1.12.4"
+version = "1.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f"
+checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286"
 dependencies = [
  "alloy-rlp",
  "ark-ff 0.3.0",
  "ark-ff 0.4.2",
  "bytes",
- "fastrlp 0.3.1",
- "fastrlp 0.4.0",
+ "fastrlp",
  "num-bigint",
- "num-integer",
  "num-traits 0.2.19",
  "parity-scale-codec",
  "primitive-types 0.12.2",
  "proptest",
  "rand",
- "rlp 0.5.2",
+ "rlp",
  "ruint-macro",
  "serde",
  "valuable",
@@ -12514,9 +11660,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
 name = "rustc-hash"
-version = "2.1.0"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497"
+checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152"
 
 [[package]]
 name = "rustc-hex"
@@ -12548,7 +11694,7 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
 dependencies = [
- "semver 1.0.25",
+ "semver 1.0.23",
 ]
 
 [[package]]
@@ -12576,15 +11722,15 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.43"
+version = "0.38.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a78891ee6bf2340288408954ac787aa063d8e8817e9f53abb37c695c6d834ef6"
+checksum = "99e4ea3e1cdc4b559b8e5650f9c8e5998e3e5c1343b4eaf034565f32318d63c0"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "errno",
  "libc",
- "linux-raw-sys 0.4.15",
- "windows-sys 0.59.0",
+ "linux-raw-sys 0.4.14",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -12612,23 +11758,9 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.22.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
-dependencies = [
- "log",
- "ring 0.17.8",
- "rustls-pki-types",
- "rustls-webpki 0.102.8",
- "subtle 2.6.1",
- "zeroize",
-]
-
-[[package]]
-name = "rustls"
-version = "0.23.21"
+version = "0.23.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f287924602bf649d949c63dc8ac8b235fa5387d394020705b80c4eb597ce5b8"
+checksum = "eee87ff5d9b36712a58574e12e9f0ea80f915a5b0ac518d322b24a465617925e"
 dependencies = [
  "log",
  "once_cell",
@@ -12648,7 +11780,7 @@ dependencies = [
  "openssl-probe",
  "rustls-pemfile 1.0.4",
  "schannel",
- "security-framework 2.11.1",
+ "security-framework",
 ]
 
 [[package]]
@@ -12661,19 +11793,7 @@ dependencies = [
  "rustls-pemfile 2.2.0",
  "rustls-pki-types",
  "schannel",
- "security-framework 2.11.1",
-]
-
-[[package]]
-name = "rustls-native-certs"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3"
-dependencies = [
- "openssl-probe",
- "rustls-pki-types",
- "schannel",
- "security-framework 3.2.0",
+ "security-framework",
 ]
 
 [[package]]
@@ -12696,9 +11816,9 @@ dependencies = [
 
 [[package]]
 name = "rustls-pki-types"
-version = "1.10.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37"
+checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b"
 dependencies = [
  "web-time",
 ]
@@ -12709,18 +11829,18 @@ version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "afbb878bdfdf63a336a5e63561b1835e7a8c91524f51621db870169eac84b490"
 dependencies = [
- "core-foundation 0.9.4",
+ "core-foundation",
  "core-foundation-sys",
  "jni",
  "log",
  "once_cell",
- "rustls 0.23.21",
+ "rustls 0.23.16",
  "rustls-native-certs 0.7.3",
  "rustls-platform-verifier-android",
  "rustls-webpki 0.102.8",
- "security-framework 2.11.1",
+ "security-framework",
  "security-framework-sys",
- "webpki-roots 0.26.7",
+ "webpki-roots 0.26.6",
  "winapi",
 ]
 
@@ -12753,9 +11873,9 @@ dependencies = [
 
 [[package]]
 name = "rustversion"
-version = "1.0.19"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4"
+checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248"
 
 [[package]]
 name = "rusty-fork"
@@ -12769,17 +11889,6 @@ dependencies = [
  "wait-timeout",
 ]
 
-[[package]]
-name = "ruzstd"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58c4eb8a81997cf040a091d1f7e1938aeab6749d3a0dfa73af43cdc32393483d"
-dependencies = [
- "byteorder",
- "derive_more 0.99.18",
- "twox-hash",
-]
-
 [[package]]
 name = "ruzstd"
 version = "0.6.0"
@@ -12818,9 +11927,9 @@ dependencies = [
 
 [[package]]
 name = "safe_arch"
-version = "0.7.4"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b02de82ddbe1b636e6170c21be622223aea188ef2e139be0a5b219ec215323"
+checksum = "c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a"
 dependencies = [
  "bytemuck",
 ]
@@ -12836,49 +11945,19 @@ dependencies = [
 
 [[package]]
 name = "sc-allocator"
-version = "23.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "29.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "log",
  "sp-core",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-wasm-interface",
  "thiserror 1.0.69",
 ]
 
 [[package]]
-name = "sc-authority-discovery"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "async-trait",
- "futures 0.3.31",
- "futures-timer",
- "ip_network",
- "libp2p",
- "linked_hash_set",
- "log",
- "multihash 0.19.3",
- "parity-scale-codec",
- "prost 0.12.6",
- "prost-build",
- "rand",
- "sc-client-api",
- "sc-network",
- "sc-network-types",
- "sp-api",
- "sp-authority-discovery",
- "sp-blockchain",
- "sp-core",
- "sp-keystore",
- "sp-runtime",
- "substrate-prometheus-endpoint",
- "thiserror 1.0.69",
-]
-
-[[package]]
-name = "sc-basic-authorship"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+name = "sc-basic-authorship"
+version = "0.45.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "futures 0.3.31",
  "futures-timer",
@@ -12899,8 +11978,8 @@ dependencies = [
 
 [[package]]
 name = "sc-block-builder"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.42.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -12914,8 +11993,8 @@ dependencies = [
 
 [[package]]
 name = "sc-chain-spec"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "docify",
@@ -12931,29 +12010,29 @@ dependencies = [
  "serde_json",
  "sp-blockchain",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-genesis-builder",
  "sp-io",
  "sp-runtime",
  "sp-state-machine",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
 ]
 
 [[package]]
 name = "sc-chain-spec-derive"
-version = "11.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "12.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sc-cli"
-version = "0.36.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.47.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "chrono",
@@ -12977,7 +12056,6 @@ dependencies = [
  "sc-service",
  "sc-telemetry",
  "sc-tracing",
- "sc-transaction-pool",
  "sc-utils",
  "serde",
  "serde_json",
@@ -12994,8 +12072,8 @@ dependencies = [
 
 [[package]]
 name = "sc-client-api"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "fnv",
  "futures 0.3.31",
@@ -13010,19 +12088,19 @@ dependencies = [
  "sp-consensus",
  "sp-core",
  "sp-database",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-runtime",
  "sp-state-machine",
  "sp-statement-store",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-storage",
  "sp-trie",
  "substrate-prometheus-endpoint",
 ]
 
 [[package]]
 name = "sc-client-db"
-version = "0.35.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "hash-db",
  "kvdb",
@@ -13046,8 +12124,8 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "futures 0.3.31",
@@ -13070,8 +12148,8 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-aura"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.45.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "futures 0.3.31",
@@ -13099,8 +12177,8 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-babe"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.45.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "fork-tree",
@@ -13125,7 +12203,7 @@ dependencies = [
  "sp-consensus-babe",
  "sp-consensus-slots",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-inherents",
  "sp-keystore",
  "sp-runtime",
@@ -13135,11 +12213,11 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-babe-rpc"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.45.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "futures 0.3.31",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "sc-consensus-babe",
  "sc-consensus-epochs",
  "sc-rpc-api",
@@ -13157,8 +12235,8 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-epochs"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "fork-tree",
  "parity-scale-codec",
@@ -13170,10 +12248,10 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-grandpa"
-version = "0.19.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.30.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
  "array-bytes",
  "async-trait",
  "dyn-clone",
@@ -13205,7 +12283,7 @@ dependencies = [
  "sp-consensus",
  "sp-consensus-grandpa",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-keystore",
  "sp-runtime",
  "substrate-prometheus-endpoint",
@@ -13214,12 +12292,12 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-grandpa-rpc"
-version = "0.19.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.30.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "finality-grandpa",
  "futures 0.3.31",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "parity-scale-codec",
  "sc-client-api",
@@ -13234,14 +12312,14 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-manual-seal"
-version = "0.35.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.46.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "assert_matches",
  "async-trait",
  "futures 0.3.31",
  "futures-timer",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "parity-scale-codec",
  "sc-client-api",
@@ -13269,8 +12347,8 @@ dependencies = [
 
 [[package]]
 name = "sc-consensus-slots"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "futures 0.3.31",
@@ -13292,8 +12370,8 @@ dependencies = [
 
 [[package]]
 name = "sc-executor"
-version = "0.32.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.3",
@@ -13303,44 +12381,44 @@ dependencies = [
  "schnellru",
  "sp-api",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-io",
  "sp-panic-handler",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
  "sp-trie",
  "sp-version",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-wasm-interface",
  "tracing",
 ]
 
 [[package]]
 name = "sc-executor-common"
-version = "0.29.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.35.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "polkavm 0.9.3",
  "sc-allocator",
  "sp-maybe-compressed-blob",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-wasm-interface",
  "thiserror 1.0.69",
  "wasm-instrument",
 ]
 
 [[package]]
 name = "sc-executor-polkavm"
-version = "0.29.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.32.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "log",
  "polkavm 0.9.3",
  "sc-executor-common",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-wasm-interface",
 ]
 
 [[package]]
 name = "sc-executor-wasmtime"
-version = "0.29.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.35.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "anyhow",
  "cfg-if",
@@ -13350,15 +12428,15 @@ dependencies = [
  "rustix 0.36.17",
  "sc-allocator",
  "sc-executor-common",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
+ "sp-wasm-interface",
  "wasmtime",
 ]
 
 [[package]]
 name = "sc-informant"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "console",
  "futures 0.3.31",
@@ -13374,8 +12452,8 @@ dependencies = [
 
 [[package]]
 name = "sc-keystore"
-version = "25.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "33.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "parking_lot 0.12.3",
@@ -13388,8 +12466,8 @@ dependencies = [
 
 [[package]]
 name = "sc-mixnet"
-version = "0.4.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.15.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "arrayvec 0.7.6",
@@ -13417,8 +12495,8 @@ dependencies = [
 
 [[package]]
 name = "sc-network"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.45.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "async-channel 1.9.0",
@@ -13442,7 +12520,7 @@ dependencies = [
  "partial_sort",
  "pin-project",
  "prost 0.12.6",
- "prost-build",
+ "prost-build 0.12.6",
  "rand",
  "sc-client-api",
  "sc-network-common",
@@ -13468,15 +12546,15 @@ dependencies = [
 
 [[package]]
 name = "sc-network-common"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "bitflags 1.3.2",
  "futures 0.3.31",
  "libp2p-identity",
  "parity-scale-codec",
- "prost-build",
+ "prost-build 0.12.6",
  "sc-consensus",
  "sc-network-types",
  "sp-consensus",
@@ -13486,10 +12564,10 @@ dependencies = [
 
 [[package]]
 name = "sc-network-gossip"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.45.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
  "futures 0.3.31",
  "futures-timer",
  "log",
@@ -13505,8 +12583,8 @@ dependencies = [
 
 [[package]]
 name = "sc-network-light"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "async-channel 1.9.0",
@@ -13514,7 +12592,7 @@ dependencies = [
  "log",
  "parity-scale-codec",
  "prost 0.12.6",
- "prost-build",
+ "prost-build 0.12.6",
  "sc-client-api",
  "sc-network",
  "sc-network-types",
@@ -13526,8 +12604,8 @@ dependencies = [
 
 [[package]]
 name = "sc-network-sync"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "async-channel 1.9.0",
@@ -13535,11 +12613,12 @@ dependencies = [
  "fork-tree",
  "futures 0.3.31",
  "futures-timer",
+ "libp2p",
  "log",
  "mockall 0.11.4",
  "parity-scale-codec",
  "prost 0.12.6",
- "prost-build",
+ "prost-build 0.12.6",
  "sc-client-api",
  "sc-consensus",
  "sc-network",
@@ -13560,10 +12639,42 @@ dependencies = [
  "tokio-stream",
 ]
 
+[[package]]
+name = "sc-network-test"
+version = "0.8.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
+dependencies = [
+ "async-trait",
+ "futures 0.3.31",
+ "futures-timer",
+ "libp2p",
+ "log",
+ "parking_lot 0.12.3",
+ "rand",
+ "sc-block-builder",
+ "sc-client-api",
+ "sc-consensus",
+ "sc-network",
+ "sc-network-common",
+ "sc-network-light",
+ "sc-network-sync",
+ "sc-network-types",
+ "sc-service",
+ "sc-utils",
+ "sp-blockchain",
+ "sp-consensus",
+ "sp-core",
+ "sp-runtime",
+ "sp-tracing",
+ "substrate-test-runtime",
+ "substrate-test-runtime-client",
+ "tokio",
+]
+
 [[package]]
 name = "sc-network-transactions"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "futures 0.3.31",
@@ -13581,16 +12692,16 @@ dependencies = [
 
 [[package]]
 name = "sc-network-types"
-version = "0.10.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.12.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
- "bs58",
+ "bs58 0.5.1",
  "ed25519-dalek",
  "libp2p-identity",
  "litep2p",
  "log",
  "multiaddr 0.18.2",
- "multihash 0.19.3",
+ "multihash 0.19.2",
  "rand",
  "thiserror 1.0.69",
  "zeroize",
@@ -13598,25 +12709,22 @@ dependencies = [
 
 [[package]]
 name = "sc-offchain"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "40.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "bytes",
  "fnv",
  "futures 0.3.31",
  "futures-timer",
- "http-body-util",
- "hyper 1.5.2",
- "hyper-rustls 0.27.5",
- "hyper-util",
+ "hyper 0.14.31",
+ "hyper-rustls 0.24.2",
  "log",
  "num_cpus",
  "once_cell",
  "parity-scale-codec",
  "parking_lot 0.12.3",
  "rand",
- "rustls 0.23.21",
  "sc-client-api",
  "sc-network",
  "sc-network-common",
@@ -13625,7 +12733,7 @@ dependencies = [
  "sc-utils",
  "sp-api",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-keystore",
  "sp-offchain",
  "sp-runtime",
@@ -13635,8 +12743,8 @@ dependencies = [
 
 [[package]]
 name = "sc-proposer-metrics"
-version = "0.17.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "log",
  "substrate-prometheus-endpoint",
@@ -13644,11 +12752,11 @@ dependencies = [
 
 [[package]]
 name = "sc-rpc"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "40.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "futures 0.3.31",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "parity-scale-codec",
  "parking_lot 0.12.3",
@@ -13676,10 +12784,10 @@ dependencies = [
 
 [[package]]
 name = "sc-rpc-api"
-version = "0.33.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.44.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "parity-scale-codec",
  "sc-chain-spec",
  "sc-mixnet",
@@ -13696,39 +12804,38 @@ dependencies = [
 
 [[package]]
 name = "sc-rpc-server"
-version = "11.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.1.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "dyn-clone",
  "forwarded-header-value",
  "futures 0.3.31",
  "governor",
- "http 1.2.0",
+ "http 1.1.0",
  "http-body-util",
- "hyper 1.5.2",
+ "hyper 1.5.0",
  "ip_network",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "sc-rpc-api",
  "serde",
  "serde_json",
  "substrate-prometheus-endpoint",
  "tokio",
- "tower 0.4.13",
+ "tower",
  "tower-http",
 ]
 
 [[package]]
 name = "sc-rpc-spec-v2"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.45.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "array-bytes",
  "futures 0.3.31",
  "futures-util",
  "hex",
- "itertools 0.11.0",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "parity-scale-codec",
  "parking_lot 0.12.3",
@@ -13737,6 +12844,7 @@ dependencies = [
  "sc-client-api",
  "sc-rpc",
  "sc-transaction-pool-api",
+ "sc-utils",
  "schnellru",
  "serde",
  "sp-api",
@@ -13752,15 +12860,15 @@ dependencies = [
 
 [[package]]
 name = "sc-service"
-version = "0.35.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.46.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "directories",
  "exit-future",
  "futures 0.3.31",
  "futures-timer",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "parity-scale-codec",
  "parking_lot 0.12.3",
@@ -13795,12 +12903,12 @@ dependencies = [
  "sp-blockchain",
  "sp-consensus",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-keystore",
  "sp-runtime",
  "sp-session",
  "sp-state-machine",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-storage",
  "sp-transaction-pool",
  "sp-transaction-storage-proof",
  "sp-trie",
@@ -13816,8 +12924,8 @@ dependencies = [
 
 [[package]]
 name = "sc-state-db"
-version = "0.30.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.36.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "log",
  "parity-scale-codec",
@@ -13827,8 +12935,8 @@ dependencies = [
 
 [[package]]
 name = "sc-sysinfo"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "derive_more 0.99.18",
  "futures 0.3.31",
@@ -13841,15 +12949,15 @@ dependencies = [
  "serde",
  "serde_json",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-io",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "sc-telemetry"
-version = "15.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "25.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "chrono",
  "futures 0.3.31",
@@ -13868,12 +12976,13 @@ dependencies = [
 
 [[package]]
 name = "sc-tracing"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "chrono",
  "console",
  "is-terminal",
+ "lazy_static",
  "libc",
  "log",
  "parity-scale-codec",
@@ -13887,7 +12996,7 @@ dependencies = [
  "sp-core",
  "sp-rpc",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "thiserror 1.0.69",
  "tracing",
  "tracing-log",
@@ -13897,24 +13006,22 @@ dependencies = [
 [[package]]
 name = "sc-tracing-proc-macro"
 version = "11.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sc-transaction-pool"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "futures 0.3.31",
  "futures-timer",
- "indexmap 2.7.1",
- "itertools 0.11.0",
  "linked-hash-map",
  "log",
  "parity-scale-codec",
@@ -13926,20 +13033,18 @@ dependencies = [
  "sp-api",
  "sp-blockchain",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-runtime",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "sp-transaction-pool",
  "substrate-prometheus-endpoint",
  "thiserror 1.0.69",
- "tokio",
- "tokio-stream",
 ]
 
 [[package]]
 name = "sc-transaction-pool-api"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "futures 0.3.31",
@@ -13954,12 +13059,13 @@ dependencies = [
 
 [[package]]
 name = "sc-utils"
-version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-channel 1.9.0",
  "futures 0.3.31",
  "futures-timer",
+ "lazy_static",
  "log",
  "parking_lot 0.12.3",
  "prometheus",
@@ -14011,9 +13117,7 @@ checksum = "e98f3262c250d90e700bb802eb704e1f841e03331c2eb815e46516c4edbf5b27"
 dependencies = [
  "derive_more 0.99.18",
  "parity-scale-codec",
- "primitive-types 0.12.2",
  "scale-bits 0.6.0",
- "scale-decode-derive 0.13.1",
  "scale-type-resolver 0.2.0",
  "smallvec",
 ]
@@ -14028,33 +13132,21 @@ dependencies = [
  "parity-scale-codec",
  "primitive-types 0.13.1",
  "scale-bits 0.6.0",
- "scale-decode-derive 0.14.0",
+ "scale-decode-derive",
  "scale-type-resolver 0.2.0",
  "smallvec",
 ]
 
-[[package]]
-name = "scale-decode-derive"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9bb22f574168103cdd3133b19281639ca65ad985e24612728f727339dcaf4021"
-dependencies = [
- "darling 0.14.4",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
 [[package]]
 name = "scale-decode-derive"
 version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5ed9401effa946b493f9f84dc03714cca98119b230497df6f3df6b84a2b03648"
 dependencies = [
- "darling 0.20.10",
+ "darling",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -14070,21 +13162,6 @@ dependencies = [
  "smallvec",
 ]
 
-[[package]]
-name = "scale-encode"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "528464e6ae6c8f98e2b79633bf79ef939552e795e316579dab09c61670d56602"
-dependencies = [
- "derive_more 0.99.18",
- "parity-scale-codec",
- "primitive-types 0.12.2",
- "scale-bits 0.6.0",
- "scale-encode-derive 0.7.2",
- "scale-type-resolver 0.2.0",
- "smallvec",
-]
-
 [[package]]
 name = "scale-encode"
 version = "0.8.0"
@@ -14095,42 +13172,29 @@ dependencies = [
  "parity-scale-codec",
  "primitive-types 0.13.1",
  "scale-bits 0.6.0",
- "scale-encode-derive 0.8.0",
+ "scale-encode-derive",
  "scale-type-resolver 0.2.0",
  "smallvec",
 ]
 
-[[package]]
-name = "scale-encode-derive"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef2618f123c88da9cd8853b69d766068f1eddc7692146d7dfe9b89e25ce2efd"
-dependencies = [
- "darling 0.20.10",
- "proc-macro-crate 3.2.0",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "scale-encode-derive"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "102fbc6236de6c53906c0b262f12c7aa69c2bdc604862c12728f5f4d370bc137"
 dependencies = [
- "darling 0.20.10",
+ "darling",
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "scale-info"
-version = "2.11.6"
+version = "2.11.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b"
+checksum = "1aa7ffc1c0ef49b0452c6e2986abf2b07743320641ffd5fc63d552458e3b779b"
 dependencies = [
  "bitvec",
  "cfg-if",
@@ -14142,14 +13206,14 @@ dependencies = [
 
 [[package]]
 name = "scale-info-derive"
-version = "2.11.6"
+version = "2.11.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf"
+checksum = "46385cc24172cf615450267463f937c10072516359b3ff1cb24228a4a08bf951"
 dependencies = [
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -14172,19 +13236,6 @@ dependencies = [
  "smallvec",
 ]
 
-[[package]]
-name = "scale-typegen"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "498d1aecf2ea61325d4511787c115791639c0fd21ef4f8e11e49dd09eff2bbac"
-dependencies = [
- "proc-macro2",
- "quote",
- "scale-info",
- "syn 2.0.96",
- "thiserror 1.0.69",
-]
-
 [[package]]
 name = "scale-typegen"
 version = "0.9.0"
@@ -14194,7 +13245,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scale-info",
- "syn 2.0.96",
+ "syn 2.0.87",
  "thiserror 1.0.69",
 ]
 
@@ -14215,27 +13266,6 @@ dependencies = [
  "scale-type-resolver 0.1.1",
 ]
 
-[[package]]
-name = "scale-value"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cd6ab090d823e75cfdb258aad5fe92e13f2af7d04b43a55d607d25fcc38c811"
-dependencies = [
- "base58",
- "blake2 0.10.6",
- "derive_more 0.99.18",
- "either",
- "frame-metadata 15.1.0",
- "parity-scale-codec",
- "scale-bits 0.6.0",
- "scale-decode 0.13.1",
- "scale-encode 0.7.2",
- "scale-info",
- "scale-type-resolver 0.2.0",
- "serde",
- "yap",
-]
-
 [[package]]
 name = "scale-value"
 version = "0.17.0"
@@ -14258,20 +13288,20 @@ dependencies = [
 
 [[package]]
 name = "schannel"
-version = "0.1.27"
+version = "0.1.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d"
+checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1"
 dependencies = [
  "windows-sys 0.59.0",
 ]
 
 [[package]]
 name = "schnellru"
-version = "0.2.4"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "356285bbf17bea63d9e52e96bd18f039672ac92b55b8cb997d6162a2a37d1649"
+checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
  "cfg-if",
  "hashbrown 0.13.2",
 ]
@@ -14317,6 +13347,21 @@ dependencies = [
  "untrusted 0.9.0",
 ]
 
+[[package]]
+name = "sctp-proto"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6220f78bb44c15f326b0596113305f6101097a18755d53727a575c97e09fb24"
+dependencies = [
+ "bytes",
+ "crc",
+ "fxhash",
+ "log",
+ "rand",
+ "slab",
+ "thiserror 1.0.69",
+]
+
 [[package]]
 name = "sealed"
 version = "0.5.0"
@@ -14326,7 +13371,7 @@ dependencies = [
  "heck 0.4.1",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -14377,32 +13422,19 @@ version = "2.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
 dependencies = [
- "bitflags 2.8.0",
- "core-foundation 0.9.4",
+ "bitflags 2.6.0",
+ "core-foundation",
  "core-foundation-sys",
  "libc",
  "num-bigint",
  "security-framework-sys",
 ]
 
-[[package]]
-name = "security-framework"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316"
-dependencies = [
- "bitflags 2.8.0",
- "core-foundation 0.10.0",
- "core-foundation-sys",
- "libc",
- "security-framework-sys",
-]
-
 [[package]]
 name = "security-framework-sys"
-version = "2.14.0"
+version = "2.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32"
+checksum = "fa39c7303dc58b5543c94d22c1766b0d31f2ee58306363ea622b10bbc075eaa2"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -14432,14 +13464,14 @@ version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
 dependencies = [
- "semver-parser 0.10.3",
+ "semver-parser 0.10.2",
 ]
 
 [[package]]
 name = "semver"
-version = "1.0.25"
+version = "1.0.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03"
+checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
 dependencies = [
  "serde",
 ]
@@ -14452,19 +13484,13 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
 
 [[package]]
 name = "semver-parser"
-version = "0.10.3"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9900206b54a3527fdc7b8a938bffd94a568bac4f4aa8113b209df75a09c0dec2"
+checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
 dependencies = [
  "pest",
 ]
 
-[[package]]
-name = "send_wrapper"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0"
-
 [[package]]
 name = "send_wrapper"
 version = "0.6.0"
@@ -14473,9 +13499,9 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73"
 
 [[package]]
 name = "serde"
-version = "1.0.217"
+version = "1.0.215"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70"
+checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f"
 dependencies = [
  "serde_derive",
 ]
@@ -14500,20 +13526,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.217"
+version = "1.0.215"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"
+checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.137"
+version = "1.0.132"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "930cfb6e6abf99298aaad7d29abbef7a9999a9a8806a40088f55f0dcec03146b"
+checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03"
 dependencies = [
  "itoa",
  "memchr",
@@ -14548,7 +13574,7 @@ version = "0.9.34+deprecated"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
 dependencies = [
- "indexmap 2.7.1",
+ "indexmap 2.6.0",
  "itoa",
  "ryu",
  "serde",
@@ -14567,15 +13593,14 @@ dependencies = [
 
 [[package]]
 name = "sha-1"
-version = "0.9.8"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6"
+checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c"
 dependencies = [
- "block-buffer 0.9.0",
  "cfg-if",
  "cpufeatures",
- "digest 0.9.0",
- "opaque-debug 0.3.1",
+ "digest 0.10.7",
+ "sha1-asm",
 ]
 
 [[package]]
@@ -14589,6 +13614,15 @@ dependencies = [
  "digest 0.10.7",
 ]
 
+[[package]]
+name = "sha1-asm"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "286acebaf8b67c1130aedffad26f594eff0c1292389158135327d2e23aed582b"
+dependencies = [
+ "cc",
+]
+
 [[package]]
 name = "sha2"
 version = "0.9.9"
@@ -14672,11 +13706,11 @@ dependencies = [
 
 [[package]]
 name = "simple-dns"
-version = "0.7.1"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c80e565e7dcc4f1ef247e2f395550d4cf7d777746d5988e7e4e3156b71077fc"
+checksum = "cae9a3fcdadafb6d97f4c0e007e4247b114ee0f119f650c3cbf3a8b3a1479694"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
 ]
 
 [[package]]
@@ -14724,8 +13758,8 @@ checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7"
 
 [[package]]
 name = "slot-range-helper"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "15.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "enumn",
  "parity-scale-codec",
@@ -14747,7 +13781,7 @@ checksum = "0eb01866308440fc64d6c44d9e86c5cc17adfe33c4d6eed55da9145044d0ffc1"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -14775,34 +13809,33 @@ dependencies = [
 
 [[package]]
 name = "smoldot"
-version = "0.16.0"
+version = "0.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6d1eaa97d77be4d026a1e7ffad1bb3b78448763b357ea6f8188d3e6f736a9b9"
+checksum = "966e72d77a3b2171bb7461d0cb91f43670c63558c62d7cf42809cae6c8b6b818"
 dependencies = [
  "arrayvec 0.7.6",
  "async-lock",
  "atomic-take",
- "base64 0.21.7",
+ "base64 0.22.1",
  "bip39",
  "blake2-rfc",
- "bs58",
+ "bs58 0.5.1",
  "chacha20",
  "crossbeam-queue",
  "derive_more 0.99.18",
  "ed25519-zebra",
  "either",
- "event-listener 4.0.3",
+ "event-listener 5.3.1",
  "fnv",
  "futures-lite",
  "futures-util",
  "hashbrown 0.14.5",
  "hex",
  "hmac 0.12.1",
- "itertools 0.12.1",
+ "itertools 0.13.0",
  "libm",
  "libsecp256k1",
  "merlin",
- "no-std-net",
  "nom",
  "num-bigint",
  "num-rational",
@@ -14812,7 +13845,7 @@ dependencies = [
  "poly1305",
  "rand",
  "rand_chacha",
- "ruzstd 0.5.0",
+ "ruzstd",
  "schnorrkel",
  "serde",
  "serde_json",
@@ -14821,126 +13854,36 @@ dependencies = [
  "siphasher 1.0.1",
  "slab",
  "smallvec",
- "soketto 0.7.1",
+ "soketto",
  "twox-hash",
- "wasmi 0.31.2",
+ "wasmi",
  "x25519-dalek",
  "zeroize",
 ]
 
 [[package]]
-name = "smoldot"
-version = "0.18.0"
+name = "smoldot-light"
+version = "0.16.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "966e72d77a3b2171bb7461d0cb91f43670c63558c62d7cf42809cae6c8b6b818"
+checksum = "2a33b06891f687909632ce6a4e3fd7677b24df930365af3d0bcb078310129f3f"
 dependencies = [
- "arrayvec 0.7.6",
+ "async-channel 2.3.1",
  "async-lock",
- "atomic-take",
  "base64 0.22.1",
- "bip39",
  "blake2-rfc",
- "bs58",
- "chacha20",
- "crossbeam-queue",
+ "bs58 0.5.1",
  "derive_more 0.99.18",
- "ed25519-zebra",
  "either",
- "event-listener 5.4.0",
+ "event-listener 5.3.1",
  "fnv",
- "futures-lite",
- "futures-util",
- "hashbrown 0.14.5",
- "hex",
- "hmac 0.12.1",
- "itertools 0.13.0",
- "libm",
- "libsecp256k1",
- "merlin",
- "nom",
- "num-bigint",
- "num-rational",
- "num-traits 0.2.19",
- "pbkdf2",
- "pin-project",
- "poly1305",
- "rand",
- "rand_chacha",
- "ruzstd 0.6.0",
- "schnorrkel",
- "serde",
- "serde_json",
- "sha2 0.10.8",
- "sha3",
- "siphasher 1.0.1",
- "slab",
- "smallvec",
- "soketto 0.8.1",
- "twox-hash",
- "wasmi 0.32.3",
- "x25519-dalek",
- "zeroize",
-]
-
-[[package]]
-name = "smoldot-light"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5496f2d116b7019a526b1039ec2247dd172b8670633b1a64a614c9ea12c9d8c7"
-dependencies = [
- "async-channel 2.3.1",
- "async-lock",
- "base64 0.21.7",
- "blake2-rfc",
- "derive_more 0.99.18",
- "either",
- "event-listener 4.0.3",
- "fnv",
- "futures-channel",
- "futures-lite",
- "futures-util",
- "hashbrown 0.14.5",
- "hex",
- "itertools 0.12.1",
- "log",
- "lru",
- "no-std-net",
- "parking_lot 0.12.3",
- "pin-project",
- "rand",
- "rand_chacha",
- "serde",
- "serde_json",
- "siphasher 1.0.1",
- "slab",
- "smol",
- "smoldot 0.16.0",
- "zeroize",
-]
-
-[[package]]
-name = "smoldot-light"
-version = "0.16.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a33b06891f687909632ce6a4e3fd7677b24df930365af3d0bcb078310129f3f"
-dependencies = [
- "async-channel 2.3.1",
- "async-lock",
- "base64 0.22.1",
- "blake2-rfc",
- "bs58",
- "derive_more 0.99.18",
- "either",
- "event-listener 5.4.0",
- "fnv",
- "futures-channel",
+ "futures-channel",
  "futures-lite",
  "futures-util",
  "hashbrown 0.14.5",
  "hex",
  "itertools 0.13.0",
  "log",
- "lru",
+ "lru 0.12.5",
  "parking_lot 0.12.3",
  "pin-project",
  "rand",
@@ -14950,7 +13893,7 @@ dependencies = [
  "siphasher 1.0.1",
  "slab",
  "smol",
- "smoldot 0.18.0",
+ "smoldot",
  "zeroize",
 ]
 
@@ -14989,14 +13932,14 @@ dependencies = [
 
 [[package]]
 name = "snowbridge-beacon-primitives"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "byte-slice-cast",
  "frame-support",
  "hex",
  "parity-scale-codec",
- "rlp 0.6.1",
+ "rlp",
  "scale-info",
  "serde",
  "snowbridge-ethereum",
@@ -15004,15 +13947,15 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "ssz_rs",
  "ssz_rs_derive",
 ]
 
 [[package]]
 name = "snowbridge-core"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "ethabi-decode",
  "frame-support",
@@ -15027,29 +13970,29 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
 ]
 
 [[package]]
 name = "snowbridge-ethereum"
-version = "0.3.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.9.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "ethabi-decode",
- "ethbloom 0.14.1",
- "ethereum-types 0.15.1",
+ "ethbloom",
+ "ethereum-types",
  "hex-literal",
  "parity-bytes",
  "parity-scale-codec",
- "rlp 0.6.1",
+ "rlp",
  "scale-info",
  "serde",
  "serde-big-array",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
@@ -15069,8 +14012,8 @@ dependencies = [
 
 [[package]]
 name = "snowbridge-outbound-queue-merkle-tree"
-version = "0.3.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.9.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15080,21 +14023,21 @@ dependencies = [
 
 [[package]]
 name = "snowbridge-outbound-queue-runtime-api"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "parity-scale-codec",
  "snowbridge-core",
  "snowbridge-outbound-queue-merkle-tree",
  "sp-api",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "snowbridge-pallet-ethereum-client"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -15111,26 +14054,26 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "static_assertions",
 ]
 
 [[package]]
 name = "snowbridge-pallet-ethereum-client-fixtures"
-version = "0.9.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "hex-literal",
  "snowbridge-beacon-primitives",
  "snowbridge-core",
  "sp-core",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "snowbridge-pallet-inbound-queue"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "alloy-primitives",
  "alloy-sol-types",
@@ -15149,27 +14092,27 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-executor",
 ]
 
 [[package]]
 name = "snowbridge-pallet-inbound-queue-fixtures"
-version = "0.10.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.18.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "hex-literal",
  "snowbridge-beacon-primitives",
  "snowbridge-core",
  "sp-core",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "snowbridge-pallet-outbound-queue"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bridge-hub-common",
  "ethabi-decode",
@@ -15185,13 +14128,13 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
 ]
 
 [[package]]
 name = "snowbridge-pallet-system"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -15203,15 +14146,15 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-executor",
 ]
 
 [[package]]
 name = "snowbridge-router-primitives"
-version = "0.9.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.16.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "hex-literal",
@@ -15222,22 +14165,22 @@ dependencies = [
  "sp-core",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-executor",
 ]
 
 [[package]]
 name = "snowbridge-runtime-common"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "log",
  "parity-scale-codec",
  "snowbridge-core",
  "sp-arithmetic",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
  "staging-xcm-executor",
@@ -15245,8 +14188,8 @@ dependencies = [
 
 [[package]]
 name = "snowbridge-runtime-test-common"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-pallet-parachain-system",
  "frame-support",
@@ -15276,13 +14219,13 @@ dependencies = [
 
 [[package]]
 name = "snowbridge-system-runtime-api"
-version = "0.2.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.10.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "snowbridge-core",
  "sp-api",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
 ]
 
@@ -15298,9 +14241,9 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.5.8"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -15308,29 +14251,14 @@ dependencies = [
 
 [[package]]
 name = "soketto"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2"
-dependencies = [
- "base64 0.13.1",
- "bytes",
- "futures 0.3.31",
- "httparse",
- "log",
- "rand",
- "sha-1",
-]
-
-[[package]]
-name = "soketto"
-version = "0.8.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e859df029d160cb88608f5d7df7fb4753fd20fdfb4de5644f3d8b8440841721"
+checksum = "37468c595637c10857701c990f93a40ce0e357cedb0953d1c26c8d8027f9bb53"
 dependencies = [
  "base64 0.22.1",
  "bytes",
  "futures 0.3.31",
- "http 1.2.0",
+ "http 1.1.0",
  "httparse",
  "log",
  "rand",
@@ -15339,8 +14267,8 @@ dependencies = [
 
 [[package]]
 name = "sp-api"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "hash-db",
@@ -15349,10 +14277,10 @@ dependencies = [
  "scale-info",
  "sp-api-proc-macro",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-metadata-ir",
  "sp-runtime",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
  "sp-state-machine",
  "sp-trie",
  "sp-version",
@@ -15361,8 +14289,8 @@ dependencies = [
 
 [[package]]
 name = "sp-api-proc-macro"
-version = "15.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "20.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "Inflector",
  "blake2 0.10.6",
@@ -15370,13 +14298,13 @@ dependencies = [
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sp-application-crypto"
-version = "30.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15387,8 +14315,8 @@ dependencies = [
 
 [[package]]
 name = "sp-arithmetic"
-version = "23.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "26.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "docify",
  "integer-sqrt",
@@ -15399,28 +14327,10 @@ dependencies = [
  "static_assertions",
 ]
 
-[[package]]
-name = "sp-ark-bls12-381"
-version = "0.4.2"
-source = "git+https://github.com/duniter/arkworks-substrate#1dbec3114648697c992d3d022ade24c7a221c4c8"
-dependencies = [
- "ark-bls12-381-ext",
- "sp-crypto-ec-utils 0.10.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
-]
-
-[[package]]
-name = "sp-ark-ed-on-bls12-381-bandersnatch"
-version = "0.4.2"
-source = "git+https://github.com/duniter/arkworks-substrate#1dbec3114648697c992d3d022ade24c7a221c4c8"
-dependencies = [
- "ark-ed-on-bls12-381-bandersnatch-ext",
- "sp-crypto-ec-utils 0.10.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
-]
-
 [[package]]
 name = "sp-authority-discovery"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15431,8 +14341,8 @@ dependencies = [
 
 [[package]]
 name = "sp-block-builder"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "sp-api",
  "sp-inherents",
@@ -15441,8 +14351,8 @@ dependencies = [
 
 [[package]]
 name = "sp-blockchain"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "futures 0.3.31",
  "parity-scale-codec",
@@ -15460,8 +14370,8 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus"
-version = "0.32.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "async-trait",
  "futures 0.3.31",
@@ -15475,8 +14385,8 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus-aura"
-version = "0.32.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -15491,8 +14401,8 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus-babe"
-version = "0.32.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -15509,16 +14419,17 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus-beefy"
-version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "22.1.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
+ "lazy_static",
  "parity-scale-codec",
  "scale-info",
  "serde",
  "sp-api",
  "sp-application-crypto",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
  "sp-io",
  "sp-keystore",
  "sp-mmr-primitives",
@@ -15529,8 +14440,8 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus-grandpa"
-version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "21.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "finality-grandpa",
  "log",
@@ -15546,8 +14457,8 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus-pow"
-version = "0.32.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "sp-api",
@@ -15557,8 +14468,8 @@ dependencies = [
 
 [[package]]
 name = "sp-consensus-slots"
-version = "0.32.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15568,21 +14479,20 @@ dependencies = [
 
 [[package]]
 name = "sp-core"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "array-bytes",
- "bandersnatch_vrfs",
  "bitflags 1.3.2",
  "blake2 0.10.6",
  "bounded-collections",
- "bs58",
+ "bs58 0.5.1",
  "dyn-clonable",
  "ed25519-zebra",
  "futures 0.3.31",
  "hash-db",
  "hash256-std-hasher",
- "impl-serde 0.5.0",
+ "impl-serde 0.4.0",
  "itertools 0.11.0",
  "k256",
  "libsecp256k1",
@@ -15592,19 +14502,19 @@ dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.3",
  "paste",
- "primitive-types 0.13.1",
+ "primitive-types 0.12.2",
  "rand",
  "scale-info",
  "schnorrkel",
  "secp256k1",
  "secrecy",
  "serde",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "sp-debug-derive",
+ "sp-externalities",
+ "sp-runtime-interface",
+ "sp-std",
+ "sp-storage",
  "ss58-registry",
  "substrate-bip39",
  "thiserror 1.0.69",
@@ -15615,36 +14525,16 @@ dependencies = [
 
 [[package]]
 name = "sp-core-hashing"
-version = "15.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
-]
-
-[[package]]
-name = "sp-crypto-ec-utils"
-version = "0.10.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "16.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "ark-bls12-377",
- "ark-bls12-377-ext",
- "ark-bls12-381",
- "ark-bls12-381-ext",
- "ark-bw6-761",
- "ark-bw6-761-ext",
- "ark-ec 0.4.2",
- "ark-ed-on-bls12-377",
- "ark-ed-on-bls12-377-ext",
- "ark-ed-on-bls12-381-bandersnatch",
- "ark-ed-on-bls12-381-bandersnatch-ext",
- "ark-scale",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
 ]
 
 [[package]]
 name = "sp-crypto-ec-utils"
-version = "0.10.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.14.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "ark-bls12-377",
  "ark-bls12-377-ext",
@@ -15652,13 +14542,13 @@ dependencies = [
  "ark-bls12-381-ext",
  "ark-bw6-761",
  "ark-bw6-761-ext",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ed-on-bls12-377",
  "ark-ed-on-bls12-377-ext",
  "ark-ed-on-bls12-381-bandersnatch",
  "ark-ed-on-bls12-381-bandersnatch-ext",
  "ark-scale",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
+ "sp-runtime-interface",
 ]
 
 [[package]]
@@ -15678,7 +14568,7 @@ dependencies = [
 [[package]]
 name = "sp-crypto-hashing"
 version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "blake2b_simd",
  "byteorder",
@@ -15691,17 +14581,17 @@ dependencies = [
 [[package]]
 name = "sp-crypto-hashing-proc-macro"
 version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "quote",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "syn 2.0.96",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sp-database"
 version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "kvdb",
  "parking_lot 0.12.3",
@@ -15710,21 +14600,11 @@ dependencies = [
 [[package]]
 name = "sp-debug-derive"
 version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "sp-debug-derive"
-version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -15743,28 +14623,18 @@ dependencies = [
 
 [[package]]
 name = "sp-externalities"
-version = "0.25.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "environmental",
- "parity-scale-codec",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
-]
-
-[[package]]
-name = "sp-externalities"
-version = "0.25.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.29.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "environmental",
  "parity-scale-codec",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
+ "sp-storage",
 ]
 
 [[package]]
 name = "sp-genesis-builder"
-version = "0.8.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.15.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15775,8 +14645,8 @@ dependencies = [
 
 [[package]]
 name = "sp-inherents"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "async-trait",
  "impl-trait-for-tuples",
@@ -15788,8 +14658,8 @@ dependencies = [
 
 [[package]]
 name = "sp-io"
-version = "30.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "38.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bytes",
  "docify",
@@ -15801,12 +14671,12 @@ dependencies = [
  "rustversion",
  "secp256k1",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "sp-externalities",
  "sp-keystore",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
  "sp-state-machine",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "sp-trie",
  "tracing",
  "tracing-core",
@@ -15814,8 +14684,8 @@ dependencies = [
 
 [[package]]
 name = "sp-keyring"
-version = "31.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "sp-core",
  "sp-runtime",
@@ -15824,19 +14694,19 @@ dependencies = [
 
 [[package]]
 name = "sp-keystore"
-version = "0.34.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.40.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.3",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
 ]
 
 [[package]]
 name = "sp-maybe-compressed-blob"
 version = "11.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "thiserror 1.0.69",
  "zstd 0.12.4",
@@ -15855,18 +14725,18 @@ dependencies = [
 
 [[package]]
 name = "sp-metadata-ir"
-version = "0.6.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.7.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "frame-metadata 18.0.0",
+ "frame-metadata 16.0.0",
  "parity-scale-codec",
  "scale-info",
 ]
 
 [[package]]
 name = "sp-mixnet"
-version = "0.4.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.12.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15876,8 +14746,8 @@ dependencies = [
 
 [[package]]
 name = "sp-mmr-primitives"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.1.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "log",
  "parity-scale-codec",
@@ -15886,15 +14756,15 @@ dependencies = [
  "serde",
  "sp-api",
  "sp-core",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-debug-derive",
  "sp-runtime",
  "thiserror 1.0.69",
 ]
 
 [[package]]
 name = "sp-npos-elections"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -15906,8 +14776,8 @@ dependencies = [
 
 [[package]]
 name = "sp-offchain"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "sp-api",
  "sp-core",
@@ -15917,16 +14787,17 @@ dependencies = [
 [[package]]
 name = "sp-panic-handler"
 version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "backtrace",
+ "lazy_static",
  "regex",
 ]
 
 [[package]]
 name = "sp-rpc"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "32.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "rustc-hash 1.1.0",
  "serde",
@@ -15935,10 +14806,9 @@ dependencies = [
 
 [[package]]
 name = "sp-runtime"
-version = "31.0.1"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "binary-merkle-tree",
  "docify",
  "either",
  "hash256-std-hasher",
@@ -15955,81 +14825,47 @@ dependencies = [
  "sp-arithmetic",
  "sp-core",
  "sp-io",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-trie",
+ "sp-std",
  "sp-weights",
  "tracing",
- "tuplex",
-]
-
-[[package]]
-name = "sp-runtime-interface"
-version = "24.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "bytes",
- "impl-trait-for-tuples",
- "parity-scale-codec",
- "polkavm-derive 0.9.1",
- "primitive-types 0.13.1",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-runtime-interface-proc-macro 17.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "static_assertions",
 ]
 
 [[package]]
 name = "sp-runtime-interface"
-version = "24.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "28.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bytes",
  "impl-trait-for-tuples",
  "parity-scale-codec",
  "polkavm-derive 0.9.1",
- "primitive-types 0.13.1",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
- "sp-runtime-interface-proc-macro 17.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
- "sp-storage 19.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
- "sp-wasm-interface 20.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
+ "primitive-types 0.12.2",
+ "sp-externalities",
+ "sp-runtime-interface-proc-macro",
+ "sp-std",
+ "sp-storage",
+ "sp-tracing",
+ "sp-wasm-interface",
  "static_assertions",
 ]
 
 [[package]]
 name = "sp-runtime-interface-proc-macro"
-version = "17.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "Inflector",
- "expander",
- "proc-macro-crate 3.2.0",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "sp-runtime-interface-proc-macro"
-version = "17.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "18.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "Inflector",
  "expander",
  "proc-macro-crate 3.2.0",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sp-session"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "36.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "scale-info",
@@ -16042,8 +14878,8 @@ dependencies = [
 
 [[package]]
 name = "sp-staking"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "36.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "impl-trait-for-tuples",
  "parity-scale-codec",
@@ -16055,8 +14891,8 @@ dependencies = [
 
 [[package]]
 name = "sp-state-machine"
-version = "0.35.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.43.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "hash-db",
  "log",
@@ -16065,7 +14901,7 @@ dependencies = [
  "rand",
  "smallvec",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "sp-panic-handler",
  "sp-trie",
  "thiserror 1.0.69",
@@ -16075,8 +14911,8 @@ dependencies = [
 
 [[package]]
 name = "sp-statement-store"
-version = "10.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "18.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "aes-gcm",
  "curve25519-dalek",
@@ -16089,10 +14925,10 @@ dependencies = [
  "sp-api",
  "sp-application-crypto",
  "sp-core",
- "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "sp-externalities",
  "sp-runtime",
- "sp-runtime-interface 24.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-runtime-interface",
  "thiserror 1.0.69",
  "x25519-dalek",
 ]
@@ -16100,41 +14936,24 @@ dependencies = [
 [[package]]
 name = "sp-std"
 version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-
-[[package]]
-name = "sp-std"
-version = "14.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 
 [[package]]
 name = "sp-storage"
-version = "19.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "21.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "impl-serde 0.5.0",
- "parity-scale-codec",
- "ref-cast",
- "serde",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
-]
-
-[[package]]
-name = "sp-storage"
-version = "19.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "impl-serde 0.5.0",
+ "impl-serde 0.4.0",
  "parity-scale-codec",
  "ref-cast",
  "serde",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk)",
+ "sp-debug-derive",
 ]
 
 [[package]]
 name = "sp-timestamp"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -16145,19 +14964,8 @@ dependencies = [
 
 [[package]]
 name = "sp-tracing"
-version = "16.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "parity-scale-codec",
- "tracing",
- "tracing-core",
- "tracing-subscriber",
-]
-
-[[package]]
-name = "sp-tracing"
-version = "16.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
  "tracing",
@@ -16167,8 +14975,8 @@ dependencies = [
 
 [[package]]
 name = "sp-transaction-pool"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "sp-api",
  "sp-runtime",
@@ -16176,8 +14984,8 @@ dependencies = [
 
 [[package]]
 name = "sp-transaction-storage-proof"
-version = "26.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "34.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "async-trait",
  "parity-scale-codec",
@@ -16190,11 +14998,12 @@ dependencies = [
 
 [[package]]
 name = "sp-trie"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
  "hash-db",
+ "lazy_static",
  "memory-db",
  "nohash-hasher",
  "parity-scale-codec",
@@ -16203,7 +15012,7 @@ dependencies = [
  "scale-info",
  "schnellru",
  "sp-core",
- "sp-externalities 0.25.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-externalities",
  "thiserror 1.0.69",
  "tracing",
  "trie-db",
@@ -16212,37 +15021,36 @@ dependencies = [
 
 [[package]]
 name = "sp-version"
-version = "29.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "37.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
- "impl-serde 0.5.0",
+ "impl-serde 0.4.0",
  "parity-scale-codec",
  "parity-wasm",
  "scale-info",
  "serde",
  "sp-crypto-hashing-proc-macro",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "sp-version-proc-macro",
  "thiserror 1.0.69",
 ]
 
 [[package]]
 name = "sp-version-proc-macro"
-version = "13.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "14.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "parity-scale-codec",
- "proc-macro-warning 1.0.2",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sp-wasm-interface"
-version = "20.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "21.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "anyhow",
  "impl-trait-for-tuples",
@@ -16251,21 +15059,10 @@ dependencies = [
  "wasmtime",
 ]
 
-[[package]]
-name = "sp-wasm-interface"
-version = "20.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "anyhow",
- "impl-trait-for-tuples",
- "log",
- "parity-scale-codec",
-]
-
 [[package]]
 name = "sp-weights"
-version = "27.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "31.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "bounded-collections",
  "parity-scale-codec",
@@ -16273,7 +15070,7 @@ dependencies = [
  "serde",
  "smallvec",
  "sp-arithmetic",
- "sp-debug-derive 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-debug-derive",
 ]
 
 [[package]]
@@ -16353,8 +15150,8 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
 
 [[package]]
 name = "staging-parachain-info"
-version = "0.7.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.17.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -16366,15 +15163,13 @@ dependencies = [
 
 [[package]]
 name = "staging-xcm"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "14.2.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "array-bytes",
  "bounded-collections",
  "derivative",
  "environmental",
- "frame-support",
- "hex-literal",
  "impl-trait-for-tuples",
  "log",
  "parity-scale-codec",
@@ -16387,8 +15182,8 @@ dependencies = [
 
 [[package]]
 name = "staging-xcm-builder"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -16409,8 +15204,8 @@ dependencies = [
 
 [[package]]
 name = "staging-xcm-executor"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "environmental",
  "frame-benchmarking",
@@ -16450,9 +15245,9 @@ dependencies = [
 
 [[package]]
 name = "static_init_macro"
-version = "1.0.4"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1389c88ddd739ec6d3f8f83343764a0e944cd23cfbf126a9796a714b0b6edd6f"
+checksum = "70a2595fc3aa78f2d0e45dd425b22282dd863273761cc77780914b2cf3003acf"
 dependencies = [
  "cfg_aliases 0.1.1",
  "memchr",
@@ -16461,6 +15256,26 @@ dependencies = [
  "syn 1.0.109",
 ]
 
+[[package]]
+name = "str0m"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6706347e49b13373f7ddfafad47df7583ed52083d6fc8a594eb2c80497ef959d"
+dependencies = [
+ "combine 4.6.7",
+ "crc",
+ "fastrand",
+ "hmac 0.12.1",
+ "once_cell",
+ "openssl",
+ "openssl-sys",
+ "sctp-proto",
+ "serde",
+ "sha-1",
+ "thiserror 1.0.69",
+ "tracing",
+]
+
 [[package]]
 name = "string-interner"
 version = "0.17.0"
@@ -16472,12 +15287,6 @@ dependencies = [
  "serde",
 ]
 
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
 [[package]]
 name = "strsim"
 version = "0.11.1"
@@ -16522,13 +15331,13 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rustversion",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "substrate-bip39"
-version = "0.4.7"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.6.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "hmac 0.12.1",
  "pbkdf2",
@@ -16540,17 +15349,17 @@ dependencies = [
 [[package]]
 name = "substrate-build-script-utils"
 version = "11.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 
 [[package]]
 name = "substrate-frame-rpc-system"
-version = "28.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "39.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "docify",
  "frame-system-rpc-runtime-api",
  "futures 0.3.31",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "log",
  "parity-scale-codec",
  "sc-rpc-api",
@@ -16565,10 +15374,10 @@ dependencies = [
 [[package]]
 name = "substrate-prometheus-endpoint"
 version = "0.17.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
 dependencies = [
  "http-body-util",
- "hyper 1.5.2",
+ "hyper 1.5.0",
  "hyper-util",
  "log",
  "prometheus",
@@ -16576,28 +15385,116 @@ dependencies = [
  "tokio",
 ]
 
+[[package]]
+name = "substrate-test-client"
+version = "2.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
+dependencies = [
+ "array-bytes",
+ "async-trait",
+ "futures 0.3.31",
+ "parity-scale-codec",
+ "sc-client-api",
+ "sc-client-db",
+ "sc-consensus",
+ "sc-executor",
+ "sc-offchain",
+ "sc-service",
+ "serde",
+ "serde_json",
+ "sp-blockchain",
+ "sp-consensus",
+ "sp-core",
+ "sp-keyring",
+ "sp-keystore",
+ "sp-runtime",
+ "sp-state-machine",
+ "tokio",
+]
+
+[[package]]
+name = "substrate-test-runtime"
+version = "2.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
+dependencies = [
+ "array-bytes",
+ "frame-executive",
+ "frame-metadata-hash-extension",
+ "frame-support",
+ "frame-system",
+ "frame-system-rpc-runtime-api",
+ "log",
+ "pallet-babe",
+ "pallet-balances",
+ "pallet-timestamp",
+ "parity-scale-codec",
+ "sc-service",
+ "scale-info",
+ "serde_json",
+ "sp-api",
+ "sp-application-crypto",
+ "sp-block-builder",
+ "sp-consensus-aura",
+ "sp-consensus-babe",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-crypto-hashing 0.1.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2)",
+ "sp-externalities",
+ "sp-genesis-builder",
+ "sp-inherents",
+ "sp-io",
+ "sp-keyring",
+ "sp-offchain",
+ "sp-runtime",
+ "sp-session",
+ "sp-state-machine",
+ "sp-transaction-pool",
+ "sp-trie",
+ "sp-version",
+ "substrate-wasm-builder",
+ "tracing",
+ "trie-db",
+]
+
+[[package]]
+name = "substrate-test-runtime-client"
+version = "2.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#35bc17ea73ebcafc84a79aeda58390811806dd1b"
+dependencies = [
+ "futures 0.3.31",
+ "sc-block-builder",
+ "sc-client-api",
+ "sc-consensus",
+ "sp-api",
+ "sp-blockchain",
+ "sp-consensus",
+ "sp-core",
+ "sp-runtime",
+ "substrate-test-client",
+ "substrate-test-runtime",
+]
+
 [[package]]
 name = "substrate-wasm-builder"
-version = "17.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "24.0.1"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "array-bytes",
  "build-helper",
  "cargo_metadata",
  "console",
  "filetime",
- "frame-metadata 18.0.0",
+ "frame-metadata 16.0.0",
  "jobserver",
  "merkleized-metadata",
  "parity-scale-codec",
  "parity-wasm",
  "polkavm-linker 0.9.2",
  "sc-executor",
- "shlex",
  "sp-core",
  "sp-io",
  "sp-maybe-compressed-blob",
- "sp-tracing 16.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-tracing",
  "sp-version",
  "strum 0.26.3",
  "tempfile",
@@ -16631,52 +15528,16 @@ dependencies = [
  "lazy_static",
  "log",
  "proc-macro2",
- "semver 1.0.25",
+ "semver 1.0.23",
  "serde",
  "serde_json",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "subxt"
-version = "0.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a160cba1edbf3ec4fbbeaea3f1a185f70448116a6bccc8276bb39adb3b3053bd"
-dependencies = [
- "async-trait",
- "derive-where",
- "either",
- "frame-metadata 16.0.0",
- "futures 0.3.31",
- "hex",
- "impl-serde 0.4.0",
- "instant",
- "jsonrpsee 0.22.5",
- "parity-scale-codec",
- "primitive-types 0.12.2",
- "reconnecting-jsonrpsee-ws-client",
- "scale-bits 0.6.0",
- "scale-decode 0.13.1",
- "scale-encode 0.7.2",
- "scale-info",
- "scale-value 0.16.3",
- "serde",
- "serde_json",
- "sp-crypto-hashing 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "subxt-core 0.37.1",
- "subxt-lightclient 0.37.0",
- "subxt-macro 0.37.0",
- "subxt-metadata 0.37.0",
- "thiserror 1.0.69",
- "tokio-util",
- "tracing",
- "url",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "subxt"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
  "async-trait",
  "derive-where",
@@ -16685,98 +15546,50 @@ dependencies = [
  "futures 0.3.31",
  "hex",
  "impl-serde 0.5.0",
- "jsonrpsee 0.24.7",
+ "jsonrpsee",
  "parity-scale-codec",
  "polkadot-sdk",
- "primitive-types 0.13.1",
- "scale-bits 0.6.0",
- "scale-decode 0.14.0",
- "scale-encode 0.8.0",
- "scale-info",
- "scale-value 0.17.0",
- "serde",
- "serde_json",
- "subxt-core 0.38.0",
- "subxt-lightclient 0.38.0",
- "subxt-macro 0.38.0",
- "subxt-metadata 0.38.0",
- "thiserror 1.0.69",
- "tokio",
- "tokio-util",
- "tracing",
- "url",
- "wasm-bindgen-futures",
- "web-time",
-]
-
-[[package]]
-name = "subxt-codegen"
-version = "0.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d703dca0905cc5272d7cc27a4ac5f37dcaae7671acc7fef0200057cc8c317786"
-dependencies = [
- "frame-metadata 16.0.0",
- "heck 0.5.0",
- "hex",
- "jsonrpsee 0.22.5",
- "parity-scale-codec",
- "proc-macro2",
- "quote",
+ "primitive-types 0.13.1",
+ "scale-bits 0.6.0",
+ "scale-decode 0.14.0",
+ "scale-encode 0.8.0",
  "scale-info",
- "scale-typegen 0.8.0",
- "subxt-metadata 0.37.0",
- "syn 2.0.96",
+ "scale-value 0.17.0",
+ "serde",
+ "serde_json",
+ "subxt-core",
+ "subxt-lightclient",
+ "subxt-macro",
+ "subxt-metadata",
  "thiserror 1.0.69",
  "tokio",
+ "tokio-util",
+ "tracing",
+ "url",
+ "wasm-bindgen-futures",
+ "web-time",
 ]
 
 [[package]]
 name = "subxt-codegen"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
  "heck 0.5.0",
  "parity-scale-codec",
  "proc-macro2",
  "quote",
  "scale-info",
- "scale-typegen 0.9.0",
- "subxt-metadata 0.38.0",
- "syn 2.0.96",
+ "scale-typegen",
+ "subxt-metadata",
+ "syn 2.0.87",
  "thiserror 1.0.69",
 ]
 
-[[package]]
-name = "subxt-core"
-version = "0.37.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3af3b36405538a36b424d229dc908d1396ceb0994c90825ce928709eac1a159a"
-dependencies = [
- "base58",
- "blake2 0.10.6",
- "derive-where",
- "frame-metadata 16.0.0",
- "hashbrown 0.14.5",
- "hex",
- "impl-serde 0.4.0",
- "parity-scale-codec",
- "primitive-types 0.12.2",
- "scale-bits 0.6.0",
- "scale-decode 0.13.1",
- "scale-encode 0.7.2",
- "scale-info",
- "scale-value 0.16.3",
- "serde",
- "serde_json",
- "sp-crypto-hashing 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "subxt-metadata 0.37.0",
- "tracing",
-]
-
 [[package]]
 name = "subxt-core"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
  "base58",
  "blake2 0.10.6",
@@ -16786,7 +15599,7 @@ dependencies = [
  "hashbrown 0.14.5",
  "hex",
  "impl-serde 0.5.0",
- "keccak-hash 0.11.0",
+ "keccak-hash",
  "parity-scale-codec",
  "polkadot-sdk",
  "primitive-types 0.13.1",
@@ -16797,90 +15610,45 @@ dependencies = [
  "scale-value 0.17.0",
  "serde",
  "serde_json",
- "subxt-metadata 0.38.0",
- "tracing",
-]
-
-[[package]]
-name = "subxt-lightclient"
-version = "0.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d9406fbdb9548c110803cb8afa750f8b911d51eefdf95474b11319591d225d9"
-dependencies = [
- "futures 0.3.31",
- "futures-util",
- "serde",
- "serde_json",
- "smoldot-light 0.14.0",
- "thiserror 1.0.69",
- "tokio",
- "tokio-stream",
+ "subxt-metadata",
  "tracing",
 ]
 
 [[package]]
 name = "subxt-lightclient"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
  "futures 0.3.31",
  "futures-util",
  "serde",
  "serde_json",
- "smoldot-light 0.16.2",
+ "smoldot-light",
  "thiserror 1.0.69",
  "tokio",
  "tokio-stream",
  "tracing",
 ]
 
-[[package]]
-name = "subxt-macro"
-version = "0.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c195f803d70687e409aba9be6c87115b5da8952cd83c4d13f2e043239818fcd"
-dependencies = [
- "darling 0.20.10",
- "parity-scale-codec",
- "proc-macro-error",
- "quote",
- "scale-typegen 0.8.0",
- "subxt-codegen 0.37.0",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "subxt-macro"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
- "darling 0.20.10",
+ "darling",
  "parity-scale-codec",
  "proc-macro-error2",
  "quote",
- "scale-typegen 0.9.0",
- "subxt-codegen 0.38.0",
+ "scale-typegen",
+ "subxt-codegen",
  "subxt-utils-fetchmetadata",
- "syn 2.0.96",
-]
-
-[[package]]
-name = "subxt-metadata"
-version = "0.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "738be5890fdeff899bbffff4d9c0f244fe2a952fb861301b937e3aa40ebb55da"
-dependencies = [
- "frame-metadata 16.0.0",
- "hashbrown 0.14.5",
- "parity-scale-codec",
- "scale-info",
- "sp-crypto-hashing 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "subxt-metadata"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
  "frame-decode",
  "frame-metadata 17.0.0",
@@ -16890,34 +15658,10 @@ dependencies = [
  "scale-info",
 ]
 
-[[package]]
-name = "subxt-signer"
-version = "0.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f49888ae6ae90fe01b471193528eea5bd4ed52d8eecd2d13f4a2333b87388850"
-dependencies = [
- "bip32",
- "bip39",
- "cfg-if",
- "hex",
- "hmac 0.12.1",
- "keccak-hash 0.10.0",
- "parity-scale-codec",
- "pbkdf2",
- "regex",
- "schnorrkel",
- "secp256k1",
- "secrecy",
- "sha2 0.10.8",
- "sp-crypto-hashing 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "subxt-core 0.37.1",
- "zeroize",
-]
-
 [[package]]
 name = "subxt-utils-fetchmetadata"
 version = "0.38.0"
-source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.17.0#7044fccc5aaa1f838368a7f4a54f96d1f3f3040c"
+source = "git+https://github.com/duniter/subxt?branch=subxt-v0.38.0-duniter-substrate-v1.16.2#7bd25b258a127627971a9c6920da8c508cf37ec0"
 dependencies = [
  "hex",
  "parity-scale-codec",
@@ -16937,9 +15681,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.96"
+version = "2.0.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"
+checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -16955,14 +15699,14 @@ dependencies = [
  "paste",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "sync_wrapper"
-version = "1.0.2"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263"
+checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394"
 dependencies = [
  "futures-core",
 ]
@@ -16987,7 +15731,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -16996,7 +15740,7 @@ version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a3d2c2202510a1e186e63e596d9318c91a8cbe85cd1a56a7be0c333e5f59ec8d"
 dependencies = [
- "syn 2.0.96",
+ "syn 2.0.87",
  "synthez-codegen",
  "synthez-core",
 ]
@@ -17007,7 +15751,7 @@ version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f724aa6d44b7162f3158a57bccd871a77b39a4aef737e01bcdff41f4772c7746"
 dependencies = [
- "syn 2.0.96",
+ "syn 2.0.87",
  "synthez-core",
 ]
 
@@ -17020,25 +15764,25 @@ dependencies = [
  "proc-macro2",
  "quote",
  "sealed",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "system-configuration"
-version = "0.6.1"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b"
+checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
 dependencies = [
- "bitflags 2.8.0",
- "core-foundation 0.9.4",
+ "bitflags 1.3.2",
+ "core-foundation",
  "system-configuration-sys",
 ]
 
 [[package]]
 name = "system-configuration-sys"
-version = "0.6.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4"
+checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -17058,15 +15802,14 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1"
 
 [[package]]
 name = "tempfile"
-version = "3.15.0"
+version = "3.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704"
+checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c"
 dependencies = [
  "cfg-if",
  "fastrand",
- "getrandom",
  "once_cell",
- "rustix 0.38.43",
+ "rustix 0.38.40",
  "windows-sys 0.59.0",
 ]
 
@@ -17097,24 +15840,24 @@ dependencies = [
 
 [[package]]
 name = "terminal_size"
-version = "0.4.1"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5352447f921fda68cf61b4101566c0bdb5104eff6804d0678e5227580ab6a4e9"
+checksum = "4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef"
 dependencies = [
- "rustix 0.38.43",
+ "rustix 0.38.40",
  "windows-sys 0.59.0",
 ]
 
 [[package]]
 name = "termtree"
-version = "0.5.1"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683"
+checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
 
 [[package]]
 name = "testnet-parachains-constants"
-version = "1.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "10.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -17148,11 +15891,11 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "2.0.11"
+version = "2.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc"
+checksum = "c006c85c7651b3cf2ada4584faa36773bd07bac24acfb39f3c431b36d7e667aa"
 dependencies = [
- "thiserror-impl 2.0.11",
+ "thiserror-impl 2.0.3",
 ]
 
 [[package]]
@@ -17163,18 +15906,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "2.0.11"
+version = "2.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2"
+checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -17202,32 +15945,11 @@ dependencies = [
  "num_cpus",
 ]
 
-[[package]]
-name = "tikv-jemalloc-ctl"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "619bfed27d807b54f7f776b9430d4f8060e66ee138a28632ca898584d462c31c"
-dependencies = [
- "libc",
- "paste",
- "tikv-jemalloc-sys",
-]
-
-[[package]]
-name = "tikv-jemalloc-sys"
-version = "0.5.4+5.3.0-patched"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1"
-dependencies = [
- "cc",
- "libc",
-]
-
 [[package]]
 name = "time"
-version = "0.3.37"
+version = "0.3.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
 dependencies = [
  "deranged",
  "itoa",
@@ -17246,9 +15968,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.19"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
 dependencies = [
  "num-conv",
  "time-core",
@@ -17275,9 +15997,9 @@ dependencies = [
 
 [[package]]
 name = "tinyvec"
-version = "1.8.1"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8"
+checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
 dependencies = [
  "tinyvec_macros",
 ]
@@ -17290,31 +16012,31 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.43.0"
+version = "1.41.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e"
+checksum = "22cfb5bee7a6a52939ca9224d6ac897bb669134078daa8735560897f69de4d33"
 dependencies = [
  "backtrace",
  "bytes",
  "libc",
- "mio 1.0.3",
+ "mio 1.0.2",
  "parking_lot 0.12.3",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.8",
+ "socket2 0.5.7",
  "tokio-macros",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "tokio-macros"
-version = "2.5.0"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
+checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -17329,30 +16051,20 @@ dependencies = [
 
 [[package]]
 name = "tokio-rustls"
-version = "0.25.0"
+version = "0.26.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
+checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4"
 dependencies = [
- "rustls 0.22.4",
+ "rustls 0.23.16",
  "rustls-pki-types",
  "tokio",
 ]
 
-[[package]]
-name = "tokio-rustls"
-version = "0.26.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37"
-dependencies = [
- "rustls 0.23.21",
- "tokio",
-]
-
 [[package]]
 name = "tokio-stream"
-version = "0.1.17"
+version = "0.1.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047"
+checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1"
 dependencies = [
  "futures-core",
  "pin-project-lite",
@@ -17377,9 +16089,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-util"
-version = "0.7.13"
+version = "0.7.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078"
+checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a"
 dependencies = [
  "bytes",
  "futures-core",
@@ -17425,7 +16137,7 @@ version = "0.22.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
 dependencies = [
- "indexmap 2.7.1",
+ "indexmap 2.6.0",
  "serde",
  "serde_spanned",
  "toml_datetime",
@@ -17447,30 +16159,15 @@ dependencies = [
  "tracing",
 ]
 
-[[package]]
-name = "tower"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9"
-dependencies = [
- "futures-core",
- "futures-util",
- "pin-project-lite",
- "sync_wrapper",
- "tokio",
- "tower-layer",
- "tower-service",
-]
-
 [[package]]
 name = "tower-http"
 version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
 dependencies = [
- "bitflags 2.8.0",
+ "bitflags 2.6.0",
  "bytes",
- "http 1.2.0",
+ "http 1.1.0",
  "http-body 1.0.1",
  "http-body-util",
  "pin-project-lite",
@@ -17492,9 +16189,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
 
 [[package]]
 name = "tracing"
-version = "0.1.41"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
  "log",
  "pin-project-lite",
@@ -17504,20 +16201,20 @@ dependencies = [
 
 [[package]]
 name = "tracing-attributes"
-version = "0.1.28"
+version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "tracing-core"
-version = "0.1.33"
+version = "0.1.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
 dependencies = [
  "once_cell",
  "valuable",
@@ -17533,29 +16230,6 @@ dependencies = [
  "tracing",
 ]
 
-[[package]]
-name = "tracing-gum"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "coarsetime",
- "polkadot-primitives",
- "tracing",
- "tracing-gum-proc-macro",
-]
-
-[[package]]
-name = "tracing-gum-proc-macro"
-version = "5.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
-dependencies = [
- "expander",
- "proc-macro-crate 3.2.0",
- "proc-macro2",
- "quote",
- "syn 2.0.96",
-]
-
 [[package]]
 name = "tracing-log"
 version = "0.2.0"
@@ -17569,9 +16243,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-subscriber"
-version = "0.3.19"
+version = "0.3.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008"
+checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
 dependencies = [
  "matchers",
  "nu-ansi-term",
@@ -17747,7 +16421,7 @@ checksum = "29a3151c41d0b13e3d011f98adc24434560ef06673a155a6c7f66b9879eecce2"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -17844,15 +16518,15 @@ dependencies = [
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.18"
+version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5"
+checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.14"
+version = "1.0.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
+checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
 
 [[package]]
 name = "unicode-linebreak"
@@ -17903,6 +16577,15 @@ dependencies = [
  "subtle 2.6.1",
 ]
 
+[[package]]
+name = "unreachable"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
+dependencies = [
+ "void",
+]
+
 [[package]]
 name = "unsafe-libyaml"
 version = "0.2.11"
@@ -17945,9 +16628,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "url"
-version = "2.5.4"
+version = "2.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60"
+checksum = "8d157f1b96d14500ffdc1f10ba712e780825526c03d9a49b4d0324b0d9113ada"
 dependencies = [
  "form_urlencoded",
  "idna 1.0.3",
@@ -17980,9 +16663,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
 
 [[package]]
 name = "valuable"
-version = "0.1.1"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
+checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
 
 [[package]]
 name = "vcpkg"
@@ -18010,10 +16693,10 @@ checksum = "70a3028804c8bbae2a97a15b71ffc0e308c4b01a520994aafa77d56e94e19024"
 dependencies = [
  "ark-bls12-377",
  "ark-bls12-381",
- "ark-ec 0.4.2",
+ "ark-ec",
  "ark-ff 0.4.2",
  "ark-serialize 0.4.2",
- "ark-serialize-derive 0.4.2",
+ "ark-serialize-derive",
  "arrayref",
  "constcat",
  "digest 0.10.7",
@@ -18060,59 +16743,49 @@ version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
-[[package]]
-name = "wasix"
-version = "0.12.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1fbb4ef9bbca0c1170e0b00dd28abc9e3b68669821600cad1caaed606583c6d"
-dependencies = [
- "wasi",
-]
-
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.100"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5"
+checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e"
 dependencies = [
  "cfg-if",
  "once_cell",
- "rustversion",
  "wasm-bindgen-macro",
 ]
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.100"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6"
+checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358"
 dependencies = [
  "bumpalo",
  "log",
+ "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.50"
+version = "0.4.45"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61"
+checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b"
 dependencies = [
  "cfg-if",
  "js-sys",
- "once_cell",
  "wasm-bindgen",
  "web-sys",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.100"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407"
+checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -18120,25 +16793,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.100"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de"
+checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.100"
+version = "0.2.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d"
-dependencies = [
- "unicode-ident",
-]
+checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d"
 
 [[package]]
 name = "wasm-instrument"
@@ -18204,19 +16874,6 @@ dependencies = [
  "web-sys",
 ]
 
-[[package]]
-name = "wasmi"
-version = "0.31.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a8281d1d660cdf54c76a3efa9ddd0c270cada1383a995db3ccb43d166456c7"
-dependencies = [
- "smallvec",
- "spin 0.9.8",
- "wasmi_arena",
- "wasmi_core 0.13.0",
- "wasmparser-nostd",
-]
-
 [[package]]
 name = "wasmi"
 version = "0.32.3"
@@ -18230,39 +16887,21 @@ dependencies = [
  "smallvec",
  "spin 0.9.8",
  "wasmi_collections",
- "wasmi_core 0.32.3",
+ "wasmi_core",
  "wasmparser-nostd",
 ]
 
-[[package]]
-name = "wasmi_arena"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "104a7f73be44570cac297b3035d76b169d6599637631cf37a1703326a0727073"
-
 [[package]]
 name = "wasmi_collections"
 version = "0.32.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c128c039340ffd50d4195c3f8ce31aac357f06804cfc494c8b9508d4b30dca4"
 dependencies = [
- "ahash",
+ "ahash 0.8.11",
  "hashbrown 0.14.5",
  "string-interner",
 ]
 
-[[package]]
-name = "wasmi_core"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf1a7db34bff95b85c261002720c00c3a6168256dcb93041d3fa2054d19856a"
-dependencies = [
- "downcast-rs",
- "libm",
- "num-traits 0.2.19",
- "paste",
-]
-
 [[package]]
 name = "wasmi_core"
 version = "0.32.3"
@@ -18491,9 +17130,9 @@ dependencies = [
 
 [[package]]
 name = "web-sys"
-version = "0.3.77"
+version = "0.3.72"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2"
+checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -18527,9 +17166,9 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
 
 [[package]]
 name = "webpki-roots"
-version = "0.26.7"
+version = "0.26.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e"
+checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958"
 dependencies = [
  "rustls-pki-types",
 ]
@@ -18546,8 +17185,8 @@ dependencies = [
 
 [[package]]
 name = "westend-runtime-constants"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
@@ -18560,11 +17199,23 @@ dependencies = [
  "staging-xcm-builder",
 ]
 
+[[package]]
+name = "which"
+version = "4.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
+dependencies = [
+ "either",
+ "home",
+ "once_cell",
+ "rustix 0.38.40",
+]
+
 [[package]]
 name = "wide"
-version = "0.7.32"
+version = "0.7.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41b5576b9a81633f3e8df296ce0063042a73507636cbe956c61133dd7034ab22"
+checksum = "b828f995bf1e9622031f8009f8481a85406ce1f4d4588ff746d872043e855690"
 dependencies = [
  "bytemuck",
  "safe_arch",
@@ -18609,30 +17260,29 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows"
-version = "0.53.0"
+version = "0.51.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efc5cf48f83140dcaab716eeaea345f9e93d0018fb81162753a3f76c3397b538"
+checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9"
 dependencies = [
- "windows-core 0.53.0",
- "windows-targets 0.52.6",
+ "windows-core 0.51.1",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
 name = "windows-core"
-version = "0.52.0"
+version = "0.51.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
 dependencies = [
- "windows-targets 0.52.6",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
 name = "windows-core"
-version = "0.53.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dcc5b895a6377f1ab9fa55acedab1fd5ac0db66ad1e6c7f47e28a22e446a5dd"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-result 0.1.2",
  "windows-targets 0.52.6",
 ]
 
@@ -18642,20 +17292,11 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0"
 dependencies = [
- "windows-result 0.2.0",
+ "windows-result",
  "windows-strings",
  "windows-targets 0.52.6",
 ]
 
-[[package]]
-name = "windows-result"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8"
-dependencies = [
- "windows-targets 0.52.6",
-]
-
 [[package]]
 name = "windows-result"
 version = "0.2.0"
@@ -18671,10 +17312,25 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10"
 dependencies = [
- "windows-result 0.2.0",
+ "windows-result",
  "windows-targets 0.52.6",
 ]
 
+[[package]]
+name = "windows-sys"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
 [[package]]
 name = "windows-sys"
 version = "0.45.0"
@@ -18891,9 +17547,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
 
 [[package]]
 name = "winnow"
-version = "0.6.24"
+version = "0.6.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a"
+checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b"
 dependencies = [
  "memchr",
 ]
@@ -18977,19 +17633,19 @@ dependencies = [
 
 [[package]]
 name = "xcm-procedural"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "10.1.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "Inflector",
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "xcm-runtime-apis"
-version = "0.1.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "0.4.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "parity-scale-codec",
@@ -19002,8 +17658,8 @@ dependencies = [
 
 [[package]]
 name = "xcm-simulator"
-version = "7.0.0"
-source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0#3f9bddbe619cf4068769b4d3fc58c8d50e358df8"
+version = "17.0.0"
+source = "git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.16.2#21d1f7a814df383fd8007bf39750ce4cb0fd56fc"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -19016,7 +17672,7 @@ dependencies = [
  "scale-info",
  "sp-io",
  "sp-runtime",
- "sp-std 14.0.0 (git+https://github.com/duniter/duniter-polkadot-sdk?branch=duniter-substrate-v1.17.0)",
+ "sp-std",
  "staging-xcm",
  "staging-xcm-builder",
  "staging-xcm-executor",
@@ -19024,9 +17680,9 @@ dependencies = [
 
 [[package]]
 name = "xml-rs"
-version = "0.8.25"
+version = "0.8.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5b940ebc25896e71dd073bad2dbaa2abfe97b0a391415e22ad1326d9c54e3c4"
+checksum = "af310deaae937e48a26602b730250b4949e125f468f11e6990be3e5304ddd96f"
 
 [[package]]
 name = "xmltree"
@@ -19092,9 +17748,9 @@ dependencies = [
 
 [[package]]
 name = "yoke"
-version = "0.7.5"
+version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40"
+checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5"
 dependencies = [
  "serde",
  "stable_deref_trait",
@@ -19104,13 +17760,13 @@ dependencies = [
 
 [[package]]
 name = "yoke-derive"
-version = "0.7.5"
+version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154"
+checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "synstructure 0.13.1",
 ]
 
@@ -19132,27 +17788,27 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
 name = "zerofrom"
-version = "0.1.5"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e"
+checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55"
 dependencies = [
  "zerofrom-derive",
 ]
 
 [[package]]
 name = "zerofrom-derive"
-version = "0.1.5"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808"
+checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
  "synstructure 0.13.1",
 ]
 
@@ -19173,7 +17829,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
@@ -19195,7 +17851,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.96",
+ "syn 2.0.87",
 ]
 
 [[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 08f8d82fabcd0d24adcf3aa533f0719d78c789c6..54ee0162e19d9448da4c9371a08a143c0219c79a 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -105,6 +105,8 @@ simple_logger = { version = "4.3.3", default-features = false }
 bincode = { version = "1.3.3", default-features = false }
 dubp-wot = { version = "0.11.1", default-features = false }
 flate2 = { version = "1.0.28", default-features = false }
+array-bytes = { version = "6.2.2", default-features = false }
+parking_lot = { version = "0.12.1" }
 
 # Subxt
 subxt = { git = 'https://github.com/duniter/subxt', branch = 'subxt-v0.38.0-duniter-substrate-v1.17.0', default-features = false }
@@ -213,6 +215,9 @@ sc-telemetry = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch
 sc-transaction-pool = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
 sc-basic-authorship = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
 sc-network = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
+sc-network-sync = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
+sc-network-test = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
+sc-utils = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
 sp-keystore = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
 sp-storage = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
 sp-timestamp = { git = 'https://github.com/duniter/duniter-polkadot-sdk', branch = 'duniter-substrate-v1.17.0', default-features = false }
diff --git a/node/Cargo.toml b/node/Cargo.toml
index 85cfca8bc37c715e6ae4e5405760eca5675204cc..79b01d833261cf9b47e62300c3eaf0440838b2f4 100644
--- a/node/Cargo.toml
+++ b/node/Cargo.toml
@@ -130,6 +130,9 @@ num-format = { workspace = true }
 serde = { workspace = true }
 serde_json = { workspace = true }
 serde_yaml = { workspace = true }
+codec = { workspace = true }
+array-bytes = { workspace = true }
+parking_lot = { workspace = true }
 tokio = { workspace = true, features = ["rt-multi-thread"] }
 
 # Local
@@ -162,11 +165,13 @@ sc-consensus-manual-seal = { workspace = true, default-features = true }
 sc-executor = { workspace = true, default-features = true }
 sc-keystore = { workspace = true, default-features = true }
 sc-network = { workspace = true, default-features = true }
+sc-network-sync = { workspace = true, default-features = true }
 sc-offchain = { workspace = true, default-features = true }
 sc-rpc-api = { workspace = true, default-features = true }
 sc-telemetry = { workspace = true, default-features = true }
 sc-transaction-pool = { workspace = true, default-features = true }
 sc-transaction-pool-api = { workspace = true, default-features = true }
+sc-utils = { workspace = true, default-features = true }
 sp-api = { workspace = true, default-features = true }
 sp-authority-discovery = { workspace = true, default-features = true }
 sp-block-builder = { workspace = true, default-features = true }
@@ -190,6 +195,11 @@ sp-transaction-pool = { workspace = true, default-features = true }
 sp-transaction-storage-proof = { workspace = true, default-features = true }
 substrate-frame-rpc-system = { workspace = true, default-features = true }
 
+[dev-dependencies]
+sc-network-test = { workspace = true, default-features = true }
+async-trait = { version = "0.1.79" }
+env_logger = "0.10.2"
+
 [build-dependencies]
 substrate-build-script-utils = { workspace = true, default-features = true }
 
@@ -228,4 +238,4 @@ assets = [
 	{ source = "../resources/debian/duniter-mirror.service", dest = "/usr/lib/systemd/system/duniter-mirror.service", mode = "0644" },
 	{ source = "../resources/debian/duniter-smith.service", dest = "/usr/lib/systemd/system/duniter-smith.service", mode = "0644" },
 	{ source = "../resources/debian/duniter-smith.service", dest = "/usr/lib/systemd/system/distance-oracle.service", mode = "0644" },
-]
+]
\ No newline at end of file
diff --git a/node/src/cli.rs b/node/src/cli.rs
index 4a29ae0c07ff17c392e48fafe8690ac4ee2e81cb..76a0a42ef1c0b7788c857faafbc4eea70e4af26a 100644
--- a/node/src/cli.rs
+++ b/node/src/cli.rs
@@ -19,9 +19,14 @@ pub struct Cli {
     #[clap(subcommand)]
     pub subcommand: Option<Subcommand>,
 
+    /// substrate base options
     #[clap(flatten)]
     pub run: sc_cli::RunCmd,
 
+    /// duniter specific options
+    #[clap(flatten)]
+    pub duniter_options: DuniterConfigExtension,
+
     /// How blocks should be sealed
     ///
     /// Options are "production", "instant", "manual", or timer interval in milliseconds
@@ -29,6 +34,18 @@ pub struct Cli {
     pub sealing: crate::cli::Sealing,
 }
 
+/// add options specific to duniter client
+#[derive(Debug, Default, Clone, clap::Parser)]
+pub struct DuniterConfigExtension {
+    /// Public RPC endpoint to gossip on the network and make available in the apps.
+    #[arg(long)]
+    pub public_rpc: Option<String>,
+
+    /// Public Squid graphql endpoint to gossip on the network and make available in the apps.
+    #[arg(long)]
+    pub public_squid: Option<String>,
+}
+
 #[derive(Debug, clap::Subcommand)]
 pub enum Subcommand {
     /// Build a chain specification.
diff --git a/node/src/command.rs b/node/src/command.rs
index c4416c6c544c09c41f4cd9b3a09a1b0040e09049..512706ec9c2aee808226fcdd23d20dfef0c7b8a3 100644
--- a/node/src/command.rs
+++ b/node/src/command.rs
@@ -22,7 +22,7 @@ pub mod utils;
 
 use crate::{
     chain_spec,
-    cli::{Cli, Subcommand},
+    cli::{Cli, DuniterConfigExtension, Subcommand},
     service,
     service::{runtime_executor::Executor, RuntimeType},
 };
@@ -374,6 +374,7 @@ pub fn run() -> sc_cli::Result<()> {
         }
         None => {
             let runner = cli.create_runner(&cli.run)?;
+            let duniter_options: DuniterConfigExtension = cli.duniter_options;
             runner.run_node_until_exit(|mut config| async move {
                 // Force offchain worker and offchain indexing if we have the role Authority
                 if config.role.is_authority() {
@@ -386,7 +387,7 @@ pub fn run() -> sc_cli::Result<()> {
                         service::runtime_executor::runtime::RuntimeApi,
                         Executor,
                         sc_network::Litep2pNetworkBackend,
-                    >(config, cli.sealing)
+                    >(config, cli.sealing, duniter_options)
                     .map_err(sc_cli::Error::Service)
                 }
             })
diff --git a/node/src/endpoint_gossip/handler.rs b/node/src/endpoint_gossip/handler.rs
new file mode 100644
index 0000000000000000000000000000000000000000..3f5752564ccd8cfbda470a18959c6d4964567e43
--- /dev/null
+++ b/node/src/endpoint_gossip/handler.rs
@@ -0,0 +1,271 @@
+use crate::endpoint_gossip::{
+    types::validation_result::DuniterStreamValidationResult, DuniterEndpoint, Peer, Peering,
+    PROPAGATE_TIMEOUT,
+};
+use codec::{Decode, Encode};
+use futures::{stream, FutureExt, Stream, StreamExt};
+use log::debug;
+use sc_network::{
+    service::traits::{NotificationEvent, ValidationResult},
+    utils::interval,
+    NetworkEventStream, NetworkPeers, NetworkStateInfo, NotificationService, ObservedRole, PeerId,
+};
+use sc_utils::mpsc::{tracing_unbounded, TracingUnboundedReceiver, TracingUnboundedSender};
+use sp_api::__private::BlockT;
+use std::{collections::HashMap, marker::PhantomData, pin::Pin};
+
+pub fn build<
+    B: BlockT + 'static,
+    N: NetworkPeers + NetworkEventStream + NetworkStateInfo + Clone,
+>(
+    notification_service: Box<dyn NotificationService>,
+    network: N,
+    rpc_sink: TracingUnboundedSender<DuniterPeeringEvent>,
+    command_rx: Option<TracingUnboundedReceiver<DuniterPeeringCommand>>,
+    endpoints: Vec<DuniterEndpoint>,
+) -> GossipsHandler<B, N> {
+    let local_peer_id = network.local_peer_id().clone();
+
+    let handler = GossipsHandler {
+        b: PhantomData::<B>,
+        notification_service,
+        propagate_timeout: (Box::pin(interval(PROPAGATE_TIMEOUT))
+            as Pin<Box<dyn Stream<Item = ()> + Send>>)
+            .fuse(),
+        network,
+        peers: HashMap::new(),
+        command_rx: command_rx.unwrap_or_else(|| {
+            let (_tx, rx) = tracing_unbounded("mpsc_duniter_peering_rpc_command", 1_000);
+            rx
+        }),
+        self_peering: Peering { endpoints },
+        events_reporter: DuniterEventsReporter {
+            sink: rpc_sink,
+            local_peer_id,
+        },
+    };
+
+    handler
+}
+
+#[derive(Debug, Clone)]
+pub enum DuniterPeeringEvent {
+    StreamOpened(PeerId, ObservedRole),
+    StreamValidation(PeerId, DuniterStreamValidationResult),
+    StreamClosed(PeerId),
+    /// Received gossip from a peer, `bool` indicates whether the gossip was successfully decoded.
+    GossipReceived(PeerId, bool),
+    GoodPeering(PeerId, Peering),
+    AlreadyReceivedPeering(PeerId),
+    SelfPeeringPropagationSuccess(PeerId, Peering),
+    SelfPeeringPropagationFailed(PeerId, Peering, String),
+}
+
+pub enum DuniterPeeringCommand {
+    /// Send a peering to a peer.
+    #[allow(dead_code)] // only used in tests for now, maybe in the future by RPC
+    SendPeering(PeerId, Peering),
+}
+
+struct DuniterEventsReporter {
+    sink: TracingUnboundedSender<DuniterPeeringEvent>,
+    local_peer_id: PeerId,
+}
+
+impl DuniterEventsReporter {
+    /// Report an event for monitoring purposes (logs + unit tests).
+    fn report_event(&self, event: DuniterPeeringEvent) {
+        self.sink.unbounded_send(event.clone())
+            .unwrap_or_else(|e| {
+                log::error!(target: "duniter-libp2p", "[{}] Failed to send notification: {}", self.local_peer_id, e);
+            })
+    }
+}
+
+/// Handler for gossips. Call [`GossipsHandler::run`] to start the processing.
+pub struct GossipsHandler<
+    B: BlockT + 'static,
+    N: NetworkPeers + NetworkEventStream + NetworkStateInfo,
+> {
+    b: PhantomData<B>,
+    /// Interval at which we try to propagate our peering
+    propagate_timeout: stream::Fuse<Pin<Box<dyn Stream<Item = ()> + Send>>>,
+    /// Network service to use to send messages and manage peers.
+    network: N,
+    /// All connected peers and their known peering.
+    peers: HashMap<PeerId, Peer>,
+    /// The interal peering of the node.
+    self_peering: Peering,
+    /// Internal sink to report events.
+    events_reporter: DuniterEventsReporter,
+    /// Receiver for external commands (tests/RPC methods).
+    command_rx: TracingUnboundedReceiver<DuniterPeeringCommand>,
+    /// Handle that is used to communicate with `sc_network::Notifications`.
+    notification_service: Box<dyn NotificationService>,
+}
+
+impl<B, N> GossipsHandler<B, N>
+where
+    B: BlockT + 'static,
+    N: NetworkPeers + NetworkEventStream + NetworkStateInfo,
+{
+    /// Turns the [`TransactionsHandler`] into a future that should run forever and not be
+    /// interrupted.
+    pub async fn run(mut self) {
+        // Share self peering do listeners of current handler
+        self.events_reporter
+            .report_event(DuniterPeeringEvent::GoodPeering(
+                self.network.local_peer_id(),
+                self.self_peering.clone(),
+            ));
+        // Then start the network loop
+        loop {
+            futures::select! {
+                _ = self.propagate_timeout.next() => {
+                    for (peer, peer_data) in self.peers.iter_mut() {
+                        if !peer_data.sent_peering {
+                            match self.notification_service.send_async_notification(peer, self.self_peering.encode()).await {
+                                Ok(_) => {
+                                    peer_data.sent_peering = true;
+                                    self.events_reporter.report_event(DuniterPeeringEvent::SelfPeeringPropagationSuccess(peer.clone(), self.self_peering.clone()));
+                                }
+                                Err(e) => {
+                                    self.events_reporter.report_event(DuniterPeeringEvent::SelfPeeringPropagationFailed(peer.clone(), self.self_peering.clone(), e.to_string()));
+                                }
+                            }
+                        }
+                    }
+                },
+                command = self.command_rx.next().fuse() => {
+                    if let Some(command) = command {
+                        self.handle_command(command).await
+                    } else {
+                        // `Notifications` has seemingly closed. Closing as well.
+                        return
+                    }
+                },
+                event = self.notification_service.next_event().fuse() => {
+                    if let Some(event) = event {
+                        self.handle_notification_event(event)
+                    } else {
+                        // `Notifications` has seemingly closed. Closing as well.
+                        return
+                    }
+                }
+            }
+        }
+    }
+
+    fn handle_notification_event(&mut self, event: NotificationEvent) {
+        match event {
+            NotificationEvent::ValidateInboundSubstream {
+                peer,
+                handshake,
+                result_tx,
+                ..
+            } => {
+                // only accept peers whose role can be determined
+                let result = self
+                    .network
+                    .peer_role(peer, handshake)
+                    .map_or(ValidationResult::Reject, |_| ValidationResult::Accept);
+                let duniter_validation = DuniterStreamValidationResult::from(result);
+                self.events_reporter
+                    .report_event(DuniterPeeringEvent::StreamValidation(
+                        peer,
+                        duniter_validation.clone(),
+                    ));
+                let _ = result_tx.send(duniter_validation.into());
+            }
+            NotificationEvent::NotificationStreamOpened {
+                peer, handshake, ..
+            } => {
+                let Some(role) = self.network.peer_role(peer, handshake) else {
+                    debug!(target: "duniter-libp2p", "[{}] role for {peer} couldn't be determined", self.network.local_peer_id());
+                    return;
+                };
+
+                let _was_in = self.peers.insert(
+                    peer,
+                    Peer {
+                        sent_peering: false,
+                        known_peering: None,
+                    },
+                );
+                debug_assert!(_was_in.is_none());
+                self.events_reporter
+                    .report_event(DuniterPeeringEvent::StreamOpened(peer, role));
+            }
+            NotificationEvent::NotificationStreamClosed { peer } => {
+                let _peer = self.peers.remove(&peer);
+                debug_assert!(_peer.is_some());
+                self.events_reporter
+                    .report_event(DuniterPeeringEvent::StreamClosed(peer));
+            }
+            NotificationEvent::NotificationReceived { peer, notification } => {
+                if let Ok(peering) = <Peering as Decode>::decode(&mut notification.as_ref()) {
+                    self.events_reporter
+                        .report_event(DuniterPeeringEvent::GossipReceived(peer, true));
+                    self.on_peering(peer, peering);
+                } else {
+                    self.events_reporter
+                        .report_event(DuniterPeeringEvent::GossipReceived(peer, false));
+                    self.network.report_peer(peer, rep::BAD_PEERING);
+                }
+            }
+        }
+    }
+
+    /// Called when peer sends us new peerings
+    fn on_peering(&mut self, who: PeerId, peering: Peering) {
+        if let Some(ref mut peer) = self.peers.get_mut(&who) {
+            if peer.known_peering.is_some() {
+                // Peering has already been received for this peer. Only one is allowed per connection.
+                self.network.report_peer(who, rep::BAD_PEERING);
+                self.events_reporter
+                    .report_event(DuniterPeeringEvent::AlreadyReceivedPeering(who));
+            } else {
+                peer.known_peering = Some(peering.clone());
+                self.events_reporter
+                    .report_event(DuniterPeeringEvent::GoodPeering(who, peering.clone()));
+                self.network.report_peer(who, rep::GOOD_PEERING);
+            }
+        }
+    }
+
+    async fn handle_command(&mut self, cmd: DuniterPeeringCommand) {
+        match cmd {
+            DuniterPeeringCommand::SendPeering(peer, peering) => {
+                debug!(target: "duniter-libp2p", "[{}]Sending COMMANDED self peering to {}", self.network.local_peer_id(), peer);
+                match self
+                    .notification_service
+                    .send_async_notification(&peer, peering.encode())
+                    .await
+                {
+                    Ok(_) => {
+                        self.events_reporter.report_event(
+                            DuniterPeeringEvent::SelfPeeringPropagationSuccess(peer, peering),
+                        );
+                    }
+                    Err(e) => {
+                        self.events_reporter.report_event(
+                            DuniterPeeringEvent::SelfPeeringPropagationFailed(
+                                peer,
+                                peering,
+                                e.to_string(),
+                            ),
+                        );
+                    }
+                }
+            }
+        };
+    }
+}
+
+mod rep {
+    use sc_network::ReputationChange as Rep;
+    /// Reputation change when a peer sends us an peering that we didn't know about.
+    pub const GOOD_PEERING: Rep = Rep::new(1 << 7, "Good peering");
+    /// Reputation change when a peer sends us a bad peering.
+    pub const BAD_PEERING: Rep = Rep::new(-(1 << 12), "Bad peering");
+}
diff --git a/node/src/endpoint_gossip/mod.rs b/node/src/endpoint_gossip/mod.rs
new file mode 100644
index 0000000000000000000000000000000000000000..593ecc0e74ab8de4982b811a9a725191a02cd2e7
--- /dev/null
+++ b/node/src/endpoint_gossip/mod.rs
@@ -0,0 +1,110 @@
+pub(crate) mod handler;
+pub(crate) mod rpc;
+#[cfg(test)]
+mod tests;
+mod types;
+
+use crate::endpoint_gossip::duniter_peering_protocol_name::NAME;
+use codec::{Decode, Encode};
+use sc_network::{
+    config::{PeerStoreProvider, SetConfig},
+    types::ProtocolName,
+    NetworkBackend, NotificationMetrics, NotificationService, MAX_RESPONSE_SIZE,
+};
+use serde::{Deserialize, Serialize};
+use sp_api::__private::BlockT;
+use std::{sync::Arc, time};
+
+pub mod well_known_endpoint_types {
+    pub const RPC: &str = "rpc";
+    pub const SQUID: &str = "squid";
+}
+
+#[derive(Debug, Encode, Decode)]
+enum EndpointMsg {
+    /// RPC endpoint of Duniter
+    RpcEndpoint(String),
+    /// GraphQL endpoint of Squid
+    SquidEndpoint(String),
+}
+
+pub struct DuniterPeeringParams {
+    /// Handle that is used to communicate with `sc_network::Notifications`.
+    pub notification_service: Box<dyn NotificationService>,
+}
+
+/// Maximum allowed size for a transactions notification.
+pub(crate) const MAX_GOSSIP_SIZE: u64 = MAX_RESPONSE_SIZE;
+
+/// Interval at which we propagate gossips;
+pub(crate) const PROPAGATE_TIMEOUT: time::Duration = time::Duration::from_secs(1);
+
+pub mod duniter_peering_protocol_name {
+
+    pub(crate) const NAME: &str = "duniter-peerings/1";
+}
+
+impl DuniterPeeringParams {
+    /// Create a new instance.
+    pub fn new<
+        Hash: AsRef<[u8]>,
+        Block: BlockT,
+        Net: NetworkBackend<Block, <Block as BlockT>::Hash>,
+    >(
+        genesis_hash: Hash,
+        fork_id: Option<&str>,
+        metrics: NotificationMetrics,
+        peer_store_handle: Arc<dyn PeerStoreProvider>,
+    ) -> (Self, Net::NotificationProtocolConfig) {
+        let genesis_hash = genesis_hash.as_ref();
+        let protocol_name: ProtocolName = if let Some(fork_id) = fork_id {
+            format!(
+                "/{}/{}/{}",
+                array_bytes::bytes2hex("", genesis_hash),
+                fork_id,
+                NAME,
+            )
+        } else {
+            format!("/{}/{}", array_bytes::bytes2hex("", genesis_hash), NAME)
+        }
+        .into();
+        let (config, notification_service) = Net::notification_config(
+            protocol_name.clone(),
+            vec![format!("/{}/{}", array_bytes::bytes2hex("", genesis_hash), NAME).into()],
+            MAX_GOSSIP_SIZE,
+            None,
+            // Default config, allowing some non-reserved nodes to connect
+            SetConfig::default(),
+            metrics,
+            peer_store_handle,
+        );
+
+        (
+            Self {
+                notification_service,
+            },
+            config,
+        )
+    }
+}
+
+/// Peer information
+#[derive(Debug)]
+struct Peer {
+    /// Holds a set of transactions known to this peer.
+    known_peering: Option<Peering>,
+    sent_peering: bool,
+}
+
+#[derive(Encode, Decode, Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
+pub struct DuniterEndpoint {
+    /// The name of the endpoint (e.g. "rpc" or "squid") are well-known names
+    pub protocol: String,
+    /// The endpoint itself (e.g. "squid.example.com/v1/graphql")
+    pub address: String,
+}
+
+#[derive(Encode, Decode, Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
+pub struct Peering {
+    endpoints: Vec<DuniterEndpoint>,
+}
diff --git a/node/src/endpoint_gossip/rpc/api.rs b/node/src/endpoint_gossip/rpc/api.rs
new file mode 100644
index 0000000000000000000000000000000000000000..e459c4d25c6958d16d6aefa1c00d2462b191d43b
--- /dev/null
+++ b/node/src/endpoint_gossip/rpc/api.rs
@@ -0,0 +1,38 @@
+//! # Duniter Peering RPC API
+//!
+//! Exposes the `duniter_peerings` RPC method.
+
+use crate::endpoint_gossip::rpc::{data::DuniterPeeringsData, state::DuniterPeeringsState};
+use jsonrpsee::{core::async_trait, proc_macros::rpc, Extensions};
+use sc_consensus_babe_rpc::Error;
+
+/// The exposed RPC methods
+#[rpc(client, server)]
+pub trait DuniterPeeringRpcApi {
+    /// Returns the known peerings list received by network gossips
+    #[method(name = "duniter_peerings", with_extensions)]
+    async fn duniter_peerings(&self) -> Result<Option<DuniterPeeringsData>, Error>;
+}
+
+/// API implementation
+pub struct DuniterPeeringRpcApiImpl {
+    shared_peer_state: DuniterPeeringsState,
+}
+
+impl DuniterPeeringRpcApiImpl {
+    /// Creates a new instance of the Duniter Peering Rpc handler.
+    pub fn new(shared_peer_state: DuniterPeeringsState) -> Self {
+        Self { shared_peer_state }
+    }
+}
+
+#[async_trait]
+impl DuniterPeeringRpcApiServer for DuniterPeeringRpcApiImpl {
+    async fn duniter_peerings(
+        &self,
+        _ext: &Extensions,
+    ) -> Result<Option<DuniterPeeringsData>, Error> {
+        let option = self.shared_peer_state.peer_state();
+        Ok(option)
+    }
+}
diff --git a/node/src/endpoint_gossip/rpc/data.rs b/node/src/endpoint_gossip/rpc/data.rs
new file mode 100644
index 0000000000000000000000000000000000000000..e6752dbf681805b996ae99643a19d8ac4720f064
--- /dev/null
+++ b/node/src/endpoint_gossip/rpc/data.rs
@@ -0,0 +1,15 @@
+use crate::endpoint_gossip::rpc::state::PeeringWithId;
+use jsonrpsee::core::Serialize;
+use serde::Deserialize;
+
+#[derive(PartialEq, Eq, Clone, Serialize, Deserialize)]
+#[cfg_attr(test, derive(Debug))]
+pub struct DuniterPeeringsData {
+    pub peerings: Vec<PeeringWithId>,
+}
+
+impl DuniterPeeringsData {
+    pub fn push(&mut self, peering: PeeringWithId) {
+        self.peerings.push(peering);
+    }
+}
diff --git a/node/src/endpoint_gossip/rpc/mod.rs b/node/src/endpoint_gossip/rpc/mod.rs
new file mode 100644
index 0000000000000000000000000000000000000000..0b033946efd7e5078d141a6e0fe9265c0fdf2bcf
--- /dev/null
+++ b/node/src/endpoint_gossip/rpc/mod.rs
@@ -0,0 +1,43 @@
+//! # RPC for peering
+//!
+//! This module gathers all known peering documents for connected peers in memory and provides
+//! an RPC interface to query them.
+//!
+//! ## RPC methods
+//!
+//! Currently, only one RPC method is available to query the currently known peerings.
+//! In the future, the RPC interface could add methods to dynamically change the current node's peering
+//! without restarting the node.
+//!
+//! ### `duniter_peerings`
+//!
+//! Returns the known peerings list received by network gossips.
+//!
+//! ```json
+//! {
+//!     "jsonrpc": "2.0",
+//!     "id": 0,
+//!     "result": {
+//!         "peers": [
+//!             {
+//!                 "endpoints": [
+//!                     "/rpc/wss://gdev.example.com",
+//!                     "/squid/https://squid.gdev.gyroi.de/v1/graphql"
+//!                 ]
+//!             },
+//!             {
+//!                 "endpoints": [
+//!                     "/rpc/ws://gdev.example.com:9944"
+//!                 ]
+//!             }
+//!         ]
+//!     }
+//! }
+//! ```
+//!
+pub mod api;
+pub mod data;
+pub mod state;
+
+#[cfg(test)]
+mod tests;
diff --git a/node/src/endpoint_gossip/rpc/state.rs b/node/src/endpoint_gossip/rpc/state.rs
new file mode 100644
index 0000000000000000000000000000000000000000..b51d0a691eab9a415334af50fff8759a657a339e
--- /dev/null
+++ b/node/src/endpoint_gossip/rpc/state.rs
@@ -0,0 +1,75 @@
+use crate::endpoint_gossip::{
+    handler::DuniterPeeringEvent, rpc::data::DuniterPeeringsData, DuniterEndpoint,
+};
+use codec::{Decode, Encode};
+use futures::StreamExt;
+use jsonrpsee::core::Serialize;
+use parking_lot::RwLock;
+use sc_utils::mpsc::{tracing_unbounded, TracingUnboundedSender};
+use serde::Deserialize;
+use std::sync::Arc;
+
+/// A struct to hold a peer endpoints along with its id for RPC exposure.
+#[derive(Encode, Decode, Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
+pub struct PeeringWithId {
+    pub peer_id: String,
+    pub endpoints: Vec<DuniterEndpoint>,
+}
+
+#[derive(Clone)]
+pub struct DuniterPeeringsState {
+    inner: Arc<RwLock<Option<Box<DuniterPeeringsData>>>>,
+}
+
+/// Dummy CRUD operations for the state to be exposed, plus a listening sink to be notified of
+/// network events and automatically insert/remove peers from the state.
+impl DuniterPeeringsState {
+    pub fn empty() -> Self {
+        Self {
+            inner: Arc::new(RwLock::new(Some(Box::new(DuniterPeeringsData {
+                peerings: Vec::new(),
+            })))),
+        }
+    }
+
+    pub fn insert(&self, peering: PeeringWithId) -> &Self {
+        self.inner.write().as_mut().map(|vs| {
+            vs.peerings.push(peering);
+        });
+        &self
+    }
+
+    pub fn remove(&self, peer_id: String) -> &Self {
+        self.inner.write().as_mut().map(|vs| {
+            vs.peerings.retain(|p| p.peer_id != peer_id);
+        });
+        &self
+    }
+
+    pub fn peer_state(&self) -> Option<DuniterPeeringsData> {
+        self.inner.read().as_ref().map(|vs| vs.as_ref().clone())
+    }
+
+    /// Creates a channel for binding to the network events.
+    pub fn listen(&self) -> TracingUnboundedSender<DuniterPeeringEvent> {
+        let (sink, mut stream) = tracing_unbounded("mpsc_duniter_peering_rpc_stream", 1_000);
+        let state = self.clone();
+        tokio::spawn(async move {
+            while let Some(event) = stream.next().await {
+                match event {
+                    DuniterPeeringEvent::GoodPeering(who, peering) => {
+                        state.insert(PeeringWithId {
+                            peer_id: who.to_base58(),
+                            endpoints: peering.endpoints,
+                        });
+                    }
+                    DuniterPeeringEvent::StreamClosed(who) => {
+                        state.remove(who.to_base58());
+                    }
+                    _ => {}
+                }
+            }
+        });
+        sink
+    }
+}
diff --git a/node/src/endpoint_gossip/rpc/tests.rs b/node/src/endpoint_gossip/rpc/tests.rs
new file mode 100644
index 0000000000000000000000000000000000000000..570c83d96701b5cad1b35567f628b78c78e39c5d
--- /dev/null
+++ b/node/src/endpoint_gossip/rpc/tests.rs
@@ -0,0 +1,64 @@
+use crate::endpoint_gossip::{
+    rpc::{
+        api::{DuniterPeeringRpcApiImpl, DuniterPeeringRpcApiServer},
+        state::{DuniterPeeringsState, PeeringWithId},
+    },
+    well_known_endpoint_types::{RPC, SQUID},
+    DuniterEndpoint,
+};
+use jsonrpsee::RpcModule;
+
+#[tokio::test]
+async fn empty_peers_rpc_handler() {
+    let rpc = setup_io_handler();
+    let expected_response = r#"{"jsonrpc":"2.0","id":0,"result":{"peerings":[]}}"#.to_string();
+    let request = r#"{"jsonrpc":"2.0","method":"duniter_peerings","params":[],"id":0}"#;
+    let (response, _) = rpc.raw_json_request(&request, 1).await.unwrap();
+
+    assert_eq!(expected_response, response);
+}
+
+#[tokio::test]
+async fn expose_known_peers() {
+    let rpc = setup_new_rpc_with_initial_peerings(vec![
+        PeeringWithId {
+            peer_id: "12D3KooWRkDXunbB64VegYPCQaitcgtdtEtbsbd7f19nsS7aMjDp".into(),
+            endpoints: vec![
+                DuniterEndpoint {
+                    protocol: RPC.into(),
+                    address: "/rpc/wss://gdev.example.com".into(),
+                },
+                DuniterEndpoint {
+                    protocol: SQUID.into(),
+                    address: "/squid/https://squid.gdev.gyroi.de/v1/graphql".into(),
+                },
+            ],
+        },
+        PeeringWithId {
+            peer_id: "12D3KooWFiUBo3Kjiryvrpz8b3kfNVk7baezhab7SHdfafgY7nmN".into(),
+            endpoints: vec![DuniterEndpoint {
+                protocol: RPC.into(),
+                address: "/rpc/ws://gdev.example.com:9944".into(),
+            }],
+        },
+    ]);
+    let expected_response = r#"{"jsonrpc":"2.0","id":0,"result":{"peerings":[{"peer_id":"12D3KooWRkDXunbB64VegYPCQaitcgtdtEtbsbd7f19nsS7aMjDp","endpoints":[{"protocol":"rpc","address":"/rpc/wss://gdev.example.com"},{"protocol":"squid","address":"/squid/https://squid.gdev.gyroi.de/v1/graphql"}]},{"peer_id":"12D3KooWFiUBo3Kjiryvrpz8b3kfNVk7baezhab7SHdfafgY7nmN","endpoints":[{"protocol":"rpc","address":"/rpc/ws://gdev.example.com:9944"}]}]}}"#.to_string();
+    let request = r#"{"jsonrpc":"2.0","method":"duniter_peerings","params":[],"id":0}"#;
+    let (response, _) = rpc.raw_json_request(&request, 1).await.unwrap();
+
+    assert_eq!(expected_response, response);
+}
+
+fn setup_io_handler() -> RpcModule<DuniterPeeringRpcApiImpl> {
+    DuniterPeeringRpcApiImpl::new(DuniterPeeringsState::empty()).into_rpc()
+}
+
+fn setup_new_rpc_with_initial_peerings(
+    peers: Vec<PeeringWithId>,
+) -> RpcModule<DuniterPeeringRpcApiImpl> {
+    let state = DuniterPeeringsState::empty();
+    for peer in peers {
+        state.insert(peer);
+    }
+    DuniterPeeringRpcApiImpl::new(state).into_rpc()
+}
diff --git a/node/src/endpoint_gossip/tests.rs b/node/src/endpoint_gossip/tests.rs
new file mode 100644
index 0000000000000000000000000000000000000000..57e80213ab4cfd7801b7656091349a8f5480c982
--- /dev/null
+++ b/node/src/endpoint_gossip/tests.rs
@@ -0,0 +1,343 @@
+use crate::{
+    endpoint_gossip,
+    endpoint_gossip::{
+        duniter_peering_protocol_name,
+        handler::{DuniterPeeringCommand, DuniterPeeringEvent},
+        well_known_endpoint_types::RPC,
+        DuniterEndpoint, Peering,
+    },
+};
+use futures::{future, stream, FutureExt, StreamExt};
+use log::{debug, warn};
+use parking_lot::{Mutex, RwLock};
+use sc_consensus::{
+    BlockCheckParams, BlockImport, BlockImportParams, BoxJustificationImport, ImportResult,
+    ImportedAux,
+};
+use sc_network::{NetworkStateInfo, ObservedRole, PeerId};
+use sc_network_test::{
+    Block, BlockImportAdapter, FullPeerConfig, PassThroughVerifier, PeersClient, TestNetFactory,
+};
+use sc_utils::mpsc::{tracing_unbounded, TracingUnboundedReceiver, TracingUnboundedSender};
+use sp_api::__private::BlockT;
+use sp_consensus::Error as ConsensusError;
+use sp_runtime::traits::Header;
+use std::{future::Future, sync::Arc, task::Poll, time::Duration};
+
+#[tokio::test]
+async fn peering_is_forwarded_and_only_once_per_connection() {
+    let _ = env_logger::try_init();
+    let authorities_count = 3;
+    let full_count = 1;
+    let total_peers = authorities_count + full_count;
+    let mut net = DuniterPeeringTestNet::new(authorities_count, full_count);
+    tokio::spawn(start_network(&mut net, total_peers));
+    let net = Arc::new(Mutex::new(net));
+
+    // make sure the network is ready (each peering is received by all other peers)
+    let wait_for_all_peering_notifications =
+        watch_events_and_wait_for_all_peerings(total_peers, &net);
+    let wait_for = futures::future::join_all(wait_for_all_peering_notifications).map(|_| ());
+    tokio::time::timeout(Duration::from_secs(5), run_until_complete(wait_for, &net))
+        .await
+        .unwrap();
+
+    // rule: only one peering is accepted per connection (disconnecting/restarting allows to change the peering value)
+    let already_received = ensure_only_one_peering_is_accepted(&net);
+    tokio::time::timeout(
+        Duration::from_secs(5),
+        run_until_complete(already_received, &net),
+    )
+    .await
+    .unwrap();
+}
+
+fn ensure_only_one_peering_is_accepted(
+    net: &Arc<Mutex<DuniterPeeringTestNet>>,
+) -> impl Future<Output = ()> {
+    let command_0 = net.lock().peer_commands[0].clone();
+    let stream1 = net.lock().peer_streams[1].clone();
+    let peer_id_0 = net.lock().peer_ids[0].clone();
+    let peer_id_1 = net.lock().peer_ids[1].clone();
+    let already_received = async move {
+        while let Some(event) = stream1.write().next().await {
+            match event {
+                DuniterPeeringEvent::AlreadyReceivedPeering(peer) => {
+                    if peer == peer_id_0 {
+                        // We did receive the peering from peer 0
+                        break;
+                    }
+                }
+                _ => {}
+            }
+        }
+    };
+    let already_received = futures::future::join_all(vec![already_received]).map(|_| ());
+    command_0
+        .unbounded_send(DuniterPeeringCommand::SendPeering(
+            peer_id_1,
+            Peering {
+                endpoints: vec![DuniterEndpoint {
+                    protocol: RPC.into(),
+                    address: "gdev.example.com:9944".into(),
+                }],
+            },
+        ))
+        .unwrap();
+    already_received
+}
+
+fn watch_events_and_wait_for_all_peerings(
+    total_peers: usize,
+    net: &Arc<Mutex<DuniterPeeringTestNet>>,
+) -> Vec<impl Future<Output = ()> + Sized> {
+    let mut peering_notifications = Vec::new();
+
+    for peer_id in 0..total_peers {
+        let local_peer_id = net.lock().peer_ids[peer_id];
+        let stream = net.lock().peer_streams[peer_id].clone();
+        peering_notifications.push(async move {
+            let mut identified = 0;
+            while let Some(event) = stream.write().next().await {
+                debug_event(event.clone(), local_peer_id);
+                match event {
+                    DuniterPeeringEvent::GoodPeering(peer, _) => {
+                        debug!(target: "duniter-libp2p", "[{}] Received peering from {}",local_peer_id, peer);
+                        identified += 1;
+                        if identified == (total_peers - 1) {
+                            // all peers identified
+                            break;
+                        }
+                    },
+                    _ => {}
+                }
+            }
+            warn!("All peers sent their peering");
+        })
+    }
+    peering_notifications
+}
+
+fn debug_event(event: DuniterPeeringEvent, local_peer_id: PeerId) {
+    match event {
+        DuniterPeeringEvent::StreamOpened(peer, role) => {
+            debug!(target: "duniter-libp2p", "[{}] Peer {peer} connected with role {}", local_peer_id, observed_role_to_str(role));
+        }
+        DuniterPeeringEvent::StreamValidation(peer, result) => {
+            debug!(target: "duniter-libp2p", "[{}] Validating inbound substream from {peer} with result {}", local_peer_id, result);
+        }
+        DuniterPeeringEvent::StreamClosed(peer) => {
+            debug!(target: "duniter-libp2p", "[{}] Peer {peer} disconnected", local_peer_id);
+        }
+        DuniterPeeringEvent::GossipReceived(peer, success) => {
+            if success {
+                debug!(target: "duniter-libp2p", "[{}] Received peering message from {peer}", local_peer_id);
+            } else {
+                debug!(target: "duniter-libp2p", "[{}] Failed to receive peering message from {peer}", local_peer_id);
+            }
+        }
+        DuniterPeeringEvent::GoodPeering(peer, _) => {
+            debug!(target: "duniter-libp2p", "[{}] Received peering from {}", local_peer_id, peer);
+        }
+        DuniterPeeringEvent::AlreadyReceivedPeering(peer) => {
+            debug!(target: "duniter-libp2p", "[{}] Already received peering from {}", local_peer_id, peer);
+            panic!("Received peering from the same peer twice");
+        }
+        DuniterPeeringEvent::SelfPeeringPropagationFailed(peer, _peering, e) => {
+            debug!(target: "duniter-libp2p", "[{}] Failed to propagate self peering to {}: {}", local_peer_id, peer, e);
+            panic!("Failed to propagate self peering");
+        }
+        DuniterPeeringEvent::SelfPeeringPropagationSuccess(peer, _peering) => {
+            debug!(target: "duniter-libp2p", "[{}] Successfully propagated self peering to {}", local_peer_id, peer);
+        }
+    }
+}
+
+fn observed_role_to_str(role: ObservedRole) -> &'static str {
+    match role {
+        ObservedRole::Authority => "Authority",
+        ObservedRole::Full => "Full",
+        ObservedRole::Light => "Light",
+    }
+}
+
+// Spawns duniter nodes. Returns a future to spawn on the runtime.
+fn start_network(net: &mut DuniterPeeringTestNet, peers: usize) -> impl Future<Output = ()> {
+    let nodes = stream::FuturesUnordered::new();
+
+    for peer_id in 0..peers {
+        let net_service = net.peers[peer_id].network_service().clone();
+        net.peer_ids.push(net_service.local_peer_id().clone());
+        let notification_service = net.peers[peer_id]
+            .take_notification_service(&format!("/{}", duniter_peering_protocol_name::NAME).into())
+            .unwrap();
+
+        let (rpc_sink, stream) = tracing_unbounded("mpsc_duniter_gossip_peering_test", 100_000);
+        let (command_tx, command_rx) =
+            tracing_unbounded("mpsc_duniter_gossip_peering_test_command", 100_000);
+
+        let handler = endpoint_gossip::handler::build::<Block, _>(
+            notification_service,
+            net_service,
+            rpc_sink,
+            Some(command_rx),
+            vec![],
+        );
+        // To send external commands to the handler (for tests or RPC commands).
+        net.peer_streams.push(Arc::new(RwLock::new(stream)));
+        net.peer_commands.push(command_tx);
+        let node = handler.run();
+
+        fn assert_send<T: Send>(_: &T) {}
+        assert_send(&node);
+
+        nodes.push(node);
+    }
+
+    nodes.for_each(|_| async move {})
+}
+
+#[derive(Default)]
+struct DuniterPeeringTestNet {
+    // Peers
+    peers: Vec<DuniterPeeringPeer>,
+    // IDs of the peers
+    peer_ids: Vec<PeerId>,
+    // RX of the gossip events
+    peer_streams: Vec<Arc<RwLock<TracingUnboundedReceiver<DuniterPeeringEvent>>>>,
+    // TX to drive the handler (for tests or configuration)
+    peer_commands: Vec<TracingUnboundedSender<DuniterPeeringCommand>>,
+}
+
+type DuniterPeeringPeer = sc_network_test::Peer<PeerData, DuniterTestBlockImport>;
+
+impl DuniterPeeringTestNet {
+    fn new(n_authority: usize, n_full: usize) -> Self {
+        let mut net = DuniterPeeringTestNet {
+            peers: Vec::with_capacity(n_authority + n_full),
+            peer_ids: Vec::new(),
+            peer_streams: Vec::new(),
+            peer_commands: Vec::new(),
+        };
+
+        for _ in 0..n_authority {
+            net.add_authority_peer();
+        }
+
+        for _ in 0..n_full {
+            net.add_full_peer();
+        }
+
+        net
+    }
+
+    fn add_authority_peer(&mut self) {
+        self.add_full_peer_with_config(FullPeerConfig {
+            notifications_protocols: vec![
+                format!("/{}", duniter_peering_protocol_name::NAME).into()
+            ],
+            is_authority: true,
+            ..Default::default()
+        })
+    }
+}
+
+#[derive(Default)]
+struct PeerData;
+
+impl TestNetFactory for DuniterPeeringTestNet {
+    type BlockImport = DuniterTestBlockImport;
+    type PeerData = PeerData;
+    type Verifier = PassThroughVerifier;
+
+    fn make_verifier(&self, _client: PeersClient, _: &PeerData) -> Self::Verifier {
+        PassThroughVerifier::new(false) // use non-instant finality.
+    }
+
+    fn peer(&mut self, i: usize) -> &mut DuniterPeeringPeer {
+        &mut self.peers[i]
+    }
+
+    fn peers(&self) -> &Vec<DuniterPeeringPeer> {
+        &self.peers
+    }
+
+    fn peers_mut(&mut self) -> &mut Vec<DuniterPeeringPeer> {
+        &mut self.peers
+    }
+
+    fn mut_peers<F: FnOnce(&mut Vec<DuniterPeeringPeer>)>(&mut self, closure: F) {
+        closure(&mut self.peers);
+    }
+
+    fn make_block_import(
+        &self,
+        _client: PeersClient,
+    ) -> (
+        BlockImportAdapter<Self::BlockImport>,
+        Option<BoxJustificationImport<Block>>,
+        Self::PeerData,
+    ) {
+        (
+            BlockImportAdapter::new(DuniterTestBlockImport),
+            None,
+            PeerData::default(),
+        )
+    }
+
+    fn add_full_peer(&mut self) {
+        self.add_full_peer_with_config(FullPeerConfig {
+            notifications_protocols: vec![
+                format!("/{}", duniter_peering_protocol_name::NAME).into()
+            ],
+            is_authority: false,
+            ..Default::default()
+        })
+    }
+}
+
+async fn run_until_complete(future: impl Future + Unpin, net: &Arc<Mutex<DuniterPeeringTestNet>>) {
+    let drive_to_completion = futures::future::poll_fn(|cx| {
+        net.lock().poll(cx);
+        Poll::<()>::Pending
+    });
+    future::select(future, drive_to_completion).await;
+}
+
+#[derive(Clone)]
+struct DuniterTestBlockImport;
+
+/// Inspired by GrandpaBlockImport
+#[async_trait::async_trait]
+impl<Block: BlockT> BlockImport<Block> for DuniterTestBlockImport {
+    type Error = ConsensusError;
+
+    /// Fake check block, always succeeds.
+    async fn check_block(
+        &self,
+        _block: BlockCheckParams<Block>,
+    ) -> Result<ImportResult, Self::Error> {
+        Ok(ImportResult::Imported(ImportedAux {
+            is_new_best: true,
+            bad_justification: false,
+            clear_justification_requests: false,
+            header_only: false,
+            needs_justification: false,
+        }))
+    }
+
+    /// Fake import block, always succeeds.
+    async fn import_block(
+        &self,
+        block: BlockImportParams<Block>,
+    ) -> Result<ImportResult, Self::Error> {
+        debug!("Importing block #{}", block.header.number());
+        Ok(ImportResult::Imported(ImportedAux {
+            is_new_best: true,
+            bad_justification: false,
+            clear_justification_requests: false,
+            header_only: false,
+            needs_justification: false,
+        }))
+    }
+}
diff --git a/node/src/endpoint_gossip/types/mod.rs b/node/src/endpoint_gossip/types/mod.rs
new file mode 100644
index 0000000000000000000000000000000000000000..a82ab6544898a848c5990b3bba1694059eebeb50
--- /dev/null
+++ b/node/src/endpoint_gossip/types/mod.rs
@@ -0,0 +1 @@
+pub mod validation_result;
diff --git a/node/src/endpoint_gossip/types/validation_result.rs b/node/src/endpoint_gossip/types/validation_result.rs
new file mode 100644
index 0000000000000000000000000000000000000000..0ffcee299b1f3315ad270484304a63e2d06332e8
--- /dev/null
+++ b/node/src/endpoint_gossip/types/validation_result.rs
@@ -0,0 +1,39 @@
+use sc_network::service::traits::ValidationResult;
+use std::fmt::Display;
+
+/// Clonable version of sc_network::service::traits::ValidationResult
+#[derive(Debug, Clone, PartialEq, Eq)]
+pub enum DuniterStreamValidationResult {
+    /// Accept inbound substream.
+    Accept,
+
+    /// Reject inbound substream.
+    Reject,
+}
+
+impl Display for DuniterStreamValidationResult {
+    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+        match self {
+            DuniterStreamValidationResult::Accept => write!(f, "Accept"),
+            DuniterStreamValidationResult::Reject => write!(f, "Reject"),
+        }
+    }
+}
+
+impl From<ValidationResult> for DuniterStreamValidationResult {
+    fn from(result: ValidationResult) -> Self {
+        match result {
+            ValidationResult::Accept => DuniterStreamValidationResult::Accept,
+            ValidationResult::Reject => DuniterStreamValidationResult::Reject,
+        }
+    }
+}
+
+impl From<DuniterStreamValidationResult> for ValidationResult {
+    fn from(result: DuniterStreamValidationResult) -> Self {
+        match result {
+            DuniterStreamValidationResult::Accept => ValidationResult::Accept,
+            DuniterStreamValidationResult::Reject => ValidationResult::Reject,
+        }
+    }
+}
diff --git a/node/src/lib.rs b/node/src/lib.rs
index 2e557430013a21a5918a9ea56e3f4decfc38d470..be194b480d4ef9b256b3be182246855eaf35b082 100644
--- a/node/src/lib.rs
+++ b/node/src/lib.rs
@@ -65,5 +65,6 @@
 pub mod chain_spec;
 pub mod cli;
 pub mod command;
+pub mod endpoint_gossip;
 pub mod rpc;
 pub mod service;
diff --git a/node/src/main.rs b/node/src/main.rs
index f27af66f78d15bfd3f72adb6cedf9b9251bbc7b4..90e8eaff053f330c0560384156f293063b718bd7 100644
--- a/node/src/main.rs
+++ b/node/src/main.rs
@@ -24,6 +24,7 @@ mod chain_spec;
 mod service;
 pub(crate) mod cli;
 mod command;
+mod endpoint_gossip;
 mod rpc;
 
 fn main() -> sc_cli::Result<()> {
diff --git a/node/src/rpc.rs b/node/src/rpc.rs
index 2b05e5b5f8dc66a321c9ab66e887f822bb159559..4bda3af5b819cf5029941d512d1eeed5bf8701c6 100644
--- a/node/src/rpc.rs
+++ b/node/src/rpc.rs
@@ -22,6 +22,7 @@
 
 #![warn(missing_docs)]
 
+use crate::endpoint_gossip::rpc::{api::DuniterPeeringRpcApiServer, state::DuniterPeeringsState};
 use common_runtime::{AccountId, Balance, Block, BlockNumber, Hash, Index};
 use jsonrpsee::RpcModule;
 use sc_consensus_babe::{BabeApi, BabeWorkerHandle};
@@ -61,6 +62,13 @@ pub struct GrandpaDeps<B> {
     pub finality_provider: Arc<FinalityProofProvider<B, Block>>,
 }
 
+/// Dependencies for DuniterPeering
+#[derive(Clone)]
+pub struct DuniterPeeringRpcModuleDeps {
+    /// The state of the DuniterPeering RPC module which will be exposed.
+    pub state: DuniterPeeringsState,
+}
+
 /// Full client dependencies.
 pub struct FullDeps<C, P, SC, B> {
     /// The client instance to use.
@@ -77,6 +85,8 @@ pub struct FullDeps<C, P, SC, B> {
     pub babe: Option<BabeDeps>,
     /// GRANDPA specific dependencies.
     pub grandpa: GrandpaDeps<B>,
+    /// DuniterPeering specific dependencies.
+    pub duniter_peering: DuniterPeeringRpcModuleDeps,
 }
 
 /// Instantiate all full RPC extensions.
@@ -109,6 +119,7 @@ where
         command_sink_opt,
         babe,
         grandpa,
+        duniter_peering: endpoint_gossip,
     } = deps;
 
     if let Some(babe) = babe {
@@ -140,7 +151,7 @@ where
     )?;
 
     module.merge(System::new(client.clone(), pool).into_rpc())?;
-    module.merge(TransactionPayment::new(client).into_rpc())?;
+    module.merge(TransactionPayment::new(client.clone()).into_rpc())?;
     if let Some(command_sink) = command_sink_opt {
         // We provide the rpc handler with the sending end of the channel to allow the rpc
         // send EngineCommands to the background block authorship task.
@@ -151,6 +162,10 @@ where
     // `YourRpcStruct` should have a reference to a client, which is needed
     // to call into the runtime.
     // `module.merge(YourRpcTrait::into_rpc(YourRpcStruct::new(ReferenceToClient, ...)))?;`
+    module.merge(
+        crate::endpoint_gossip::rpc::api::DuniterPeeringRpcApiImpl::new(endpoint_gossip.state)
+            .into_rpc(),
+    )?;
 
     Ok(module)
 }
diff --git a/node/src/service.rs b/node/src/service.rs
index c28febc73a395800d2410c7363f8585e1237db02..c5fc435f73b3d3008e3ce2a8d5aab517db8696f9 100644
--- a/node/src/service.rs
+++ b/node/src/service.rs
@@ -19,6 +19,14 @@
 pub mod client;
 
 use self::client::{Client, ClientHandle, RuntimeApiCollection};
+use crate::{
+    endpoint_gossip::{
+        rpc::state::DuniterPeeringsState,
+        well_known_endpoint_types::{RPC, SQUID},
+        DuniterEndpoint,
+    },
+    rpc::DuniterPeeringRpcModuleDeps,
+};
 use async_io::Timer;
 use common_runtime::Block;
 use futures::{Stream, StreamExt};
@@ -119,15 +127,19 @@ pub fn new_chain_ops(
     ),
     ServiceError,
 > {
-    let PartialComponents {
-        client,
-        backend,
-        import_queue,
-        task_manager,
-        ..
-    } = new_partial::<runtime_executor::runtime::RuntimeApi, runtime_executor::Executor>(
+    let (
+        PartialComponents {
+            client,
+            backend,
+            import_queue,
+            task_manager,
+            ..
+        },
+        _duniter_config,
+    ) = new_partial::<runtime_executor::runtime::RuntimeApi, runtime_executor::Executor>(
         config,
         manual_consensus,
+        Default::default(),
     )?;
     Ok((
         Arc::new(Client::Client(client)),
@@ -148,29 +160,33 @@ type FullGrandpaBlockImport<RuntimeApi, Executor> = sc_consensus_grandpa::Grandp
 pub fn new_partial<RuntimeApi, Executor>(
     config: &Configuration,
     consensus_manual: bool,
+    duniter_options: crate::cli::DuniterConfigExtension,
 ) -> Result<
-    sc_service::PartialComponents<
-        FullClient<RuntimeApi, Executor>,
-        FullBackend,
-        FullSelectChain,
-        sc_consensus::DefaultImportQueue<Block>,
-        sc_transaction_pool::TransactionPoolWrapper<Block, FullClient<RuntimeApi, Executor>>,
-        (
-            sc_consensus_babe::BabeBlockImport<
-                Block,
-                FullClient<RuntimeApi, Executor>,
-                FullGrandpaBlockImport<RuntimeApi, Executor>,
-            >,
-            sc_consensus_babe::BabeLink<Block>,
-            Option<sc_consensus_babe::BabeWorkerHandle<Block>>,
-            sc_consensus_grandpa::LinkHalf<
-                Block,
-                FullClient<RuntimeApi, Executor>,
-                FullSelectChain,
-            >,
-            Option<Telemetry>,
-        ),
-    >,
+    (
+        sc_service::PartialComponents<
+            FullClient<RuntimeApi, Executor>,
+            FullBackend,
+            FullSelectChain,
+            sc_consensus::DefaultImportQueue<Block>,
+            sc_transaction_pool::TransactionPoolWrapper<Block, FullClient<RuntimeApi, Executor>>,
+            (
+                sc_consensus_babe::BabeBlockImport<
+                    Block,
+                    FullClient<RuntimeApi, Executor>,
+                    FullGrandpaBlockImport<RuntimeApi, Executor>,
+                >,
+                sc_consensus_babe::BabeLink<Block>,
+                Option<sc_consensus_babe::BabeWorkerHandle<Block>>,
+                sc_consensus_grandpa::LinkHalf<
+                    Block,
+                    FullClient<RuntimeApi, Executor>,
+                    FullSelectChain,
+                >,
+                Option<Telemetry>,
+            ),
+        >,
+        crate::cli::DuniterConfigExtension,
+    ),
     ServiceError,
 >
 where
@@ -281,22 +297,25 @@ where
         (queue, Some(handle))
     };
 
-    Ok(sc_service::PartialComponents {
-        client,
-        backend,
-        task_manager,
-        import_queue,
-        keystore_container,
-        select_chain,
-        transaction_pool,
-        other: (
-            babe_block_import,
-            babe_link,
-            babe_worker_handle,
-            grandpa_link,
-            telemetry,
-        ),
-    })
+    Ok((
+        sc_service::PartialComponents {
+            client,
+            backend,
+            task_manager,
+            import_queue,
+            keystore_container,
+            select_chain,
+            transaction_pool,
+            other: (
+                babe_block_import,
+                babe_link,
+                babe_worker_handle,
+                grandpa_link,
+                telemetry,
+            ),
+        },
+        duniter_options,
+    ))
 }
 
 /// Builds a new service for a full client.
@@ -307,6 +326,7 @@ pub fn new_full<
 >(
     config: Configuration,
     sealing: crate::cli::Sealing,
+    duniter_options: crate::cli::DuniterConfigExtension,
 ) -> Result<TaskManager, ServiceError>
 where
     RuntimeApi: sp_api::ConstructRuntimeApi<Block, FullClient<RuntimeApi, Executor>>
@@ -317,26 +337,32 @@ where
     Executor: sc_executor::NativeExecutionDispatch + 'static,
     Executor: sc_executor::sp_wasm_interface::HostFunctions + 'static,
 {
-    let sc_service::PartialComponents {
-        client,
-        backend,
-        mut task_manager,
-        import_queue,
-        keystore_container,
-        select_chain,
-        transaction_pool,
-        other: (block_import, babe_link, babe_worker_handle, grandpa_link, mut telemetry),
-    } = new_partial::<RuntimeApi, Executor>(&config, sealing.is_manual_consensus())?;
-
-    let grandpa_protocol_name = sc_consensus_grandpa::protocol_standard_name(
-        &client
-            .block_hash(0)
-            .ok()
-            .flatten()
-            .expect("Genesis block exists; qed"),
-        &config.chain_spec,
-    );
+    let (
+        sc_service::PartialComponents {
+            client,
+            backend,
+            mut task_manager,
+            import_queue,
+            keystore_container,
+            select_chain,
+            transaction_pool,
+            other: (block_import, babe_link, babe_worker_handle, grandpa_link, mut telemetry),
+        },
+        duniter_options,
+    ) = new_partial::<RuntimeApi, Executor>(
+        &config,
+        sealing.is_manual_consensus(),
+        duniter_options,
+    )?;
 
+    // genesis hash used in protocol names
+    let genesis_hash = client
+        .block_hash(0)
+        .ok()
+        .flatten()
+        .expect("Genesis block exists; qed");
+
+    // shared network config
     let mut net_config = sc_network::config::FullNetworkConfiguration::<
         Block,
         <Block as sp_runtime::traits::Block>::Hash,
@@ -344,20 +370,35 @@ where
     >::new(&config.network, config.prometheus_registry().cloned());
     let metrics = N::register_notification_metrics(config.prometheus_registry());
     let peer_store_handle = net_config.peer_store_handle();
+
+    // grandpa network config
+    let grandpa_protocol_name =
+        sc_consensus_grandpa::protocol_standard_name(&genesis_hash, &config.chain_spec);
     let (grandpa_protocol_config, grandpa_notification_service) =
         sc_consensus_grandpa::grandpa_peers_set_config::<_, N>(
             grandpa_protocol_name.clone(),
             metrics.clone(),
-            peer_store_handle,
+            peer_store_handle.clone(),
         );
     net_config.add_notification_protocol(grandpa_protocol_config);
 
+    let (duniter_peering_params, duniter_peering_config) =
+        crate::endpoint_gossip::DuniterPeeringParams::new::<_, Block, N>(
+            genesis_hash,
+            config.chain_spec.fork_id(),
+            metrics.clone(),
+            Arc::clone(&peer_store_handle),
+        );
+    net_config.add_notification_protocol(duniter_peering_config);
+
+    // warp sync network provider
     let warp_sync = Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new(
         backend.clone(),
         grandpa_link.shared_authority_set().clone(),
         Vec::default(),
     ));
 
+    // build network service from params
     let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) =
         sc_service::build_network(sc_service::BuildNetworkParams {
             config: &config,
@@ -372,6 +413,7 @@ where
             metrics,
         })?;
 
+    // aliases
     let role = config.role;
     let force_authoring = config.force_authoring;
     let backoff_authoring_blocks: Option<()> = None;
@@ -580,6 +622,7 @@ where
     let shared_voter_state = SharedVoterState::empty();
     let finality_proof_provider =
         FinalityProofProvider::new_for_service(backend.clone(), Some(shared_authority_set.clone()));
+    let shared_duniter_peerings_state = DuniterPeeringsState::empty();
 
     let rpc_extensions_builder = {
         let client = client.clone();
@@ -591,6 +634,7 @@ where
             keystore: keystore.clone(),
         });
         let rpc_setup = shared_voter_state.clone();
+        let state_clone = shared_duniter_peerings_state.clone();
 
         Box::new(
             move |subscription_task_executor: SubscriptionTaskExecutor| {
@@ -601,6 +645,9 @@ where
                     subscription_executor: subscription_task_executor.clone(),
                     finality_provider: finality_proof_provider.clone(),
                 };
+                let endpoint_gossip_deps = DuniterPeeringRpcModuleDeps {
+                    state: state_clone.clone(),
+                };
 
                 let deps = crate::rpc::FullDeps {
                     client: client.clone(),
@@ -608,6 +655,7 @@ where
                     select_chain: select_chain.clone(),
                     babe: babe_deps.clone(),
                     grandpa: grandpa_deps,
+                    duniter_peering: endpoint_gossip_deps,
                     command_sink_opt: command_sink_opt.clone(),
                 };
 
@@ -660,8 +708,8 @@ where
         let grandpa_config = sc_consensus_grandpa::GrandpaParams {
             config: grandpa_config,
             link: grandpa_link,
-            sync: sync_service,
-            network,
+            sync: sync_service.clone(),
+            network: network.clone(),
             voting_rule: sc_consensus_grandpa::VotingRulesBuilder::default().build(),
             prometheus_registry,
             shared_voter_state,
@@ -681,6 +729,33 @@ where
         );
     }
 
+    let mut duniter_endpoints = vec![];
+    if let Some(rpc_endoint) = duniter_options.public_rpc {
+        duniter_endpoints.push(DuniterEndpoint {
+            protocol: RPC.into(),
+            address: rpc_endoint.into(),
+        });
+    }
+    if let Some(squid_endoint) = duniter_options.public_squid {
+        duniter_endpoints.push(DuniterEndpoint {
+            protocol: SQUID.into(),
+            address: squid_endoint.into(),
+        });
+    }
+
+    task_manager.spawn_essential_handle().spawn_blocking(
+        "duniter-endpoint-gossip-handler",
+        Some("networking"),
+        crate::endpoint_gossip::handler::build::<Block, _>(
+            duniter_peering_params.notification_service,
+            network.clone(),
+            shared_duniter_peerings_state.listen(),
+            None, // We don't send command for now
+            duniter_endpoints,
+        )
+        .run(),
+    );
+
     network_starter.start_network();
 
     log::info!("***** Duniter has fully started *****");
diff --git a/resources/metadata.scale b/resources/metadata.scale
index 430bae89f08fbcf6bcf656bfc6f26516d767119b..0516a4a5b904bb8ae774cbfffa2a4e346d2e98bf 100644
Binary files a/resources/metadata.scale and b/resources/metadata.scale differ