Skip to main content

· 2 min read
Jean-Philippe Raynaud

High level overview

This week, the Mithril team focused on implementing new succinct proofs. The team worked on pre-aggregation SNARK primitives in the STM library, completed bridging between CPU and circuit implementations, and worked on lottery target pre-computation. They also continued to adapt the certificate chain for SNARK-friendliness and to implement signer authentication for SNARK verification keys.

Additionally, the team continued work on the new certification for Cardano blocks and transactions. This included implementing the prover, along with the proof routes in the aggregator REST API, and the diffusion of signing configuration.

Finally, they continued working on static builds for Mithril nodes, fixed some CI bugs, and implemented support for Cardano node v.10.6.2.

Low level overview

Features

  • Completed the issue Implement SNARK pre-aggregation primitives in STM library - Phase 1 #2792
  • Completed the issue Hash to curve CPU/circuit discrepancy for message signature in Schnorr signature #2993
  • Completed the issue Implement signable builder for Cardano Blocks and Transactions #2908
  • Completed the issue Implement signing configuration for Cardano Blocks and Transactions #2971
  • Worked on the issue Compute Lottery Target Value for SNARK #2974
  • Worked on the issue Implement SNARK pre-aggregation primitives in STM library - Phase 2 #2943
  • Worked on the issue Remove off-circuit module in Halo2 circuit #2945
  • Worked on the issue Prepare refactoring of SNARK circuit #2990
  • Worked on the issue Full review of recursive SNARK circuit prototype #2982
  • Worked on the issue Adapt certificate chain to support SNARK AVK #2811
  • Worked on the issue Support for authenticated signer registration for SNARK #2915
  • Worked on the issue Implement proof route for Cardano Blocks and Transactions in aggregator REST API #2988
  • Worked on the issue Implement new prover for Cardano Blocks and Transactions #2987
  • Worked on the issue Implement static build of Mithril nodes in CI #2989
  • Worked on the issue Integrate Mithril into the Cardano developer documentation website #3012

Protocol maintenance

  • Worked on the issue Upgrade to Cardano 10.6 #2790
  • Worked on the issue Fix snapshot-converter breaking change in 10.6.2 #3010
  • Worked on the issue Fix crates and npm packages publications GitHub workflows #2970
  • Worked on the issue Enhance protocol security page on website #2703

· 2 min read
Marcin Szamotulski

Overview of sprint 107.

Cardano Node 10.5.4

We rolled out cardano-node-10.5.4 release.

Leios

PR / IssueStatus
Mux Leios Simulationmerged
Mux egress prioritisationin progress
Mux egress fairnessresolved

Ouroboros-Network

PR / IssueStatusNotes
StandardHash with NFData constraintmerged
Tracing Librariesmerged
[tx-submission robustness and testing enhancements][pr#5315]in review
RNG handling in SRV lookups for public root peersin reviewcontribution by Saviour Uzoukwu
cardano ping implemented with ouroboros-networkblocked

Documentation

Maintenance

DMQ-Node

PR / IssueStatus
SigSubmission v2in review
Integration with cardano-tracerin progress
[Set the correct magic field][pr#30]merged
[Churn test][#5303]in review

· One min read
Damian Nadales

High level summary

  • Continued work on Node 10.7 integration (Treasury Funding Initiative 17: Maintenance and Support):
    • Integrated network packages up to ouroboros-network-0.22.6 (#1819, #1865).
    • Integrated latest ledger changes (#1762).
    • Integrated kes-agent-1.1 (#1819) (Treasury Funding Initiative 9: KES Agent).
  • Node improvements (Treasury Funding Initiative 17: Maintenance and Support):
    • Improved mempool behavior for local clients:
      • Downgraded hard timeouts to soft timeouts, improving user experience for wallets and other local client integrations (#1856, #1857, #1858).
      • Made it easier for downstream tracers to scrutinize mempool rejection details (#1847).
      • Enhanced observability by exposing the reason for chain switches in the ChainSel tracer (#1826).
    • Added support for the new GetDRepDelegations ledger state query in NodeToClientV_23 (#1794).
    • Fixed an exception due to a mix-up of resources in the V2 LedgerDB (#1842).
    • Minor: code cleanup (#1854).
    • Added documentation for the Consensus-Ledger interaction (#1830).
  • Continued Leios prototype development (Treasury Funding Initiative 4: Ouroboros Leios Implementation, MS4.6):
    • Refactored to use EbHash instead of EbId for cleaner design (#1859).
    • Simplified to monomorphic types for more rapid iteration (#1846).
    • Implemented in-memory LeiosDb for ThreadNet tests (#1837).

· 2 min read
Jean-Philippe Raynaud

High level overview

This week, the Mithril team focused on implementing new succinct proofs. The team worked on pre-aggregation SNARK primitives in the STM library, completed golden master tests of the non-recursive SNARK circuit, and worked on bridging CPU and circuit implementations. They also began adapting the certificate chain for SNARK-friendliness.

Additionally, the team continued work on the new certification for Cardano blocks and transactions. This included implementing the signable builder, along with the artifact and proof routes in the aggregator REST API.

Finally, they worked on static builds for Mithril nodes and fixed bugs in the hash-to-curve implementation of the Schnorr signature.

Low level overview

Features

  • Completed the issue Add golden tests for Halo2 circuit prototype #2912
  • Completed the issue Pallas DMQ publisher keeps open connection to DMQ node #2961
  • Completed the issue Implement artifact routes for Cardano Blocks and Transactions in aggregator REST API #2956
  • Completed the issue Follower aggregator panics in e2e tests in run-only mode #2770
  • Worked on the issue Implement SNARK pre-aggregation primitives in STM library - Phase 1 #2792
  • Worked on the issue Compute Lottery Target Value for SNARK #2974
  • Worked on the issue Hash to curve CPU/circuit discrepancy for message signature in Schnorr signature #2993
  • Worked on the issue Implement signable builder for Cardano Blocks and Transactions #2908
  • Worked on the issue Implement signing configuration for Cardano Blocks and Transactions #2971
  • Worked on the issue Adapt certificate chain to support SNARK AVK #2811
  • Worked on the issue Implement proof route for Cardano Blocks and Transactions in aggregator REST API #2988
  • Worked on the issue Implement static build of Mithril nodes in CI #2989

Protocol maintenance

  • Worked on the issue Enhance protocol security page on website #2703

· 2 min read
Marcin Szamotulski

Overview of sprints: 103, 104, 105, 106.

The most important changes are patches developed after the November fork incident on Mainnet, which make the diffusion layer more robust. These patches are released in the cardano-node-10.5.4 release. We highly recommend updating to 10.5.4 as these change make the Cardano Network more robust. We'd like to thank Karl Knutsson (CF) who developed these patches.

This report only contains issues/PRs finished/merged in the sprints 103 through 106. Work that has been carried and finished in the current sprint will be reported in the future.

Ouroboros-Network

Diffusion

Cardano-Ping

Leios

Technical Debt

Cardano-Node

DMQ-Node