Releases: input-output-hk/mithril
Unstable Development Builds
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.75 |
mithril-client | 0.12.23 |
mithril-client-cli | 0.12.23 |
mithril-client-wasm | 0.9.4 |
mithril-common | 0.6.10 |
mithril-signer | 0.2.261 |
mithril-stm | 0.4.10 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ⛔ |
release-preprod | ⛔ |
pre-release-preview | ⛔ |
testing-preview | ✔ |
Platform Support
Summary of the platforms for which pre-built binaries are provided.
Binary | Linux x64 | Linux arm64 | macOS arm64 | Windows x64 |
---|---|---|---|---|
mithril-aggregator | ✔ | ✔ ⁽*⁾ | ⛔ | ⛔ |
mithril-signer | ✔ | ✔ ⁽*⁾ | ⛔ | ⛔ |
mithril-client | ✔ | ✔ ⁽*⁾ | ✔ | ✔ |
⁽*⁾
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)).
Download a binary asset
To simplify the installation and updating of Mithril binaries, we have created a one line installer that downloads and installs the Mithril binaries for you.
This installer is available for Linux and macOS and supports the Mithril signer, Mithril aggregator, and Mithril client CLI.
Use the following commands to install the Mithril nodes:
- Download the Mithril signer in the current directory:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-signer -d unstable -p $(pwd)
- Download the Mithril client CLI in the current directory:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-client -d unstable -p $(pwd)
- Download the Mithril aggregator in the current directory:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-aggregator -d unstable -p $(pwd)
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⚠️
Download a Docker image
You can directly pull prebuilt Mithril Docker images:
Binary | Image name | URL |
---|---|---|
mithril-aggregator | mithril-aggregator:main-b76f911 | ghcr.io/input-output-hk/mithril-aggregator:main-b76f911 |
mithril-signer | mithril-signer:main-b76f911 | ghcr.io/input-output-hk/mithril-signer:main-b76f911 |
mithril-client | mithril-client:main-b76f911 | ghcr.io/input-output-hk/mithril-client:main-b76f911 |
What's Changed
- Organize STM - Module Parameters by @curiecrypt in #2553
- fix: rename artifact on wasm test failure in
Mithril Client multi-platform test
workflow. by @dlachaume in #2566 - fix: bytes codec in STM library by @jpraynaud in #2556
- feat(mithril-client lib): stabilize cardano-database-v2 by @Alenar in #2563
- Split
mithril-common
phase 2: extract Mithril ticker by @Alenar in #2565 - Split
mithril-common
phase 2: extract Mithril era by @Alenar in #2569 - Split
mithril-common
phase 2: extract Mithril cardano node chain by @Alenar in #2570 - ci: add
--locked
to clippy in check step by @Alenar in #2573 - feat: revise OpenAPI compatibility enforcement by @dlachaume in #2572
- docs: rotate documentation for
2524
distribution by @jpraynaud in #2564 - docs: final CHANGELOG for '2524.0' distribution by @jpraynaud in #2575
- docs: add dev blog post for distribution
2524
by @jpraynaud in #2576 - Docs: add blog post for UTxO-HD ledger state snapshot conversion by @dlachaume in #2560
- chore: bump
mithril-stm
dependency version constraint inmithril-common
by @jpraynaud in #2584 - fix: add missing
.md
file extension by @dlachaume in #2587 - Docs: dev blog post for Cardano database backend switch by @jpraynaud in #2583
- fix(ci): publish of wasm packages to npm when Cargo.toml version dont match package.json by @Alenar in #2588
- docs: update post for UTxO-HD ledger state snapshot converter by @jpraynaud in #2591
- feat: support bytes codec in
ProtocolKey
by @jpraynaud in #2557 - feat: enhance
tools utxo-hd snapshot-converter
Mithril client CLI command by @dlachaume in #2589 - ci: split Cardano DB download and ledger state snapshot conversion in
test-docker
job by @dlachaume in #2592 - Adding command to verify cardano database by @turmelclem in #2574
- Split
mithril-common
phase 2: extract Mithril cardano node internal database by @Alenar in #2586 - Split
mithril-common
phase 2: extract Mithril api spec by @Alenar in #2593 - Split
mithril-common
phase 2: extract Mithril test http server by @Alenar in #2594 - Remove cardano-db-v2 and make cardano-db --backend v2 stable by @turmelclem in #2595
- prettier 3.6 by @Alenar in #2601
- filip(feat): docs site redesign by @fstoqnov-iohk in #2597
- aggregator: add
/certificate/genesis
endpoint by @Alenar in #2600 - ci: reactivate
action-gh-release
v2 in CI and pre-release workflows by @dlachaume in #2603 - chore: anticipate rust
1.88
by @Alenar in #2604 - remove batch verify aggr and rename gen to generate by @curiecrypt in #2598
- filip(fix): add client side wrapper to homepage by @fstoqnov-iohk in #2605
- filip(fix): force re-render to initialise scrollY framer motion hooks by @fstoqnov-iohk in #2607
- feat: abstract KES signature process by @jpraynaud in #2606
- docsite & explorer: add
serve_static
makefile target by @Alenar in #2611 - Prepare project upgrade to Rust
2024
edition by @dlachaume in https://github.com...
Mithril v2524.0
Highlights
- Support for
Cardano node
10.4.1
in the signer and the aggregator - Support for recording client types origin (library, CLI and WASM) in the aggregator metrics.
- Unstable support for UTxO-HD snapshot converter
tools utxo-hd snapshot-converter
command in client CLI. - Unstable support for partial cardano database restoration in
cardano-database
command with--backend v2
parameter. - Bug fixes and performance improvements.
What's Changed
- Fix: websites vulnerabilities by @jpraynaud in #2453
- test(ci): add ancillary verification key and include ancillary option in
Mithril Client multi-platform test
workflow by @dlachaume in #2457 - Chore: cleanup
snapshot_store_type
by @dlachaume in #2456 - Optimize signer and aggregator state machines run interval by @Alenar in #2454
- Fix: better error handling for era reader adapter parameters in infra by @jpraynaud in #2452
- Docs: rotate documentation for
2517
distribution by @jpraynaud in #2445 - Docs: final CHANGELOG for
2517.0
distribution by @jpraynaud in #2462 - Docs: add dev blog post for distribution
2517
by @jpraynaud in #2463 - Update examples with separate ancillary download & fix post cdbv2 immutables restored statistic by @Alenar in #2449
- Feat: extend documentation tool for subcommand configurations by @dlachaume in #2455
- Fix: Apply hot fix for client restoration by @dlachaume in #2466
- Set correct package name for mithril-client-cli by @noonio in #2465
- Docs: add dev blog post for client breaking changes in
2517
by @jpraynaud in #2467 - Docs: add dev blog post for client security advisory by @jpraynaud in #2469
- Feat: implement signature publisher decorators in signer by @dlachaume in #2468
- Aggregator: Re-implement the CloudBackendUploader with gcloud-storage crate by @Alenar in #2475
- Add warning in client about ancillary files by @turmelclem in #2473
- Chore: update testing ssh keys by @jpraynaud in #2479
- aggregator: fix setting public access to files uploaded to GCP storage by @Alenar in #2480
- Docs: update dev blog post for
Cardano DB v2
activation by @jpraynaud in #2482 - Test: add Cardano node startup check to
Mithril Client multi-platform test
workflow by @dlachaume in #2476 - Fix: improve error handling in
mithril-install
script by @dlachaume in #2481 - chore: anticipate rust
1.87
by @Alenar in #2483 - Feat: implement a signature processor for DMQ by @jpraynaud in #2477
- Fix: include the two latest ledger state snapshots in the ancillary archive by @dlachaume in #2484
- Organize STM - Module participant by @curiecrypt in #2412
- Test: execute full workspace tests on macOS/Windows excluding unsupported packages by @dlachaume in #2485
- Docs: clarify networks supported Cardano node versions by @jpraynaud in #2496
- Record signatures origin in the signature processor by @turmelclem in #2489
- Fix: Simplify
TestHttpServer
Drop
logic to prevent test flakiness by @dlachaume in #2495 - Fix: chain reader client cache drop on error by @jpraynaud in #2501
- feat: read ancillary verification key from both clap arguments and configuration files by @turmelclem in #2499
- feat: add ancillary verification key in client-cli configuration files by @turmelclem in #2512
- feat: cleanup unexpected files in immutable folder after download by @Alenar in #2502
- Fix: display missing logs in
Mithril Client multi-platform test
by @dlachaume in #2513 - fix(client-cli): improve message format about fast boostrap by @turmelclem in #2514
- fix: check of unexpected file too eager on all network except devnet by @Alenar in #2517
- fix: missing
00000
immutable files with Cardano DB v2 by @jpraynaud in #2520 - feat: support in memory UTxO-HD ledger state snapshots by @Alenar in #2521
- Feat: support Cardano node
10.4
by @jpraynaud in #2498 - fix(ci): reactivate Darwin
x86_64
build in Hydra CI by @jpraynaud in #2538 - Chore: update dependencies for distribution
2524
by @jpraynaud in #2544 - Organize STM - Module Single Signature by @curiecrypt in #2545
- Organize STM - Module Aggregate Signature by @curiecrypt in #2548
- Feat: add
mithril-client
CLI command for UTxO-HD ledger state snapshot conversion by @dlachaume in #2518 - Record usage of client type in metrics by @turmelclem in #2546
- chore(infra): update ssh key for 'testing' by @turmelclem in #2555
- client-cli: merge cardano-database-v2 command into 'v1' command by @Alenar in #2547
- fix(ci): temporary enforce
softprops/action-gh-release
v2.2.2 by @Alenar in #2559 - Allow new header client type by @turmelclem in #2558
- Feat: documentation and CI tests for UTxO-HD ledger state snapshot conversion
mithril-client
CLI command by @dlachaume in #2554 - client-lib/client-cli: calibrate max parallel dl by @Alenar in #2561
- docs: update CHANGELOG for
2524.0
distribution release by @jpraynaud in #2562
New Contributors
Full Changelog: 2517.1...2524.0
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.58 |
mithril-client | 0.12.11 |
mithril-client-cli | 0.12.11 |
mithril-client-wasm | 0.9.1 |
mithril-common | 0.5.35 |
mithril-signer | 0.2.249 |
mithril-stm | 0.4.2 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ✔ |
release-preprod | ✔ |
pre-release-preview | ✔ |
testing-preview | ⛔ |
Distributions Compatibility ⚠️
Compatibility | mithril-signer | mithril-client |
---|---|---|
2517.1 |
✔️ | ✔️ |
2517.0 |
✔️ | ✔️ |
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 t...
Mithril v2524.0-pre
Highlights
- Support for
Cardano node
10.4.1
in the signer and the aggregator - Support for recording client types origin (library, CLI and WASM) in the aggregator metrics.
- Unstable support for UTxO-HD snapshot converter
tools utxo-hd snapshot-converter
command in client CLI. - Unstable support for partial cardano database restoration in
cardano-database
command with--backend v2
parameter. - Bug fixes and performance improvements.
What's Changed
- Fix: websites vulnerabilities by @jpraynaud in #2453
- test(ci): add ancillary verification key and include ancillary option in
Mithril Client multi-platform test
workflow by @dlachaume in #2457 - Chore: cleanup
snapshot_store_type
by @dlachaume in #2456 - Optimize signer and aggregator state machines run interval by @Alenar in #2454
- Fix: better error handling for era reader adapter parameters in infra by @jpraynaud in #2452
- Docs: rotate documentation for
2517
distribution by @jpraynaud in #2445 - Docs: final CHANGELOG for
2517.0
distribution by @jpraynaud in #2462 - Docs: add dev blog post for distribution
2517
by @jpraynaud in #2463 - Update examples with separate ancillary download & fix post cdbv2 immutables restored statistic by @Alenar in #2449
- Feat: extend documentation tool for subcommand configurations by @dlachaume in #2455
- Fix: Apply hot fix for client restoration by @dlachaume in #2466
- Set correct package name for mithril-client-cli by @noonio in #2465
- Docs: add dev blog post for client breaking changes in
2517
by @jpraynaud in #2467 - Docs: add dev blog post for client security advisory by @jpraynaud in #2469
- Feat: implement signature publisher decorators in signer by @dlachaume in #2468
- Aggregator: Re-implement the CloudBackendUploader with gcloud-storage crate by @Alenar in #2475
- Add warning in client about ancillary files by @turmelclem in #2473
- Chore: update testing ssh keys by @jpraynaud in #2479
- aggregator: fix setting public access to files uploaded to GCP storage by @Alenar in #2480
- Docs: update dev blog post for
Cardano DB v2
activation by @jpraynaud in #2482 - Test: add Cardano node startup check to
Mithril Client multi-platform test
workflow by @dlachaume in #2476 - Fix: improve error handling in
mithril-install
script by @dlachaume in #2481 - chore: anticipate rust
1.87
by @Alenar in #2483 - Feat: implement a signature processor for DMQ by @jpraynaud in #2477
- Fix: include the two latest ledger state snapshots in the ancillary archive by @dlachaume in #2484
- Organize STM - Module participant by @curiecrypt in #2412
- Test: execute full workspace tests on macOS/Windows excluding unsupported packages by @dlachaume in #2485
- Docs: clarify networks supported Cardano node versions by @jpraynaud in #2496
- Record signatures origin in the signature processor by @turmelclem in #2489
- Fix: Simplify
TestHttpServer
Drop
logic to prevent test flakiness by @dlachaume in #2495 - Fix: chain reader client cache drop on error by @jpraynaud in #2501
- feat: read ancillary verification key from both clap arguments and configuration files by @turmelclem in #2499
- feat: add ancillary verification key in client-cli configuration files by @turmelclem in #2512
- feat: cleanup unexpected files in immutable folder after download by @Alenar in #2502
- Fix: display missing logs in
Mithril Client multi-platform test
by @dlachaume in #2513 - fix(client-cli): improve message format about fast boostrap by @turmelclem in #2514
- fix: check of unexpected file too eager on all network except devnet by @Alenar in #2517
- fix: missing
00000
immutable files with Cardano DB v2 by @jpraynaud in #2520 - feat: support in memory UTxO-HD ledger state snapshots by @Alenar in #2521
- Feat: support Cardano node
10.4
by @jpraynaud in #2498 - fix(ci): reactivate Darwin
x86_64
build in Hydra CI by @jpraynaud in #2538 - Chore: update dependencies for distribution
2524
by @jpraynaud in #2544 - Organize STM - Module Single Signature by @curiecrypt in #2545
- Organize STM - Module Aggregate Signature by @curiecrypt in #2548
- Feat: add
mithril-client
CLI command for UTxO-HD ledger state snapshot conversion by @dlachaume in #2518 - Record usage of client type in metrics by @turmelclem in #2546
- chore(infra): update ssh key for 'testing' by @turmelclem in #2555
- client-cli: merge cardano-database-v2 command into 'v1' command by @Alenar in #2547
- fix(ci): temporary enforce
softprops/action-gh-release
v2.2.2 by @Alenar in #2559 - Allow new header client type by @turmelclem in #2558
- Feat: documentation and CI tests for UTxO-HD ledger state snapshot conversion
mithril-client
CLI command by @dlachaume in #2554 - client-lib/client-cli: calibrate max parallel dl by @Alenar in #2561
- docs: update CHANGELOG for
2524.0
distribution release by @jpraynaud in #2562
New Contributors
Full Changelog: 2517.1...2524.0-pre
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.58 |
mithril-client | 0.12.11 |
mithril-client-cli | 0.12.11 |
mithril-client-wasm | 0.9.1 |
mithril-common | 0.5.35 |
mithril-signer | 0.2.249 |
mithril-stm | 0.4.2 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ⛔ |
release-preprod | ⛔ |
pre-release-preview | ✔ |
testing-preview | ⛔ |
Distributions Compatibility ⚠️
Compatibility | mithril-signer | mithril-client |
---|---|---|
2517.1 |
✔️ | ✔️ |
2517.0 |
✔️ | ✔️ |
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 si...
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 3...
Mithril v2517.0
Highlights:
⚠️ Breaking changes in Mithril client CLI and library:- 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.0
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.44 |
mithril-client | 0.12.0 |
mithril-client-cli | 0.12.0 |
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⚠️
Mithril v2517.0-pre
Highlights:
⚠️ Breaking changes in Mithril client CLI and library:- 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.0-pre
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.44 |
mithril-client | 0.12.0 |
mithril-client-cli | 0.12.0 |
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⚠️
Mithril v2513.0
Highlights:
⚠️ Breaking changes in Mithril nodes:- Upgraded the minimum required
glibc
version from2.31
to2.35
for the pre-built Linux binaries - Mithril signer with versions
<=0.2.200
must be updated following the cleanup ofThales
era legacy code - Mithril client library
with_snapshot_uploader
function has been renamed towith_file_uploader
.
- Upgraded the minimum required
- Support for
Cardano node
10.2.1
in the signer and the aggregator - End support for macOS x64 pre-built binaries for the client CLI
- Bug fixes and performance improvements.
What's Changed
- refactor(aggregator): simplify dependency builder by @Alenar in #2288
- Reduce e2e flakiness by changing protocol parameters by @sfauvel in #2301
- Fix mithril-aggregator genesis bootstrap flakiness in e2e tests by @Alenar in #2303
- Chore: update SSH keys in infra by @dlachaume in #2305
- fix: stm tests run time regression by @Alenar in #2307
- Docs: rotate documentation for
2506
distribution by @jpraynaud in #2283 - Docs: final CHANGELOG for '2506.0' distribution by @jpraynaud in #2311
- chore(ci): reactivate publish test for
mithril-client
by @Alenar in #2310 - explorer: use main
mithril-client-wasm
package by @Alenar in #2309 - Mithril dev blog review by @oduameh in #2302
- Docs: add dev blog post for distribution
2506
by @jpraynaud in #2312 - Docs: add dev blog post for certificate chain security advisory by @jpraynaud in #2313
- Use a unique name for the cloud location of digests artifacts Cardano database by @sfauvel in #2314
- Cleanup unused dependencies and auto CI check by @Alenar in #2315
- Split
mithril-common
crate by extracting some modules by @sfauvel in #2304 - Replace the
TODO
by a explanation of the limits by @sfauvel in #2308 - ci: Bump build runner to ubuntu 22.04 by @Alenar in #2317
- chore: upgrade dockerfiles base image version to Debian 12 by @Alenar in #2319
testing-sanchonet
network decommission by @dlachaume in #2300- End support for MacOS x64 pre-built binaries by @dlachaume in #2277
- feat: client library for incremental Cardano database by @jpraynaud in #2289
- refactor(ci): use cache-version instead of 'v0-' in rust cache key prefix by @Alenar in #2323
- Fix wasm build in rust 1.85 by @Alenar in #2326
- feat: Implement an Unknown variant in the artifact locations by @sfauvel in #2320
- Docs: add new
Mithril certification
section in website by @jpraynaud in #2324 - Feat: Support Cardano node
10.2.1
pre-release by @jpraynaud in #2336 - feat: incremental cardano database restoration with client CLI by @dlachaume in #2318
- Minor editing/formatting improvements by @olgahryniuk in #2338
- Docs: add page for Cardano node database v2 certification by @jpraynaud in #2339
- Feat: add example crate for incremental Cardano database by @jpraynaud in #2337
- Cleanup legacy code from thales era by @Alenar in #2340
- Enhance artifact structure for incremental cardano db by @sfauvel in #2341
- Feat: improve disk space calculation for Incremental DB Restoration by @dlachaume in #2345
- fix: not blocking when computing size by @sfauvel in #2346
- Test: add integration test for incremental Cardano database in
mithril-client
by @dlachaume in #2344 - Fix: Hydra CI fails with OpenSSL error (Linux x86_64) by @dlachaume in #2348
- Fix:
notify-on-failure
job succeeds despite email sending failure by @dlachaume in #2349 - Code ADR for mithril-common by @Alenar in #2343
- Use consistent naming in the client cardano database api by @sfauvel in #2347
- Docs: update clients documentation for incremental Cardano DB by @dlachaume in #2350
- Chore: enhance versions bump script by @dlachaume in #2355
- Feat: implement aggregator
slave
signer registration mode by @jpraynaud in #2351 - Remove flakiness on should delay between retries tests by @sfauvel in #2352
- Docs: add features documentation for
mithril-client
library by @dlachaume in #2358 - refactor(mithril-client): Optimize cardano db artifacts download by @Alenar in #2359
- Fix BLST bindings: Error handling for infinite values of sigs and vks by @curiecrypt in #2322
- Compress the digests file uploaded on gcp by @sfauvel in #2367
- Feat: verify minimum node version with squash database migration by @dlachaume in #2368
- Reduce flakiness in the ci by @sfauvel in #2370
- Refactor(aggregator): groundwork for ancillary signature by @Alenar in #2372
- Feat: move database vacuum to aggregator startup to avoid API interruptions during epoch transitions by @dlachaume in #2375
- Organize STM code by @curiecrypt in #2373
- Macro to implement the source trait by @sfauvel in #2377
- Reduce flakiness in tests by @sfauvel in #2379
- Organize STM code - Merkle Tree Module by @curiecrypt in #2374
- Error messages as warning in signer by @sfauvel in #2381
- Feat: Support Cardano node
10.2.1
by @jpraynaud in #2386 - refactor(aggregator): remove deprecated
configuration
field fromDependencyContainer
by @Alenar in #2385 - Chore: update dependencies for distribution
2513
by @jpraynaud in #2388 - Docs: update CHANGELOG for
2513.0
distribution release by @jpraynaud in #2389
Full Changelog: 2506.0...2513.0
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.23 |
mithril-client | 0.11.17 |
mithril-client-cli | 0.11.11 |
mithril-client-wasm | 0.8.6 |
mithril-common | 0.5.14 |
mithril-signer | 0.2.237 |
mithril-stm | 0.3.42 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ✔ |
release-preprod | ✔ |
pre-release-preview | ✔ |
testing-preview | ⛔ |
Distributions Compatibility ⚠️
Compatibility | mithril-signer | mithril-client |
---|---|---|
2506.0 |
✔️ | ✔️ |
2450.0 |
✔️ | ✔️ |
2445.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](https://github.com/input-output-hk/mithril/releases/download...
Mithril v2513.0-pre
Highlights:
⚠️ Breaking changes in Mithril nodes:- Upgraded the minimum required
glibc
version from2.31
to2.35
for the pre-built Linux binaries - Mithril signer with versions
<=0.2.200
must be updated following the cleanup ofThales
era legacy code - Mithril client library
with_snapshot_uploader
function has been renamed towith_file_uploader
.
- Upgraded the minimum required
- Support for
Cardano node
10.2.1
in the signer and the aggregator - End support for macOS x64 pre-built binaries for the client CLI
- Bug fixes and performance improvements.
What's Changed
- refactor(aggregator): simplify dependency builder by @Alenar in #2288
- Reduce e2e flakiness by changing protocol parameters by @sfauvel in #2301
- Fix mithril-aggregator genesis bootstrap flakiness in e2e tests by @Alenar in #2303
- Chore: update SSH keys in infra by @dlachaume in #2305
- fix: stm tests run time regression by @Alenar in #2307
- Docs: rotate documentation for
2506
distribution by @jpraynaud in #2283 - Docs: final CHANGELOG for '2506.0' distribution by @jpraynaud in #2311
- chore(ci): reactivate publish test for
mithril-client
by @Alenar in #2310 - explorer: use main
mithril-client-wasm
package by @Alenar in #2309 - Mithril dev blog review by @oduameh in #2302
- Docs: add dev blog post for distribution
2506
by @jpraynaud in #2312 - Docs: add dev blog post for certificate chain security advisory by @jpraynaud in #2313
- Use a unique name for the cloud location of digests artifacts Cardano database by @sfauvel in #2314
- Cleanup unused dependencies and auto CI check by @Alenar in #2315
- Split
mithril-common
crate by extracting some modules by @sfauvel in #2304 - Replace the
TODO
by a explanation of the limits by @sfauvel in #2308 - ci: Bump build runner to ubuntu 22.04 by @Alenar in #2317
- chore: upgrade dockerfiles base image version to Debian 12 by @Alenar in #2319
testing-sanchonet
network decommission by @dlachaume in #2300- End support for MacOS x64 pre-built binaries by @dlachaume in #2277
- feat: client library for incremental Cardano database by @jpraynaud in #2289
- refactor(ci): use cache-version instead of 'v0-' in rust cache key prefix by @Alenar in #2323
- Fix wasm build in rust 1.85 by @Alenar in #2326
- feat: Implement an Unknown variant in the artifact locations by @sfauvel in #2320
- Docs: add new
Mithril certification
section in website by @jpraynaud in #2324 - Feat: Support Cardano node
10.2.1
pre-release by @jpraynaud in #2336 - feat: incremental cardano database restoration with client CLI by @dlachaume in #2318
- Minor editing/formatting improvements by @olgahryniuk in #2338
- Docs: add page for Cardano node database v2 certification by @jpraynaud in #2339
- Feat: add example crate for incremental Cardano database by @jpraynaud in #2337
- Cleanup legacy code from thales era by @Alenar in #2340
- Enhance artifact structure for incremental cardano db by @sfauvel in #2341
- Feat: improve disk space calculation for Incremental DB Restoration by @dlachaume in #2345
- fix: not blocking when computing size by @sfauvel in #2346
- Test: add integration test for incremental Cardano database in
mithril-client
by @dlachaume in #2344 - Fix: Hydra CI fails with OpenSSL error (Linux x86_64) by @dlachaume in #2348
- Fix:
notify-on-failure
job succeeds despite email sending failure by @dlachaume in #2349 - Code ADR for mithril-common by @Alenar in #2343
- Use consistent naming in the client cardano database api by @sfauvel in #2347
- Docs: update clients documentation for incremental Cardano DB by @dlachaume in #2350
- Chore: enhance versions bump script by @dlachaume in #2355
- Feat: implement aggregator
slave
signer registration mode by @jpraynaud in #2351 - Remove flakiness on should delay between retries tests by @sfauvel in #2352
- Docs: add features documentation for
mithril-client
library by @dlachaume in #2358 - refactor(mithril-client): Optimize cardano db artifacts download by @Alenar in #2359
- Fix BLST bindings: Error handling for infinite values of sigs and vks by @curiecrypt in #2322
- Compress the digests file uploaded on gcp by @sfauvel in #2367
- Feat: verify minimum node version with squash database migration by @dlachaume in #2368
- Reduce flakiness in the ci by @sfauvel in #2370
- Refactor(aggregator): groundwork for ancillary signature by @Alenar in #2372
- Feat: move database vacuum to aggregator startup to avoid API interruptions during epoch transitions by @dlachaume in #2375
- Organize STM code by @curiecrypt in #2373
- Macro to implement the source trait by @sfauvel in #2377
- Reduce flakiness in tests by @sfauvel in #2379
- Organize STM code - Merkle Tree Module by @curiecrypt in #2374
- Error messages as warning in signer by @sfauvel in #2381
- Feat: Support Cardano node
10.2.1
by @jpraynaud in #2386 - refactor(aggregator): remove deprecated
configuration
field fromDependencyContainer
by @Alenar in #2385 - Chore: update dependencies for distribution
2513
by @jpraynaud in #2388 - Docs: update CHANGELOG for
2513.0
distribution release by @jpraynaud in #2389
Full Changelog: 2506.0...2513.0-pre
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.7.23 |
mithril-client | 0.11.17 |
mithril-client-cli | 0.11.11 |
mithril-client-wasm | 0.8.6 |
mithril-common | 0.5.14 |
mithril-signer | 0.2.237 |
mithril-stm | 0.3.42 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ⛔ |
release-preprod | ⛔ |
pre-release-preview | ✔ |
testing-preview | ⛔ |
Distributions Compatibility ⚠️
Compatibility | mithril-signer | mithril-client |
---|---|---|
2506.0 |
✔️ | ✔️ |
2450.0 |
✔️ | ✔️ |
2445.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](https://github.com/input-output-hk/mithril/releases/...
Mithril v2506.0
Highlights:
⚠️ Security:- This distribution embeds a fix for the Mithril certificate chain could be manipulated by an adversarial signer security advisory GHSA-724h-fpm5-4qvr
- All users running a client library, client CLI or client WASM are strongly encouraged to update them to the latest version.
- Stable support for Cardano node
10.1.4
in the signer and the aggregator - Dropped support for
Thales
era in the signer and the aggregator - Stable support for traffic compression in signer, aggregator and client
- Bug fixes and performance improvements.
What's Changed
- feat(ci): include explorer in packaged releases by @Alenar in #2167
- Fix: recompute certificate chain hash by @jpraynaud in #2168
- Refactor: rework
snapshot_uploaders
module to improve genericity by @dlachaume in #2165 - Fix explorer packaging in releases by @Alenar in #2170
- Docs: enhance recompute certificates hash runbook by @jpraynaud in #2171
- Feat: retryable
devnet
bootstrap errors in e2e tests by @jpraynaud in #2179 - Docs: rotate documentation for
2450
distribution by @jpraynaud in #2162 - Docs: final CHANGELOG for '2450.0' distribution by @jpraynaud in #2182
- Dev blog copy review main branch by @oduameh in #2169
- Docs: add dev blog post for distribution
2450
by @jpraynaud in #2183 - Build and publish an unstable explorer version by @Alenar in #2181
- Feat: implement the Ancillary sub builder for Incremental Cardano DB by @dlachaume in #2180
- Docs: add dev blog post for era switch to
Pythagoras
by @jpraynaud in #2184 - ci: publish packaged explorer in latest release by @Alenar in #2185
- ci: fix downloading of stable explorer when publishing to pages by @Alenar in #2186
- Experimental: Cache in client certificate verification (lib and wasm) by @Alenar in #2166
- Feat: implement
CardanoDatabase
artifact routes by @jpraynaud in #2187 - feat: extend
Snapshotter
to archive only specific files and directories by @dlachaume in #2189 - Fix:
CardanoDatabase
artifacts verification in e2e test by @jpraynaud in #2194 - Feat: add workflows to
Nightly Dispatcher
by @jpraynaud in #2188 - Chore: upgrade dependencies by @jpraynaud in #2195
- Fix:
CardanoDatabase
artifact identifier collisions by @jpraynaud in #2198 - Refactor: enhance inputs for nightly workflows by @jpraynaud in #2200
- Feat: ancillary archive creation by @dlachaume in #2191
- Fix: nightly dispatcher workflow by @jpraynaud in #2201
- Chore: update SSH keys in infra by @jpraynaud in #2203
- Threat model analysis and blog post review PR by @oduameh in #2202
- Feat: immutable file digests route for
CardanoDatabase
artifacts aggregator by @jpraynaud in #2204 - Fix: execute Wasm tests on node in CI by @dlachaume in #2205
- Chore: clean TODOs in repository by @jpraynaud in #2206
- Feat: Support Cardano node
10.1.4
by @jpraynaud in #2210 - Docs: dev blog post for activation of the Cardano stake distribution certification by @jpraynaud in #2219
- Chore: clean TODOs in repository (second round) by @jpraynaud in #2220
- Align messages golden master tests by @Alenar in #2221
- doc: add windows powershell commands in client cli documentation by @Alenar in #2228
- Fix: missing
DEBUG
logs release builds by @jpraynaud in #2231 - Feat: Create immutable builder for incremental Cardano DB by @sfauvel in #2223
- Fix: Signer node properly handles
/register-signatures
responses when the message has expired by @dlachaume in #2232 - Feat:
GcpUploader
implements synchronization for Cardano database artifacts by @jpraynaud in #2233 - Fix: support trailing whitespace in protocol key files by @jpraynaud in #2236
- Chore: upgrade
release-preprod
VM by @jpraynaud in #2224 - Feat(tests): integration testing for
CardanoDatabase
certification by @jpraynaud in #2237 - Incremental Cardano DB artifact production enhancements by @Alenar in #2239
- aggregator: fix flakiness of tests that uses the snapshotter and simplify http server tests by @Alenar in #2243
- Openapi examples check by @sfauvel in #2240
- refactor(aggregator): better url sanitization process by using a value object by @Alenar in #2241
- Feat: compress aggregator HTTP responses by @jpraynaud in #2226
- split snapshotter by @Alenar in #2245
- Feat: implement client for
CardanoDatabase
in client library (list
andget
) by @jpraynaud in #2255 - Implement a retry mechanism for the FileUploader by @sfauvel in #2244
- Permanent storage of immutables trio archives by @Alenar in #2256
- Feat: implement
CardanoDatabase
inmithril-client
WASM by @dlachaume in #2258 - Use tls vendored from reqwest by @Alenar in #2260
- Do not delete an already existing archive on error by @sfauvel in #2257
- Refactor: improve variable and function names in fake aggregator by @dlachaume in #2261
- chore(ci): upgrade workflows running on ubuntu 22.04 to 24.04 by @Alenar in #2259
- CI: move
notify-on-failure
to a dedicated workflow by @dlachaume in #2262 - Fix: add missing
workflow_call
trigger on Test Notify on Failure workflow by @dlachaume in #2267 - docs: update
Pythagoras
era switch dev blog post by @jpraynaud in #2268 - Monitoring for incremental cardano db by @sfauvel in #2265
- Feat: Implement
cardano-db-v2
command in client CLI (list
andshow
) by @dlachaume in #2266 - explorer: Add cardano db v2 support & rework tabs layout by @Alenar in #2270
- Fix: use
unstable
Docker image ID intest-client
workflow instead… by @dlachaume in #2272 - Chore: add Mithril client CLI version in debug logs by @dlachaume in #2273
- Remove mithril common circular dependencies and
random
feature by @sfauvel in #2269 - Add warning for linux requirements upgrade by @Alenar in #2275
- Add an
era
subcommand to create keypair by @sfauvel in #2274 - Feat: certify protocol parameters and epoch in certificate chain by @jpraynaud in #2276
- Restore
release
option for build in Makefile foraggregator
… by @sfauvel in #2278 - Chore: upgrade dependencies by @Alenar in #2279
- Fix: prevent aggregator test conflicts by using unique temporary directories by @dlachaume in #2280
- Docs: bump minor versions of crates for
2506.0
distribution by @jpraynaud in #2285 - Feat: support compression in HTTP clients by @dlachaume in #2282
- docs: update era switch dev blog post by @jpraynaud in #2290
- Fix aggregator stress test by @dl...
Mithril v2506.0-pre
Highlights:
- Stable support for Cardano node
10.1.4
in the signer and the aggregator - Dropped support for
Thales
era in the signer and the aggregator - Stable support for traffic compression in signer, aggregator and client
- Bug fixes and performance improvements.
What's Changed
- feat(ci): include explorer in packaged releases by @Alenar in #2167
- Fix: recompute certificate chain hash by @jpraynaud in #2168
- Refactor: rework
snapshot_uploaders
module to improve genericity by @dlachaume in #2165 - Fix explorer packaging in releases by @Alenar in #2170
- Docs: enhance recompute certificates hash runbook by @jpraynaud in #2171
- Feat: retryable
devnet
bootstrap errors in e2e tests by @jpraynaud in #2179 - Docs: rotate documentation for
2450
distribution by @jpraynaud in #2162 - Docs: final CHANGELOG for '2450.0' distribution by @jpraynaud in #2182
- Dev blog copy review main branch by @oduameh in #2169
- Docs: add dev blog post for distribution
2450
by @jpraynaud in #2183 - Build and publish an unstable explorer version by @Alenar in #2181
- Feat: implement the Ancillary sub builder for Incremental Cardano DB by @dlachaume in #2180
- Docs: add dev blog post for era switch to
Pythagoras
by @jpraynaud in #2184 - ci: publish packaged explorer in latest release by @Alenar in #2185
- ci: fix downloading of stable explorer when publishing to pages by @Alenar in #2186
- Experimental: Cache in client certificate verification (lib and wasm) by @Alenar in #2166
- Feat: implement
CardanoDatabase
artifact routes by @jpraynaud in #2187 - feat: extend
Snapshotter
to archive only specific files and directories by @dlachaume in #2189 - Fix:
CardanoDatabase
artifacts verification in e2e test by @jpraynaud in #2194 - Feat: add workflows to
Nightly Dispatcher
by @jpraynaud in #2188 - Chore: upgrade dependencies by @jpraynaud in #2195
- Fix:
CardanoDatabase
artifact identifier collisions by @jpraynaud in #2198 - Refactor: enhance inputs for nightly workflows by @jpraynaud in #2200
- Feat: ancillary archive creation by @dlachaume in #2191
- Fix: nightly dispatcher workflow by @jpraynaud in #2201
- Chore: update SSH keys in infra by @jpraynaud in #2203
- Threat model analysis and blog post review PR by @oduameh in #2202
- Feat: immutable file digests route for
CardanoDatabase
artifacts aggregator by @jpraynaud in #2204 - Fix: execute Wasm tests on node in CI by @dlachaume in #2205
- Chore: clean TODOs in repository by @jpraynaud in #2206
- Feat: Support Cardano node
10.1.4
by @jpraynaud in #2210 - Docs: dev blog post for activation of the Cardano stake distribution certification by @jpraynaud in #2219
- Chore: clean TODOs in repository (second round) by @jpraynaud in #2220
- Align messages golden master tests by @Alenar in #2221
- doc: add windows powershell commands in client cli documentation by @Alenar in #2228
- Fix: missing
DEBUG
logs release builds by @jpraynaud in #2231 - Feat: Create immutable builder for incremental Cardano DB by @sfauvel in #2223
- Fix: Signer node properly handles
/register-signatures
responses when the message has expired by @dlachaume in #2232 - Feat:
GcpUploader
implements synchronization for Cardano database artifacts by @jpraynaud in #2233 - Fix: support trailing whitespace in protocol key files by @jpraynaud in #2236
- Chore: upgrade
release-preprod
VM by @jpraynaud in #2224 - Feat(tests): integration testing for
CardanoDatabase
certification by @jpraynaud in #2237 - Incremental Cardano DB artifact production enhancements by @Alenar in #2239
- aggregator: fix flakiness of tests that uses the snapshotter and simplify http server tests by @Alenar in #2243
- Openapi examples check by @sfauvel in #2240
- refactor(aggregator): better url sanitization process by using a value object by @Alenar in #2241
- Feat: compress aggregator HTTP responses by @jpraynaud in #2226
- split snapshotter by @Alenar in #2245
- Feat: implement client for
CardanoDatabase
in client library (list
andget
) by @jpraynaud in #2255 - Implement a retry mechanism for the FileUploader by @sfauvel in #2244
- Permanent storage of immutables trio archives by @Alenar in #2256
- Feat: implement
CardanoDatabase
inmithril-client
WASM by @dlachaume in #2258 - Use tls vendored from reqwest by @Alenar in #2260
- Do not delete an already existing archive on error by @sfauvel in #2257
- Refactor: improve variable and function names in fake aggregator by @dlachaume in #2261
- chore(ci): upgrade workflows running on ubuntu 22.04 to 24.04 by @Alenar in #2259
- CI: move
notify-on-failure
to a dedicated workflow by @dlachaume in #2262 - Fix: add missing
workflow_call
trigger on Test Notify on Failure workflow by @dlachaume in #2267 - docs: update
Pythagoras
era switch dev blog post by @jpraynaud in #2268 - Monitoring for incremental cardano db by @sfauvel in #2265
- Feat: Implement
cardano-db-v2
command in client CLI (list
andshow
) by @dlachaume in #2266 - explorer: Add cardano db v2 support & rework tabs layout by @Alenar in #2270
- Fix: use
unstable
Docker image ID intest-client
workflow instead… by @dlachaume in #2272 - Chore: add Mithril client CLI version in debug logs by @dlachaume in #2273
- Remove mithril common circular dependencies and
random
feature by @sfauvel in #2269 - Add warning for linux requirements upgrade by @Alenar in #2275
- Add an
era
subcommand to create keypair by @sfauvel in #2274 - Feat: certify protocol parameters and epoch in certificate chain by @jpraynaud in #2276
- Restore
release
option for build in Makefile foraggregator
… by @sfauvel in #2278 - Chore: upgrade dependencies by @Alenar in #2279
- Fix: prevent aggregator test conflicts by using unique temporary directories by @dlachaume in #2280
- Docs: bump minor versions of crates for
2506.0
distribution by @jpraynaud in #2285 - Feat: support compression in HTTP clients by @dlachaume in #2282
- docs: update era switch dev blog post by @jpraynaud in #2290
- Fix aggregator stress test by @dlachaume in #2287
- Docs: update CHANGELOG for
2506.0
distribution release by @jpraynaud in #2284
New Contributors
Full Changelog: 2450.0...250...