Week 23 2026 (Mon June 01 - Fri June 05, 2026) §
Highlights §
- After identifying a critical vulnerability with our initial hidden service specification, an second iteration is now ready for review.
- libp2p 2.0.0 has been released, and we are closely collaborating with Anon. Comms in getting it updating Mix to support it.
- We gave a talk during this week’s ZK research call about “dynamic” proofs; i.e., proofs in which a large part of the witness remains unchanged across proofs, and techniques for speeding those up. Writeup available here.
- achieved:
- Started working on a Mix simulation, both to clarify things and for the simulation results to feed back into the design
- Discussion on how to handle two Mix operational modes:
ForwardAddr (exit != destination) and MixNode (exit == destination) (see https://discord.com/channels/973324189794697286/1511629352880574576). To support the discussion, some examples/proposal has been made:
- Draft PR for experimentation logos-co/nim-libp2p-mix/pull/11 where destination read behavior is encoded in Sphinx packet payload and the
libp2p_mix_experimental_exit_is_dest is removed.
- Example for the ping protocol in
MixNode mode of operation added: examples/mix_ping_mix_node.nim
- Draft PR for the spec changes created (logos-lips/pull/351), but put on hold till the above discussion settles on something.
- Investigating/reviewing updating the current MIX implementation to libp2p v2.0.0 (in draft release currently):
- next:
- Finish and experiment with the simulator
- Implement connection state management in the reference impl.
- review logos-co/nim-libp2p-mix/pull/12
- continue discussion on Mix operation modes
- workout example of the simple Mix transport (keep postponing it, because something new continuously pops out with higher priority - like updating Mix to support libp2p v2.0).
- achieved:
- Found (and hopefully fixed) an attack against hidden services with the current SURB-based design.
- Worked on second iteration on the hidden services specification:
- Define hidden services epoch and update the descriptor and KDF used to match the implementation.
- Changed the SURBs-based client-service communication and defined an approach that uses one-time rendezvous point since the previous approach turn out to be unsafe.
- next:
- Studying the design choices and possible alternatives to (the various components of) the Tor design.
- achieved:
- Support for
--no-bootstrap-node flag in the storage node, allowing initial bootstrap nodes to startup without connecting to a default network. PR
- Fixed an issue where PVCs were being orphaned after release test runs PR
- Added dist test framework tests (meta tests) that cover the release test fixtures.
- next:
- Finish initial dist test framework tests
- Address PR feedback (mainly, try to eliminate PVCs in GKE setup)
- achieved:
- Gave a talk about “dynamic” proofs at the ZK research call. You can also read the detailed writeup.
- next:
- We should implement and benchmark this approach, but it’s low-priority right now.
- next:
- Track the upstream nim-libp2p-mix 2.x PR so we can merge anonymous DHT queries into master once master bumps to libp2p 2.x
- next:
- Update to last module builder version
Logos Blockchain collab (Nimbos) §
- achieved:
- merged Rahul’s multitasking rework into nim-groth16 (Nimbos runs on
refc, for reasons…)