Skip to content

eUTxO ledger

A deterministic, Cardano-shaped eUTxO state machine that runs as an app ledger capability, with an optional Cardano bridge on top.

Teams want to run Conway-shaped transactions at application-ledger speed and cost, with threshold finality and proofs, and later move value between that ledger and Cardano. Building a UTxO engine and a bridge from scratch is a large, risky undertaking.

  • Researchers and protocol teams exploring eUTxO execution on an app ledger or a federated bridge.
  • Developers who want a disposable, no-real-funds environment for Cardano-shaped transactions.

It is not for production value, custody, or public bridges.

The bridge is an optional layer on top of the ledger:

The eUTxO layersConcept
APP LEDGER · EUTXO STATE MACHINEeUTxO ledgereutxo-ledger recipeCardano bridgeeutxo-cardano-bridgeCardanodevnet or testnetdeposits, withdrawalsAPP LEDGER · EUTXO STATE MACHINEeUTxO ledgereutxo-ledger recipeCardano bridgeeutxo-cardano-bridgeCardanodevnet or testnet
  • App ledger · eUTxO state machine: eUTxO ledger, Cardano bridge.
  • eUTxO ledger → Cardano bridge.
  • Cardano bridge → Cardano (deposits, withdrawals).
eUTxO ledger
The reusable state:eutxo-ledger engine: deterministic Cardano-shaped UTxO state, root-fixed receipts, and MPF-proven outputs under one immutable ledger profile. The eutxo-ledger recipe adds profile:eutxo-plutus-v3 and a virtual genesis allocation (funding:eutxo-genesis) for no-real-funds testing. Availability FIRST_PARTY_OPTIONAL, maturity experimental.
Cardano bridge
bridge:cardano-federated observes accepted deposits to a Cardano vault and settles bounded claims. It needs l1:slot-feed and replaces the virtual genesis allocation: the two conflict. Availability EXPERIMENTAL.
Cardano
The bridge deposits to and withdraws from Cardano. Use a devnet or a Cardano test network with disposable keys.
The Cardano bridge is an optional layer on the deterministic eUTxO ledger. Both are experimental, and neither is for real funds.
  • capability layer
  • Cardano
RecipeAvailabilityWhat it adds
eutxo-ledgerFIRST_PARTY_OPTIONALThe deterministic UTxO ledger with a virtual genesis allocation.
eutxo-cardano-bridgeEXPERIMENTALFederated deposit and withdrawal against Cardano.

The eutxo-ledger recipe combines the reusable state:eutxo-ledger engine with profile:eutxo-plutus-v3 and the separate funding:eutxo-genesis capability:

yano:
app-chain:
chains:
- chain-id: payments-eutxo
state-machine: eutxo-ledger
machines:
eutxo:
profile: yano-eutxo-v2-plutus-v3
expected-profile-digest: 8cd4adb72def2c31dc8551a02f67429ea468bb2024dbe85a1dc7300590c9d1bf
genesis:
address: addr_test1...
lovelace: 100000000

The profile commitment is SHA-256 over its canonical, versioned consensus fields. All members must use the same profile, digest, and genesis allocation: this is part of the ledger’s identity, not a tunable. Exactly one immutable ledger profile owns the consensus settings at a time.

The ledger proves what any app ledger proves: that a threshold of members finalized each transaction in order, and that each output is in the state under a certified root, with an MPF proof.

It does not make the bridge trustless. The bridge is federated custody: in signer mode it trusts an external threshold or HSM, and in proof mode it trusts the threshold-accepted root. Nothing here is ready for production value.

The lifecycle indexer is a rebuildable read index. It lives in appchain-indexers/, never takes part in validation, roots, finality, or settlement, and must never be treated as authoritative state. See Where data lives.

The disposable demos create three-node devnet clusters with local test identities. From the root of an extracted yano-x-jvm-<version>.zip, beside yano.sh:

Terminal window
./yano.sh appchain eutxo demo scenarios
./yano.sh appchain eutxo demo up --scenario ledger --workspace ./eutxo-ledger-demo
./yano.sh appchain eutxo demo round-trip --workspace ./eutxo-ledger-demo
# Expected: EUTXO_LEDGER_DEMO_ROUND_TRIP_PASS

The bridge scenario follows the same pattern. The demo guide covers both.

GoalGuide
The eUTxO family overviewledgers/eutxo/README.md
Indexer API, SQLite, recovery, metricsIndexer operations

The modules live under ledgers/eutxo, and the lifecycle console ships as product-ui/eutxo.

experimental. Production release is gated on the audit and operational gates described in the eUTxO ADRs.