From 0a5442b5e1612e67fe0fa3c3b8344a14e4cf2980 Mon Sep 17 00:00:00 2001 From: Danish Arora <35004822+danisharora099@users.noreply.github.com> Date: Thu, 17 Jul 2025 14:05:38 +0530 Subject: [PATCH] chore: add rln.waku.org to README for membership registration (#158) --- README.md | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index dfdf09c..3598b51 100644 --- a/README.md +++ b/README.md @@ -39,8 +39,27 @@ The script is experimental, feedback and pull requests are welcome. ### 🔑 1. Register RLN membership -The RLN membership is your access key to The Waku Network. Its registration is done onchain, and allows your nwaku node to publish messages in a decentralized and private way, respecting some [rate limits](https://rfc.vac.dev/spec/64/#rate-limit-exceeded). -Messages exceeding the rate limit won't be relayed by other peers. +> **Note:** If upgrading from less than v0.36.0, run the following commands before proceeding with the registration: +> +> ```sh +> sudo rm -r rln_tree +> sudo rm keystore/keystore.json +> ``` + +The RLN membership is your access key to The Waku Network. Its registration is done on-chain, allowing your `nwaku` node to send messages in a decentralized and private way, respecting some [rate limits](https://rfc.vac.dev/spec/64/#rate-limit-exceeded). Other peers won't relay messages that exceed the rate limit. + +#### Recommended: Register via rln.waku.org + +To register for RLN membership and generate your keystore: + +1. Visit [https://rln.waku.org](https://rln.waku.org). +2. Follow the instructions to register your membership and generate a `keystore.json` file. +3. Download the generated `keystore.json` and place it in the `keystore/` directory of your `nwaku-compose` setup (i.e., at `keystore/keystore.json`). + +#### Alternative: Register locally + +You can also register your membership using the provided script, which will store it in `keystore/keystore.json`. +Note that if you just want to relay traffic (not publish), you don't need to perform the registration. Before registering you need to mint and approve the tokens to pay for the registration. The simplest way is using Foundry's [cast](https://getfoundry.sh/) tool, which you can install with: @@ -61,8 +80,7 @@ Approve the RLN contract to spend tokens on behalf of your account: cast send $TOKEN_CONTRACT_ADDRESS "approve(address,uint256)" $RLN_CONTRACT_ADDRESS 5000000000000000000 --private-key $ETH_TESTNET_KEY --rpc-url $RLN_RELAY_ETH_CLIENT_ADDRESS ``` -This command will register your membership and store it in `keystore/keystore.json`. -Note that if you just want to relay traffic (not publish), you don't need one. +This command will register your membership and store it in `keystore/keystore.json`: ``` ./register_rln.sh