logos-delivery/examples/wakustealthcommitments
Fabiana Cecin 44a77b473e
chore: replace minprotobuf with nim-protobuf-serialization
* convert all codecs except sds_persistency to proto2
* add common/protobuf_ext.nim: generic array[N,byte] protobuf extension
* encode PeerId and MultiAddress via libp2p extensions
* encode PublicKey as seq[byte]
* change encode() to return seq[byte] and update all .encode().buffer call sites
* reduce common/protobuf.nim to ProtobufError/ProtobufResult
* add wire-format tests for message, filter v2, lightpush v3/legacy, rln proof
* adapt chat2, chat2mix, chat2bridge, wakustealthcommitments
* delete tests/common/test_protobuf_validation
* add protobuf_serialization to logos_delivery.nimble
2026-07-16 14:43:44 -03:00
..

wakustealthcommitments

This application/tool/protocol is used to securely communicate requests and responses for the Stealth Address Scheme

Uses TWN config as default, and content topic: /wakustealthcommitments/1/app/proto

Usage

  1. Clone the erc-5564-bn254 repo and build the static lib
gh repo clone rymnc/erc-5564-bn254
cd erc-5564-bn254
cargo build --release --all-features
cp ./target/release/liberc_5564_bn254.a <path-to-nwaku>

![NOTE] This static library also includes the rln ffi library, so you don't need to build it separately. This is because using both of them separately brings in a lot of duplicate symbols.

  1. Build the wakustealthcommitments app
cd <path-to-nwaku>
source env.sh
nim c --out:build/wakustealthcommitments  --verbosity:0 --hints:off -d:chronicles_log_level=INFO -d:git_version="v0.24.0-rc.0-62-g7da25c" -d:release --passL:-lm --passL:liberc_5564_bn254.a --debugger:native examples/wakustealthcommitments/wakustealthcommitments.nim
./build/wakustealthcommitments \
    --rln-relay-eth-client-address:<insert http rpc url> \
    --rln-relay-cred-path:<path-to-credentials-file> \
    --rln-relay-cred-password:<password-of-credentials-file>

This service listens for requests for stealth commitment/address generation, partakes in the generation of said stealth commitment and then distributes the response to the mesh.