Mithril v2418.1
Highlights:
⚠️ BREAKING changes in Mithril client / Mithril client CLI:- Certificate chain structure has been modified to remove coupling with immutable file number.
- Client must be updated to verify certificate chain.
- Switched memory allocator to
jemallocator
on signer and aggregator to avoid memory fragmentation. - Always enabled BLST
portable
feature for runtime check of intel ADX instruction set.
What's Changed
- Rotate documentation for
2412
distribution by @jpraynaud in #1585 - Fix variable substitution in npm publication workflow release by @sfauvel in #1596
- Rename
Beacon
common entity toCardanoDbBeacon
by @Alenar in #1593 - Upgrade
bech32
crate by @jpraynaud in #1592 - Upgrade dependencies by @jpraynaud in #1599
- Make Grafana Dashboard template for signer available in docs by @jpraynaud in #1598
- Aggregate fake aggregator reference json files by @Alenar in #1600
- Fix typo in the SPO setup guide by @jpraynaud in #1602
- Handle multiple beacon types in Certificate by @Alenar in #1601
- Fix runbook for certificate hashes re-computation by @jpraynaud in #1604
- Add and persist
slot_number
andblock_hash
toCardanoTransaction
by @Alenar in #1607 - Fix Conway transactions parsing by @jpraynaud in #1608
- New migration to add indexes on foreign keys by @dlachaume in #1609
- Fix
CHANGELOG.md
by @jpraynaud in #1611 - Incremental storage of Cardano transactions by @Alenar in #1619
- Fix signer metrics server caught signal log by @jpraynaud in #1621
- Upgrade
testing-preview
VM by @jpraynaud in #1627 - Chain observer retrieves the current Chain Point by @jpraynaud in #1623
- Refactor Aggregator & Signer database structure by @Alenar in #1626
- Use BLST portable feature to enable runtime ADX instruction set check by @Alenar in #1630
- fix: Output deprecation warning in JSON format when option --json is set by @sfauvel in #1631
- Support Cardano
8.10.0
intesting-sanchonet
by @jpraynaud in #1628 - Deploy
testing-mainnet
network by @jpraynaud in #1625 - Remove 'portable' feature in make commands by @jpraynaud in #1636
- Proof generation memory optimisation by @Alenar in #1637
- Minimum supported Cardano node versions for Mithril signers by @dlachaume in #1624
- Fix
open_message.is_expired
in aggregator runner by @dlachaume in #1622 - Remove unused network configuration parameter in mithril-client cli by @dlachaume in #1640
- Mithril relay broadcasts signer registrations in P2P by @jpraynaud in #1588
- Update README
mainnet availability
section by @jpraynaud in #1639 - Handle unparsed blocks in Cardano transactions parser by @dlachaume in #1641
- Replace "BFT nodes" with "Full nodes" in devnet by @dlachaume in #1642
- Use new memory allocator 'jemallocator' by @jpraynaud in #1649
- Add aggregator stress test workflow by @dlachaume in #1643
- Store block range roots in db by @Alenar in #1650
- Stream blocks during import by @Alenar in #1652
- Optimize block range roots computation by @jpraynaud in #1655
- Fix missing
mithril-aggregator
binary in thestress-test
job by @dlachaume in #1653 - Upgrade dependencies by @dlachaume in #1654
- Upgrade crates minor versions by @dlachaume in #1661
Full Changelog: 2412.0...2418.1
Crates Versions
Crate | Version |
---|---|
mithril-aggregator | 0.5.0 |
mithril-client | 0.8.0 |
mithril-client-cli | 0.8.0 |
mithril-client-wasm | 0.3.0 |
mithril-common | 0.4.0 |
mithril-signer | 0.2.130 |
mithril-stm | 0.3.19 |
Networks Compatibility ⚠️
Network | Compatible |
---|---|
release-mainnet | ✔ |
release-preprod | ✔ |
pre-release-preview | ✔ |
testing-preview | ⛔ |
testing-sanchonet | ⛔ |
Linux Requirements
The Linux binaries target glibc
: to run them or install the .deb
packages you must have glibc
version 2.31+
installed.
Compatible systems include, but are not limited to, Ubuntu 20.04+
or Debian 11+
(Bullseye)).
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 ./public-key.gpg ./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: 2AC0 7B11 8B23 1443 F544 2D0C 6E2C 1160 3E79 0021
- 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⚠️