Mithril v2517.1
Highlights
Warning
🔥 This version fixes a bug in the 2517.0 distribution which caused the Cardano node to fail during startup when using a snapshot downloaded with the Mithril client.
Make sure you are using the Mithril client CLI with version 0.12.1
.
⚠️ Breaking changes in Mithril client CLI and library as detailed in this blog post:- To fast bootstrap a Cardano node, the new
--include-ancillary
option has been added to the Cardano node database command in the Mithril client CLI. - Without this option, only final immutable files are downloaded, and the ledger state must be computed from the genesis block when the Cardano node starts.
- The
--include-ancillary
option requires the usage of an ancillary verification key (--ancillary-verification-key
orANCILLARY_VERIFICATION_KEY
) which is specified in the Networks configuration page. - Clients from distribution [
2513
] and earlier are not compatible with this change and must be updated.
- To fast bootstrap a Cardano node, the new
- Support for
Cardano node
10.3.1
in the signer and the aggregator - Support for origin tags in Mithril client library, CLI and WASM to record the origin of client requests.
- Bug fixes and performance improvements.
What's Changed
- feat: Separate location for ancillary for cardano database v1 by @Alenar in #2380
- refactor: prepare ancillary signing by @Alenar in #2393
- Chore: bump
glibc
requirement to2.35+
in one-line installer by @jpraynaud in #2387 - Docs: rotate documentation for
2513
distribution by @jpraynaud in #2390 - docs: final CHANGELOG for
2513.0
distribution by @jpraynaud in #2395 - Docs: add dev blog post for distribution
2513
by @jpraynaud in #2396 - Feat(e2e): support multiple aggregators in the e2e tests by @jpraynaud in #2378
- Docs: fix website documentation by @dlachaume in #2397
- feat: Sign ancillary files in aggregator by @Alenar in #2394
- Fix(infra): fix aggregator crash at startup in
testing-preview
network by @jpraynaud in #2399 - chore: anticipate rust
1.86
by @Alenar in #2398 - Refactor: rename
master/slave
signer registration by @jpraynaud in #2400 - Feat(infra): split ssh keys for testing/production by @jpraynaud in #2401
- chore(infra): add ssh key for 'testing' and 'production' by @turmelclem in #2404
- Organize STM - Blst multi_sig module by @curiecrypt in #2405
- Feat: record origin of client requests in metrics by @sfauvel in #2411
- CI: include
CardanoDatabase
in the backward compatibility test by @dlachaume in #2413 - Feat: include origin tag header for aggregator prover benchmark by @dlachaume in #2416
- explorer: support latest ancillary & cardano database v2 developments by @Alenar in #2418
- fix(aggregator): incorrect immutable files average and total size in cardano database v2 by @Alenar in #2419
- Docs: blog post for the Cardano node database v2 certification by @dlachaume in #2417
- Feat(infra): support
follower
aggregator in infra by @jpraynaud in #2407 - Fix: signer infra volumes configuration by @jpraynaud in #2420
- feat: Verify ancillary artifacts in client by @Alenar in #2414
- Fix aggregator path in stress test by @sfauvel in #2421
- Refactor: Simplify the configuration of commands in aggregator by @dlachaume in #2423
- Refactor: Simplify the configuration of tools/era commands in aggregator by @dlachaume in #2434
- fix(aggregator): ancillary signing on evolving files by @Alenar in #2425
- feat(aggregator): Sign ancillary with GCP Kms by @Alenar in #2431
- Simplify injection container in aggregator by @sfauvel in #2435
- Refactor: Simplify the configuration of genesis command in aggregator by @dlachaume in #2432
- Doc: update Cardano node database v2 dev blog post by @jpraynaud in #2439
- Refactor: renaming and update aggregator node documentation by @dlachaume in #2438
- refactor: shared workspace dependencies by @Alenar in #2440
- Feat: support GCP KMS ancillary signature in infrastructure by @jpraynaud in #2433
- doc(website): update cardano node boostrap page with ancillary verification by @Alenar in #2441
- Chore: update dependencies for distribution
2517
by @jpraynaud in #2443 - refactor: move SignaturePublisher to a dedicated module by @turmelclem in #2437
- Feat: Support Cardano node
10.3.1
by @jpraynaud in #2447 - test: use a in memory logger for tests that needs to check logs by @Alenar in #2442
- Docs: update CHANGELOG for
2517.0
distribution release by @jpraynaud in #2444 - Feat: support custom origin tags in infra by @jpraynaud in #2448
New Contributors
- @turmelclem made their first contribution in #2404
Full Changelog: 2513.0...2517.1
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.44 |
mithril-client | 0.12.2 |
mithril-client-cli | 0.12.1 |
mithril-client-wasm | 0.9.0 |
mithril-common | 0.5.27 |
mithril-signer | 0.2.243 |
mithril-stm | 0.3.45 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ✔ |
release-preprod | ✔ |
pre-release-preview | ✔ |
testing-preview | ⛔ |
Distributions Compatibility ⚠️
Compatibility | mithril-signer | mithril-client |
---|---|---|
2513.0 |
✔️ | ⛔ |
2506.0 |
✔️ | ⛔ |
2450.0 |
✔️ | ⛔ |
Linux Requirements
The Linux binaries target glibc
: to run them or install the .deb
packages you must have glibc
version 2.35+
installed.
Compatible systems include, but are not limited to, Ubuntu 22.04+
or Debian 12+
(Bookworm)).
Verify the authenticity of a downloaded asset
Detailed procedure to verify an asset
- Step 1: Identify the downloaded asset on your computer YOUR_ASSET_FILE
- Step 2: Download the signed checksum file from this link CHECKSUM.asc and save it in the same folder as the asset
- Step 3: In your terminal, go to the asset folder by running:
cd ***YOUR_ASSET_FOLDER***
- Step 4: Then verify the checksum of the asset by running:
sha256sum -c ./CHECKSUM.asc 2>/dev/null | grep ***YOUR_ASSET_FILE***
You must see:
./***YOUR_ASSET_FILE***: OK
- Step 5: Download the public key file from this link public-key.gpg and save it in the same folder as the asset
- Step 6: Then import the GPG public key:
gpg --import ./public-key.gpg
You must see something like:
gpg: key : public key "Input Output / Mithril <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1
- Step 7: Then verify the GPG signature of the checksum file:
gpg --verify ./CHECKSUM.asc
You must see something like:
gpg: Signature made Mon 05 Dec 2022 04:53:54 PM CET
gpg: using RSA key 35EDE9D47BBA62A2F388E655899ACD26B8BCA0D2
gpg: Good signature from "Input Output / Mithril <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 35ED E9D4 7BBA 62A2 F388 E655 899A CD26 B8BC A0D2
The signature is valid if and only if:
- there is a line with
gpg: Good signature from "Input Output / Mithril <[email protected]>"
- there is a line with
Primary key fingerprint: 73FC 4C3D FD55 DBDC 428A D2B5 BE04 3B79 FDA4 C2EE
- Step 8:
If you successfully validated all the steps of this process, then you have successfully verified the authenticity of the asset ✔️
If not, contact us at [[email protected]] and let us know of the outcome of your run of this process⚠️