From 0e0e7c6f12c9027eb501af7e3e18c29b79c6309f Mon Sep 17 00:00:00 2001 From: Cofson <41572590+Cofson@users.noreply.github.com> Date: Wed, 17 Jul 2024 13:58:37 +0200 Subject: [PATCH] Create 2024-07-15.md (#86) --- content/nomos/updates/2024-07-15.md | 85 +++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 content/nomos/updates/2024-07-15.md diff --git a/content/nomos/updates/2024-07-15.md b/content/nomos/updates/2024-07-15.md new file mode 100644 index 000000000..911be9303 --- /dev/null +++ b/content/nomos/updates/2024-07-15.md @@ -0,0 +1,85 @@ +--- +title: 2024-07-15 Nomos weekly +tags: + - nomos-updates +date: 2024-07-15 +lastmod: 2024-07-15 +draft: false +description: Weekly update of Nomos +--- +## `P2P Privacy` + +### `Research` + +- [PR #98](https://github.com/logos-co/nomos-specs/pull/98): Updated/refined the mixnet executable spec according to the newly written (WIP) spec. It's being reviewed at the moment and is soon to be merged. +- [PR #104](https://github.com/logos-co/nomos-specs/pull/104): Modified the Sphinx encoding to support an arbitrary length of mix route and arbitrary maximum size of payload. Now we can let nodes select the length of mix nodes (not to exceed the max limit) and encapsulate a message larger than 1K (hardcoded in Loopix Sphinx) into a single Sphinx packet, while ensuring that all Sphinx packets have the same size. +- [PR #105](https://github.com/logos-co/nomos-specs/pull/105): Updated the simulation according to the newly written (WIP) spec. Also made it accept different randomness seeds for each module to make each of them deterministic independently. This is the first working version, which we can extend over and over. +- Worked on the level 1 messaging noise generation [section](https://www.notion.so/NomMix-Peer-to-Peer-Mix-Network-over-Gossip-Channel-11e9c70a656d4ff1858bc46a715f4c59?pvs=4), focused mostly on the motivational part at the moment. It’s noteworthy that the effectiveness of the mechanism is tightly coupled with the application of the queuing mechanism. Currently working on a better way of presenting the whole motivation. However, this does not block defining the noise generation mechanism, which is the next thing to do. +- Looked at ways to model the queuing mechanism (temporal mix). Our current approach is to treat it as a timed pool mix, which is well studied and provides us with analytical tools that we can use. However, later on, it was realized that it might not be the best model to use as we are deviating from a general mix to a task-specific mix which we might not be able to reflect using the timed pool mix. Nevertheless, it still looks like a good starting point that we can modify for our particular needs. +- Reviewed mixnet gadget specification, and consequently decided on how to move forward with simulations and further implementation. +- Started an analysis of the queuing system: in particular, considered the random process (outlined in this [document](https://www.notion.so/NomMix-Peer-to-Peer-Mix-Network-over-Gossip-Channel-11e9c70a656d4ff1858bc46a715f4c59?pvs=4#9744924066a74c9683be21c9256ed177)) which governs the out-queue of a single connection. The latter is a variant of the pool mix and we have set up an analytical framework, based on previous studies such as the [paper](https://link.springer.com/chapter/10.1007/3-540-36467-6_4) “Towards an Information Theoretic Metric for Anonymity," which will allow us to study statistical properties of out-queues. The summary can be found in this [document](https://www.notion.so/Analysis-of-the-NomMix-anonymous-communication-AC-system-c97d73a7b8894cf7830e8345f0cc37a4?pvs=4#9f6f8052a203427bbf71428a636bc673). + +### `Development` + +- No updates this week. + +## `Data Availability` + +### `Research` + +- [PR #672](https://github.com/logos-co/nomos-node/pull/672): Added the verifier benchmarks. The data from benchmarks can be seen in this Notion [document](https://www.notion.so/Benchmark-and-Scheme-Viability-Analysis-ce94c6a6cb2c4661bca3bacfdf88e048). +- WIP: Started the libp2p nomos DA subnetworks implementation [document](https://www.notion.so/Libp2p-Nomos-DA-subnetworks-implementation-cc175e5bd03847f9af973edcef846f63?pvs=25). +- [PR #100](https://github.com/logos-co/nomos-specs/pull/100), direct DA connection protocol: Defined the executor to DA node direct connection message types using protobuf. The code is targeting the `da-poc` branch in Nomos Spec to be used with subnets PoC. +- [PR #99](https://github.com/logos-co/nomos-specs/pull/99): Finalized the first version of the Runnable DA nodes PoC (ready for review). + +### `Development` + +- No updates this week. + +## `PPoS/Consensus` + +### `Research` + +- Added the Proof of Leadership [specification](https://www.notion.so/Proof-of-Leadership-Specifications-894a869ea4e4484c8a3b6af9bdb89443?d=709d1472f9054bc08dda1152f50b5ea9#90589595658c4ebd9f84997d126f50d8) to Notion. The first implementation in Circom, the one with sha256 (that didn't take review into account) can't be executed right now due to hardware requirements—however, this will be solved with the machine the team can now use. The implementation with the Anemoi hash function (that takes reviews into account => Taylor of order 2, more note inputs etc.) is not released yet. +- WIP: Finalizing studies 1 and 2 of the wealth concentration work. Results and report about wealth concentration can be found [here](https://www.notion.so/Does-Crypsinous-Leader-Election-Function-lead-to-wealth-concentration-in-PoS-b81f07a791b745438443f51f00ac258f?pvs=4#1df422f6cc204cb8b362f41cda260b8b) but still not in a readable format. +- WIP: Continued implementing the Python [code](https://github.com/vacp2p/token-economics/tree/cryptarchia-selfish-behavior/Nomos/selfish_behavior) to analyze the selfish behavior when choosing the fork rule. This is created by adapting the Cryptarchia spec from the `nomos-spec` repository. + +### `Development` + +- No updates this week. + +## `Coordination Layer` + +### `Research` + +- Had a deep dive into Preconfirmations and Based Sequencing and created this [document](https://www.notion.so/Preconfirmations-and-Based-Sequencing-Preliminary-Research-f5c8c52d44e843e7af503b0259b1a3ef) based on it. +- [PR #102](https://github.com/logos-co/nomos-specs/pull/102): Implemented the nullifier proof (as part of the implementation of the user side of the cross zone atomic transfer PoC). +- [PR #103](https://github.com/logos-co/nomos-specs/pull/103): Set up the infrastructure for using risc0 for CL proofs and integrating the nullifier proof from PR #102 with the CL. The nullifier proof takes about 5 seconds on a local MacBook (without Groth16 wrapping). +- WIP: Started a [design](https://www.notion.so/Trustless-deposit-and-withdrawals-for-a-Nomos-Zone-5ca9eafb21e84c0bb3df21bb682c6140) of a trustless bridge for user-zone funds. + +### `Development` + +- No updates this week. + +## `Testnet + Insights` + +### `Development` + +- [PR #673](https://github.com/logos-co/nomos-node/pull/673): Added a base debug span, consensus, and da-verifier span for tracing logs. +- Investigated minor CI issues and made a temporal fix for Nomos Node to build with libp2p and rustls (discussion in the relevant [PR #673](https://github.com/logos-co/nomos-node/pull/673#issuecomment-2222798751)). For now, the rustls version is pinned, will be reverted after this [issue](https://github.com/libp2p/rust-libp2p/issues/5487) is resolved. + +## `User Tools` + +### `Research` + +- Started the nomos-lib [document](https://www.notion.so/Nomos-lib-1461cca6dfac42f1af5cb84ae8b448b2) (main document to abstract what we need for different binaries external to the nomos-node). +- Started the nomos-cli [document](https://www.notion.so/Nomos-cli-85b80ecf01f4452b9791a958af2a9dd5) (first approach to interact with the nomos network). + +### `Development` + +- No updates this week. + +## `Miscellaneous` + +- Listed future research projects, as Key Differentiators of Nomos vs other projects, [document](https://www.notion.so/Key-Differentiator-Ideas-1a6b0fbe773d4597af8aa63fd04c0b7b). +- Updated the nomos-pm [repository](https://github.com/logos-co/nomos-pm/issues) issues for the insights dashboard. \ No newline at end of file