PPoS / Consensus / DA

Research

  • PoV ready for review.
  • PoL ready for review.
  • We considered the GHOST algorithm with random sampling, which uses the block-tree of a blockchain to select a chain. Given the weights of subtrees associated with nodes, the algorithm, starting from the Genesis block, follows the paths of maximum weight when the weights of subtrees differ and uses random sampling when the weights are the same. This suggests recursion on weighted block-trees when a new block is added to the tree. We analyzed the growth process of a global block-tree, i.e., the block-tree related to the leadership election process, and derived a general equation for the probability of a block-tree at time t given the probabilities of election outcomes up to time t. Research on the GHOST chain selection rule was postponed due to safety concerns raised here, which need investigation but are not our current priority. A summary of this work is in this document.
  • Added rs-decode benchmark results.
  • Cryptarchia Fork Choice - we found some attacks against GHOST, leading us to drop it in favor of the old fork choice rule.
  • Cryptarchia exec spec switched back to longest chain: pr.
  • Wrote a new Notion spec for the Cryptarchia fork choice rule: notion spec.
  • Continued working on the ABM implementation that compares transaction fee mechanisms.

Development

  • Blob and Tx IDs as tracing IDs: Work in progress—setting the trace_id parent to the transaction ID and blob ID to track the flow of this data between node instances and internal node services.

Blendnet

Research

  • Work in progress: Measuring the actual frequency of cover messages to find the recommended parameters for connection maintenance (PR in review).
  • Continued work on the Blend Accounting Protocol. During this process, we realized that the intended construction for claiming rewards was problematic from a privacy perspective, as it allowed nodes to reconstruct the path at the rewarding phase. Therefore, we corrected the approach, significantly simplifying the design. We encountered issues designing a proper message encoding scheme but managed to resolve them and update the algorithm in the document. The current version, still a work in progress, is available here.

Development

  • Blendnet service integration tests scaffold: Work in progress—creating an integration test structure with a minimal set of services required to perform tests on the mixnet service (providing more control than testing a Nomos node binary).

Coordination Layer

Research

  • Initial PoC work merged!
  • Renamed “bundle proof” to “balance proof.”
  • Modified zone design to disclose the list of cross-zone partial transactions instead of just inputs.
  • Refactored Input/Output Witness to include the zone ID.
  • Early benchmarking: Committing to the zone note tree and nullifiers is the heaviest task in the zone STF. Recursion also plays an important role but is at least linear in the number of processed transactions. More benchmarking work is needed.
  • Adopted MMR instead of Merkle Tree in the zone state to reduce the required state in the zone. The zone note tree’s impact on the STF is now almost linear in the number of processed transactions. Similar changes are needed for nullifiers.
  • Preliminary research on ledger representation is ready for review.
  • Zone ledger specification is ready for review.
  • Reviewed the details of the implementation prepared for PACTs. These notes were compiled to improve our understanding of the implementation.

Development

  • No updates this week.

Zone and Apps

Research

  • No updates this week.

Development

  • No updates this week.

Testnet and Tooling

Development

  • Preparation for testnet single sign-on: Pinning down Docker dependency versions due to breaking changes in the latest Prometheus release and updating related configurations.

Miscellaneous

  • FRI article published.
  • “Why We Chose KZG” PCS conclusion draft completed.
  • zkVM survey article draft (unfinished).