IntersectMBO / IntersectMBO/mithril
Cardano Node Ledger State Certification - PoC
- Dominant language
- Rust
- Stars
- 154
- Forks
- 51
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 38
Description
## Why
Today, the Cardano ledger state (the accumulated UTxO set, stake snapshots, and other chain state stored in the `ledger/` directory) is distributed as part of the ancillary files and is **not certified by Mithril multi-signatures**. Instead, the aggregator signs a manifest of the ancillary files using IOG-owned Ed25519 keys, providing authenticity from a single trusted party rather than the decentralized trust of the Mithril protocol.
The root cause is that the Cardano node has historically not produced **deterministic ledger snapshots**: different nodes running the same chain produce different binary representations of the ledger snapshots. Since Mithril multi-signatures require all signers to independently compute the exact same hash, non-deterministic output makes it impossible for signers to agree on a common message to sign.
The Cardano node is introducing support for deterministic ledger snapshots, but uncertainties remain around the different UTxO-HD flavors (Legacy, InMemory, LMDB) and their determinism guarantees. The goal of this PoC is to validate the end-to-end feasibility: can multiple Mithril signers independently compute matching hashes of the ledger state from their local Cardano nodes, and can this hash be included in a multi-signed protocol message? This will surface any blockers before committing to a production implementation.
## What
Implement a Poc of Cardano node ledger state certification for `InMemory` UTxO-HD ledger flavor.
Contributor guide
Assessment
This issue has not been assessed yet.