--- title: 2024-05-20 Nomos weekly tags: - nomos-updates date: 2024-05-20 lastmod: 2024-05-20 draft: false description: Weekly update of Nomos --- ## `P2P Privacy` ### `Research` - Security of mixing over a broadcasting channel ([document](https://www.notion.so/Security-of-Mixing-over-Broadcasting-Channel-e09184fa14614d78829f76fdb4aa65d3#642beedb44674143ba25e5e21c23f860)): We have been able to generalize the stake hiding impossibility observation, discuss a general countermeasure, and add a section on how to practically weaken this impossibility. We have extended the Global View section with more discussion regarding the overhead of broadcasting communication. A practical note regarding mixing failure and a sketch for a mechanism to recover from mixnet failure redundancy have been added. We have also started working on a partial view analysis. ### `Development` - Mixnet v2 Simulation: added adversary simulation. Currently, it includes only a passive adversary with a global view. More realistic adversaries will be added later (low priority for now). The current version of Mixnet v2 simulation can be found [here](https://github.com/logos-co/nomos-specs/tree/mixnet-v2-sim/mixnet/v2/sim). Please note that this document is WIP and not an experiment report, though it includes some plots. It shows what the simulation can do right now and what's next. In progress: writing the first simulation result document to be shared internally so that we can plan ahead. - We internally agreed to start by simulating the simple behavior first and measuring the bandwidth usage, especially by broadcasting real messages without mixing. After that, we can turn on more complex behaviors (e.g., mixing & cover) and compare the results with the previous ones. This is because the simulation result with the whole set of behaviors may be too complex to analyze at the beginning when not everyone fully understands how the simulation works. - We found that the simulation speed is too slow with 100K nodes (not physical ones). The main reason is that the simulation is based on SimPy, which is single-threaded. However, the same poor performance was observed when another simulation framework in Python (Mesa) was tried. There may be some solutions (e.g., multiprocessing), but first, our aim is to produce the first meaningful simulation result with fewer nodes before improving it. ## `Data Availability` ### `Research` - We reviewed the FK20 algorithm again. Libraries for accelerating DA proof generation were reviewed. It appears there is some room for improvement, but it is not yet at the desired levels. Libraries: [Rust-kzg](https://github.com/grandinetech/rust-kzg), [C-kzg](https://github.com/ethereum/c-kzg-4844), and [Peerdas-kzg](https://github.com/crate-crypto/peerdas-kzg/tree/master). ### `Development` - DA Verifier service implementation: [PR](https://github.com/logos-co/nomos-node/pull/627) merged: the service for attesting the blobs. - DA Verifier integration tests: Verifier service expects the DA protocol to implement a couple of traits for serialization, encoding, signing, etc. KZGRS backend is mostly implemented, but still needs some service-related utilities. This work is in the `verifier-integration-tests` branch. - KZGRS performance [review](https://www.notion.so/KZG-RS-performance-37db3cd4a33f41f994c77b1c4d9218cb): as per the previous benchmarks on our KZGRS, we uncovered a few performance flaws. Those were addressed, but even then it did not reach our current targets. We have been checking and comparing with other implementations to see if we were doing anything wrong. We were not. ## `PPoS/Consensus` ### `Research` - Expanded/improved explanations of the results found in the Wealth Concentration in PoS [document](https://www.notion.so/Does-Crypsinous-Leader-Election-Function-lead-to-wealth-concentration-in-PoS-b81f07a791b745438443f51f00ac258f). ### `Development` - No updates this week. ## `Coordination Layer` ### `Research` - Studies on binary field proof systems have been completed and [documented](https://www.notion.so/Binary-Field-Proof-Systems-f55d921062e94d7290579355808d7886). This week, we will also cover and take notes on [Stwo](https://streamyard.com/watch/ndVNnBQgZgqF) (STARK prover) and check which parts we can use for the CL. These structures provide fast prover time. We need to discuss how much we need this on the CL side (because while providing fast prover time, it also increases proof size, which seems more important for us). - The Atomic Asset Transfer case has been started, but the text and diagrams lacked rigor. An implementation of the CL [executable spec](https://github.com/logos-co/nomos-specs/pull/93) has begun, which can better sanity check the design. Details on Noir ZK language integration with Python: [here](https://github.com/logos-co/nomos-specs/pull/92). ### `Development` - No updates this week. ## `Testnet + Insights` ### `Research` - Updated and improved the "Monitoring, instrumentation, and explorer" [document](https://www.notion.so/Monitoring-instrumentation-and-explorers-d8c8357b4e304fa3806f1b7f0e6b172d#b11c539fcaea43ccba3321289b2a342c) - added a "milestones" section with the targets for the next iterations. ### `Development` - No updates this week. ## `User Tools` ### `Research` - No updates this week. ### `Development` - No updates this week. ## `Miscellaneous` - New blog post has been released: [Preventing Wealth Concentration in PoS Systems: The Role of Stake Relativisation](https://blog.nomos.tech/wealth-concentration-in-pos-and-stake-relativisation/).