mirror of
https://github.com/vacp2p/roadmap.git
synced 2026-01-09 07:37:59 -05:00
ACZ updates - Week 6 of 2025Q2 (#153)
This commit is contained in:
@@ -55,14 +55,12 @@ gain support from the Ethereum ecosystem.
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:test-deployment`
|
||||
* owner: Ekaterina
|
||||
* status: started (0%)
|
||||
* start-date: 2025/04/01
|
||||
* end-date: 2025/04/14
|
||||
* start-date: 2025/05/01
|
||||
* end-date: 2025/06/30
|
||||
|
||||
#### Description
|
||||
|
||||
Set up test deployment for the [de-MLS](https://github.com/vacp2p/de-mls) repository.
|
||||
Docker containers have been made to run PoCs,
|
||||
but they assume a single node operation and do not run nodes within themselves.
|
||||
Set up test deployment for the [de-MLS](https://github.com/vacp2p/de-mls) repository.
|
||||
|
||||
#### Deliverables
|
||||
A PR to the [de-MLS](https://github.com/vacp2p/de-mls) repository with
|
||||
@@ -75,7 +73,7 @@ A PR to the [de-MLS](https://github.com/vacp2p/de-mls) repository with
|
||||
* owner: Ekaterina
|
||||
* status: started (70%)
|
||||
* start-date: 2025/04/01
|
||||
* end-date: 2025/04/21
|
||||
* end-date: 2025/05/30
|
||||
|
||||
#### Description
|
||||
|
||||
@@ -120,33 +118,13 @@ This task also contains the integrating the consensus RFC.
|
||||
|
||||
* PR to vacp2p/rfc-index repo with related updates.
|
||||
|
||||
### Extend API To Multiple Admin
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:extend-api`
|
||||
* owner: Ekaterina
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
Expand the [de-MLS](https://github.com/vacp2p/de-mls) codebase by implementing multi-admin support.
|
||||
In preparation for working with multiple admins,
|
||||
extend API for the following processes: processing invitations to a group, applying commits,
|
||||
and preparing a separate channel for exchanging messages between admins.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A PR to the [de-MLS](https://github.com/vacp2p/de-mls) repository
|
||||
updating the API for separate commit and proposal messages.
|
||||
|
||||
### CI Setup
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:ci-setup`
|
||||
* owner: Ekaterina
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
* start-date: 2025/06/01
|
||||
* end-date: 2025/06/30
|
||||
|
||||
#### Description
|
||||
|
||||
@@ -157,3 +135,97 @@ including automated testing and code validation.
|
||||
A PR to the [de-MLS](https://github.com/vacp2p/de-mls) repository
|
||||
with a new CI pipeline for the repository that includes the waku node.
|
||||
|
||||
### Implement consesus layer
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:consensus-layer`
|
||||
* owner: Ekaterina
|
||||
* status: not started
|
||||
* start-date:
|
||||
* end-date:
|
||||
|
||||
#### Description
|
||||
|
||||
Implement a consensus mechanism for one admin based on RFC, i.e.
|
||||
in the end we want to see a separate module
|
||||
that will process all incoming proposals for group state changes
|
||||
and receive a commit message as an output.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
containing new consensus layer as separate module with tests.
|
||||
|
||||
### Separate commit and proposal messages inside app
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:commit-and-proposal`
|
||||
* owner: Ekaterina
|
||||
* status: started (5%)
|
||||
* start-date: 2025/05/05
|
||||
* end-date: 2025/05/23
|
||||
|
||||
#### Description
|
||||
|
||||
Before integrating the consensus, it is necessary to split the process of applying new commits
|
||||
into the corresponding proposal and commits for applying the group state update.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
updating the API for separate commit and proposal messages.
|
||||
|
||||
### Put all proposall message in one queue
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:global-message-queue`
|
||||
* owner: Ekaterina
|
||||
* status: not started
|
||||
* start-date: 2025/05/19
|
||||
* end-date: 2025/05/30
|
||||
|
||||
#### Description
|
||||
|
||||
At the first stage of implementation we separated adding and messages
|
||||
to a group and deleting from a group into different threads,
|
||||
we need one message queue to work with consensus.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
containing update of message processing
|
||||
|
||||
|
||||
### Update frontend
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:frontend-updating`
|
||||
* owner: Ekaterina
|
||||
* status: started (5%)
|
||||
* start-date: 2025/05/01
|
||||
* end-date: 2025/06/30
|
||||
|
||||
#### Description
|
||||
|
||||
The current frontend is difficult to maintain and besides adding new functionality
|
||||
for testing now requires a lot of effort.
|
||||
In addition, communication via websockets needs to be reconsidered in terms of efficiency
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
containing new frontend.
|
||||
|
||||
### Integrate wallet based registration
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-de-mls-tesnet:wallet-based-register`
|
||||
* owner: Ekaterina
|
||||
* status: not started
|
||||
* start-date: 2025/06/01
|
||||
* end-date: 2025/06/30
|
||||
|
||||
#### Description
|
||||
|
||||
For the first version de-mls used a mock version for online registration,
|
||||
now it makes sense to add wallet support for user authentication
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to the [de-MLS repository](https://github.com/vacp2p/de-mls)
|
||||
containing support of wallet as authentication part.
|
||||
@@ -44,7 +44,7 @@ We will also strengthen the Premier Research Destination narrative by:
|
||||
* owner: Marvin
|
||||
* status: done
|
||||
* start-date: 2025/04/01
|
||||
* end-date: 2025/01/07
|
||||
* end-date: 2025/04/07
|
||||
|
||||
#### Description
|
||||
|
||||
@@ -59,8 +59,8 @@ A recorded video.
|
||||
* fully qualified name: `vac:acz:ift:2025q2-ift-zk-calls:ift-zk-call-2`
|
||||
* owner: Marvin
|
||||
* status: not started
|
||||
* start-date: 2025/01/27
|
||||
* end-date: 2025/02/07
|
||||
* start-date: 2025/04/27
|
||||
* end-date: 2025/05/12
|
||||
|
||||
#### Description
|
||||
Preparing the agenda and possible speakers for the ZK call on 6th May.
|
||||
@@ -73,8 +73,8 @@ A recorded video.
|
||||
* fully qualified name: `vac:acz:ift:2025q2-ift-zk-calls:ift-zk-call-3`
|
||||
* owner: Marvin
|
||||
* status: not started
|
||||
* start-date: 2025/03/31
|
||||
* end-date: 2025/03/14
|
||||
* start-date: 2025/05/31
|
||||
* end-date: 2025/06/14
|
||||
|
||||
#### Description
|
||||
Preparing the agenda and possible speakers for the ZK call on 1st June.
|
||||
|
||||
@@ -58,7 +58,7 @@ Waku integration.
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-libp2p-mix-testnet:dockerize`
|
||||
* owner: Akshaya
|
||||
* status: started (40%)
|
||||
* status: started (80%)
|
||||
* start-date: 2025/04/1
|
||||
* end-date: 2025/04/14
|
||||
|
||||
@@ -89,7 +89,7 @@ Delivering the implementation a simple gossipsub PoC over Waku the mixnet.
|
||||
### Updating RFC
|
||||
* fully qualified name: `vac:acz:ift:2025q2-libp2p-mix-testnet:update-rfc`
|
||||
* owner: Akshaya
|
||||
* status: started (0%)
|
||||
* status: started (20%)
|
||||
* start-date: 2025/04/1
|
||||
* end-date: 2025/04/21
|
||||
|
||||
@@ -104,3 +104,19 @@ Updating the [mixnet RFC](https://rfc.vac.dev/vac/raw/mix) with latest findings
|
||||
|
||||
* A PR to [vacp2p/rfc-index](https://github.com/vacp2p/rfc-index)
|
||||
|
||||
### Consulting Waku-mix
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-libp2p-mix-testnet:consulting-waku-mix`
|
||||
* owner: Akshaya
|
||||
* status: started (20%)
|
||||
* start-date: 2025/05/1
|
||||
* end-date: 2025/06/30
|
||||
|
||||
#### Description
|
||||
|
||||
Consulting about mixnet to Mixnet integration to the Waku.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* PR to [vacp2p/mix](https://github.com/vacp2p/mix) or [waku-org/nwaku](https://github.com/waku-org/nwaku/) repo.
|
||||
|
||||
|
||||
@@ -62,4 +62,63 @@ with the existing infrastructure.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A document to notion page .
|
||||
* A document to ACZ notion page
|
||||
|
||||
### Prover Service Development
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-rln-status-l2:prover-service`
|
||||
* owner: Sylvain
|
||||
* status: started
|
||||
* start-date: 2025/04/16
|
||||
* end-date: 2025/06/30
|
||||
|
||||
### Description
|
||||
|
||||
This task involves integrating RLN (Rate-Limiting Nullifier) into the Status L2 architecture,
|
||||
with a focus on the prover component within the Linea network.
|
||||
The goal is to ensure seamless deployment while aligning RLN functionality with the design requirements
|
||||
of the target system and maintaining compatibility with the existing infrastructure.
|
||||
|
||||
Key responsibilities include:
|
||||
- Managing the RLN deployment process within the Linea-based prover stack.
|
||||
- Implementing credential issuance and proof generation using the existing zerokit library.
|
||||
- Handling secret values securely and ensuring proper interaction with the RLN Membership Contract.
|
||||
- Provide information required to develop the Linea Sequencer plugin (performance & throughput).
|
||||
|
||||
* A PR to the appropriate repository, including the RLN integration and all related components.
|
||||
|
||||
### RPC Node Modification
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-rln-status-l2:rpc-node-modification`
|
||||
* owner: Sylvain
|
||||
* status: started
|
||||
* start-date: 2025/04/16
|
||||
* end-date: 2025/06/30
|
||||
|
||||
### Description
|
||||
|
||||
This task focuses on enhancing the interaction between RPC nodes and the Prover within the Linea network by:
|
||||
- Developing plugins for RPC nodes to forward transaction data directly to the Prover,
|
||||
enabling more efficient proof generation.
|
||||
|
||||
### Deliverables
|
||||
|
||||
* A PR to the appropriate repository, implementing the RPC plugins and the modified `linea_estimateGas` logic.
|
||||
|
||||
### Gas estimation RPC Modification
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-rln-status-l2:gas-estimate-rpc-modification`
|
||||
* owner: Sylvain
|
||||
* status: started (0%)
|
||||
* start-date: 2025/04/16
|
||||
* end-date: 2025/06/30
|
||||
|
||||
### Description
|
||||
|
||||
This task focuses on enhancing the interaction between RPC nodes and the Prover within the Linea network by:
|
||||
- Modifying the `linea_estimateGas` method to dynamically adjust gas estimation based on Deny List queries,
|
||||
improving accuracy and system responsiveness.
|
||||
|
||||
### Deliverables
|
||||
|
||||
* A PR to the appropriate repository, implementing the modified `linea_estimateGas` logic.
|
||||
|
||||
@@ -64,7 +64,7 @@ A set of PRs and issues to [vacp2p/zerokit](https://github.com/vacp2p/zerokit/)
|
||||
### RLN Execution Bottleneck Analysis
|
||||
* fully qualified name: `vac:acz:ift:2025q2-zerokit:rln-execution-bottleneck`
|
||||
* owner: Sylvain
|
||||
* status: started (10%)
|
||||
* status: started (50%)
|
||||
* start-date: 2025/04/07
|
||||
* end-date: 2025/04/14
|
||||
|
||||
@@ -117,11 +117,11 @@ ensuring improved performance and maintainability.
|
||||
The implementation should be submitted as a pull request to `zerokit`
|
||||
and linked to the issue related to release v0.8.0.
|
||||
|
||||
## Parallelization Feasibility Study For rln-wasm
|
||||
### Parallelization Feasibility Study For rln-wasm
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-zerokit-v0-8:parallel-computation-study`
|
||||
* fully qualified name: `vac:acz:ift:2025q2-zerokit:parallel-computation-study`
|
||||
* owner: Vinh
|
||||
* status: started (0%)
|
||||
* status: started (40%)
|
||||
* start-date: 2025/04/07
|
||||
* end-date: 2025/04/21
|
||||
|
||||
@@ -132,14 +132,82 @@ the possibility and necessity to use parallel computation.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
A working implementation with parellel feature into `zerokit`, ensuring improved performance and maintainability.
|
||||
The implementation should be submitted as a pull request to `zerokit` and linked to the issue related to release v0.8.0.
|
||||
* A PR to `zerokit` and linked to the issue related to release v0.8.0.
|
||||
|
||||
### Improve Computation In Merkle Tree
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-zerokit:merkle-tree-improvement`
|
||||
* owner: Vinh
|
||||
* status: not started
|
||||
* start-date: 2025/04/21
|
||||
* end-date: 2025/05/09
|
||||
|
||||
|
||||
#### Description
|
||||
While working on `vac:acz:ift:2025q2-zerokit-v0.8.0:rln-execution-bottleneck`,
|
||||
we identified an inefficient algorithm used for updating the tree structure.
|
||||
Although improvements were made, there's still potential for further optimization.
|
||||
|
||||
One promising approach is to update the hashes incrementally during tree updates,
|
||||
which could reduce redundant computations.
|
||||
Additionally, refactoring the current algorithm to leverage the rayon crate for parallelism
|
||||
may significantly boost performance—potentially by 20% or more.
|
||||
This task involves analyzing the current implementation, applying targeted refactors,
|
||||
and introducing parallel processing where appropriate.
|
||||
|
||||
#### Deliverables
|
||||
|
||||
* A PR to `zerokit` and linked to the issue related to release v0.8.0.
|
||||
|
||||
|
||||
### Investigate Semaphore
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-zerokit:semaphore-parts-bench`
|
||||
* owner: Ben
|
||||
* status: started (0%)
|
||||
* start-date: 2025/04/30
|
||||
* end-date: 2025/05/16
|
||||
|
||||
### Description
|
||||
|
||||
[Semaphore](https://github.com/semaphore-protocol/semaphore-rs/tree/main) is a zero-knowledge protocol
|
||||
that allows users to prove membership in a group without revealing their identity.
|
||||
This enables anonymous messaging, voting, and other privacy-preserving applications.
|
||||
In this task, we aim to evaluate whether replacing the current zero-knowledge proof system makes sense.
|
||||
To begin, we will focus on two areas of research:
|
||||
|
||||
1. Compare the [light-poseidon](https://crates.io/crates/light-poseidon) library
|
||||
with our current Poseidon hash implementation
|
||||
- Verify whether the parameters used are the same
|
||||
- Prepare performance benchmarks
|
||||
|
||||
2. Evaluate the efficiency of the [lean-imt Merkle tree](https://github.com/brech1/zk-kit.rust/tree/main/crates/lean-imt)
|
||||
versus our current Merkle tree implementation
|
||||
- Focus on tree initialization, leaf insertion, proof generation, and proof verification
|
||||
|
||||
3. Compare the zero-knowledge proof systems themselves
|
||||
- Once we understand the relative performance of Poseidon and Merkle tree implementations,
|
||||
evaluate the zk-proof construction step
|
||||
- Assess the performance and complexity of generating and verifying proofs
|
||||
using the current system versus potential alternatives
|
||||
|
||||
For context, see our previous investigation into Semaphore usage in Zerokit:
|
||||
[Semaphore README in Zerokit branch](https://github.com/vacp2p/zerokit/blob/semaphore-update/semaphore/README.md)
|
||||
|
||||
### Deliverables
|
||||
|
||||
Submit either a pull request or a comment on [this issue](https://github.com/vacp2p/zerokit/issues/17)
|
||||
in the Zerokit repository that includes:
|
||||
|
||||
- Benchmark results for both the Poseidon hash and the Merkle tree implementations
|
||||
- A summary of findings, including whether it makes sense to proceed
|
||||
with evaluating alternative zk-proof systems based on the current efficiency data
|
||||
|
||||
### Zerokit maintaining
|
||||
|
||||
* fully qualified name: `vac:acz:ift:2025q2-zerokit:zerokit-maintaining`
|
||||
* owner: Ekaterina
|
||||
* status: started (5%)
|
||||
* status: started (40%)
|
||||
* start-date: 2025/04/01
|
||||
* end-date: 2025/05/30
|
||||
|
||||
|
||||
@@ -34,3 +34,20 @@ and introduced into the ecosystem.
|
||||
|
||||
## Task List
|
||||
|
||||
### Unifying 2025q1 Documents
|
||||
* fully qualified name: `vac:acz:nes:2025q2-nescience-consulting:unifying-q1-docs`
|
||||
* owner: Marvin
|
||||
* status: started (0%)
|
||||
* start-date: 2024/05/05
|
||||
* end-date: 2025/05/20
|
||||
|
||||
### Description
|
||||
Nescience has many unstructured documents from 2025q1, this task entails creating a single document
|
||||
that covers all these new ideas by removing recurring topics. Also, it includes creating a table for each document
|
||||
which topics we include or exclude.
|
||||
|
||||
|
||||
### Deliverables
|
||||
* A notion page that consists of a single unified doc
|
||||
* A table that shows which topics we include or exclude
|
||||
* A notion page that shows decisions need to be made
|
||||
@@ -32,4 +32,19 @@ We will also strengthen the Premier Research Destination narrative by:
|
||||
* This will enable the Nomos project to be more effectively integrated
|
||||
and introduced into the ecosystem.
|
||||
|
||||
## Task List
|
||||
## Task List
|
||||
|
||||
### Zk Consulting Nomos 1
|
||||
* fully qualified name: `vac:acz:nomos:2025q2-nomos-consulting:zk-consulting-nomos-1`
|
||||
* owner: Marvin
|
||||
* status: started (80%)
|
||||
* start-date: 2024/04/20
|
||||
* end-date: 2025/05/17
|
||||
|
||||
### Description
|
||||
Provide feedback Nomos' document analysis of failures in mix networks Design considerations page.
|
||||
|
||||
|
||||
### Deliverables
|
||||
- Provide comments for Nomos team to address in the document (and corresponding overleaf).
|
||||
- Add proofs to these documents as needed.
|
||||
Reference in New Issue
Block a user