logos-messaging-nim/examples/wakustealthcommitments
fryorcraken bc8acf7611
feat: Waku API create node (#3580)
* introduce createNode

# Conflicts:
#	apps/wakunode2/cli_args.nim

* remove confutils dependency on the library

* test: remove websocket in default test config

* update to latest specs

* test: cli_args

* align to spec changes (sovereign, message conf, entrypoints

* accept enr, entree and multiaddr as entry points

* post rebase

* format

* change from "sovereign" to "core"

* add example

* get example to continue running

* nitpicks

* idiomatic constructors

* fix enum naming

* replace procs with consts

* remove messageConfirmation

* use pure enum

* rename example file
2025-10-01 16:31:34 +10: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.