Skip to content

Implement a Block Range Merkle Tree for Cardano Transactions #1533

Closed
@jpraynaud

Description

@jpraynaud

Why

We want to implement a mechanism that will allow fast proof generation for the Cardano transactions and to reach the mainnet magnitude of records to sign. In order to do that, we must avoid to load the full Cardano transactions set in memory when signing and generating proofs. We want to evolve the way the protocol message and proofs are computed for the Cardano transactions, which will allow us to reach this performances.

What

The representation of the Cardano transactions that is computed by the signer (to sign) and aggregator (to sign and prove) should evolve to a Block range commitment Merkle Tree. Currently, we will keep the same scheme on the signer and the aggregator and we will not store any intermediate information in their stores.

Signature diagram for signer and aggregator

Image

Proof diagram for aggregator

Image

How

Note

This issue does not concern the storage optimizations and new features to save intermediate Merkle trees roots

  • Implement new representation for Cardano transactions and associated proofs
  • Benchmark new representation for Cardano transactions and associated proofs
  • Use the new representation and associated proofs in signer, aggregator and client

Parent issue

#1457

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions