577 Commits

Author SHA1 Message Date
G
e680669394 feat(noise): add Noise Handshake processing and after-handshake encryption (#934)
* feat(noise): adding ChaChaPoly encryption

* feat(noise): add support to Noise public keys

* feat(noise): added support to Waku Payload V2

* fix(noise): missing comma

* feat(noise): add Noise Handshake State Machine and primitives

* feat(noise): add Handshake processing and after handshake encryption

* feat(noise): code updated according to #933

* fix(noise): export HandshakeResult

* feat(noise): add pre message validation utility

* chore(noise): improve documentation

* fix(noise): address reviewers comments
2022-06-03 21:12:41 +02:00
Hanno Cornelius
bc8ce89e91 chore: update submodules (#987) 2022-06-01 11:49:41 +02:00
Hanno Cornelius
77f80f53f7 fix(sqlite): memory leak due to undisposed prepared statements (#981) 2022-05-31 12:47:38 +02:00
Sanaz Taheri Boshrooyeh
ddb2b9b82e Feat (Rln relay): adds utility procs to listen to the registration events emitted by the rln membership contract (#976)
* adds the contract handler file

* adds integration test for the group listening

* adds groupManagement proc

* deletes rln relay contract handler file

* brings back all the tests

* replaces toUINT256 with getIdCommitment proc

* replaces individual futures with an array of futures

* adds code documentation

* asyncSpawn instead of await

* adds untitest for toIDCommitment and toUInt256

* reorganizes the test and add rlnInstance

* mounts handleGroupUpdates on the rln peer

* asyncSpawn to await

* implements toIDCommitment

* updates the unittest

* improves the code documentation

* removes unused tests

* removes registration of the dynamic group management handler

* adds a comment

* adds a comment

* adds a TODO

* removes getIdCommitment
2022-05-30 12:14:07 -07:00
Lorenzo Delgado
cd3d5a5f0e feat(store): ability to decouple store from relay (#937) 2022-05-23 20:42:48 +02:00
Lorenzo Delgado
cc0b9e6ea8 chore: ignore Jetbrains IDE configuration files 2022-05-23 20:42:48 +02:00
G
33c225ea9c feat(noise): add Noise Handshake State Machine and primitives (#933)
* feat(noise): adding ChaChaPoly encryption

* feat(noise): add support to Noise public keys

* feat(noise): added support to Waku Payload V2

* fix(noise): missing comma

* feat(noise): add Noise Handshake State Machine and primitives

* Fixed header

* refactor(noise): add comments, restyle code

* refactor(noise): address reviewer's comments

* feat(noise): add Noise Handshake State Machine and primitives

* refactor(noise): rebase

* refactor(noise): refactor and add documentation

* fix(noise): fixed trace parameter

* update submodules

* fix(noise): remove echo, add stdout.write in print handshake

* refactor(noise): add Noise state machine overview

* Revert "update submodules"

This reverts commit 9fc162dff83c328b94d644c729a77f180206b729.

* update submodules

* fix Jenkins caching

* Revert "update submodules"

This reverts commit 1927d9dd26047dd451b314b1b186a95cab70eed4.

* revert nim-eth submodule update

* fix(noise): missing camelCase

* feat(noise): adding unit tests for Noise State machine primitives

* fix(noise): address reviewers' comments

* fix(noise): use expect for error handling in unit tests

* fix(noise): revert to implicit nonce declaration in CipherState initialization
2022-05-20 15:51:36 +02:00
Hanno Cornelius
4c2e0d75f1 docs: add operator guide docs (#963) 2022-05-20 14:48:34 +02:00
Hanno Cornelius
b483ae4b0d chore: update submodules (#974) 2022-05-20 12:57:19 +02:00
Daniel Kaiser
9a0b8688ff chore(migration): avoid unnecessarily calling migration (#967) 2022-05-18 21:44:53 +02:00
Hanno Cornelius
771c741e05 docs: generate and configure nodekey (#957) 2022-05-18 15:00:30 +02:00
Daniel Kaiser
e76c120d4d fix(dns4name): dns4name + unset port resolved (#965) 2022-05-18 10:15:03 +02:00
Daniel Kaiser
f30639c889 feat(info): add --version cmd flag (#970) 2022-05-17 22:11:07 +02:00
Daniel Kaiser
40806860d9 chore(docker): use NIMFLAGS instead of NIM_PARAMS (#961)
NIM_PARAMS is and internal variable.
NIMFLAGS should be used outside of nimbus build system.

includes:

* fix(docker): copy RLN parameters.key into the container
* chore(makefile): NIMFLAGS in docker img rule
2022-05-17 21:11:07 +02:00
Daniel Kaiser
70a6a66eb3 feat(config): add config file support (#953)
including

* bump vendor/nim-confutils
* add nim-toml-serialization submodule
* feat(config): add example config file
* add new feature to CHANGELOG
2022-05-17 17:48:08 +02:00
Hanno Cornelius
adc6110a18 Disable GossipSub PX by default (#958) 2022-05-13 18:18:09 +02:00
Zahary Karadjov
0d9b4f4a53 Nimble fix: The repo doesn't use a src folder 2022-05-12 14:25:02 +03:00
Zahary Karadjov
d0741b1bd5 RLN is not a Nimble package 2022-05-11 12:15:34 +03:00
Sanaz Taheri Boshrooyeh
63a9d9e63b chore|feat (waku-rln-relay): modules reorganization|Initial test for capturing events using nim-web3 (#941)
* first edition

* adds the full test scenario

* fixes typos

* fixes a bug in the supplied command

* further edits the description

* displays the chat prompt after spam detection

* updates changelog

* minor wording fix

* adds a new test file for onchain rln relay

* adds the Event proc

* adds one working example of event subscription

* defines a new unitt test for event subscription

* adds the new test file

* cleans up the code

* adds a working event subscription for faucet contract

* wip

* makes faucet test conditional

* updates contract byte codes

* adds a working test for event subscription and cleans up the tests

* fixes case

* adss toUInt256 unit function

* enables the tests

* fixes a bug

* undo commented tests

* cleans up the test

* logs the pk

* removes excess entry in the changelog

* fixes spacing

* comments

* removes unused test codes

* adds the conditional compilation for onchain tests

* uncomments offchain tests

* removes onchain tests

* reorganizes the code and moves the rln contract data into a separate module

* deletes txt files

* beautifies the code

* beautifies the code

* removes an excess line

* more formatting fixes

* minor fix

* updates the case of membership fee const

* renames compare to diff

* renames time to e

* edits the number of arguments of the send proc

* fixes a comment alignment

* fixes indentation

* fixed id style

* splits check from condition

* fixes a naming mismatch
2022-05-10 14:09:18 -07:00
Franck R
e635fda9ae Fix typo (#960) 2022-05-10 12:49:12 +02:00
Daniel Kaiser
d828662387 perf(store): add index on receiverTimestamp (#947) 2022-04-23 10:49:11 +02:00
G
c536c27f19 fix(Jenkins): remove caching (#945)
* Update Jenkinsfile.prs
2022-04-19 12:51:27 +02:00
G
fe044bc10f feat(noise): add support to Waku Payload V2 (#932)
* feat(noise): adding ChaChaPoly encryption

* feat(noise): add support to Noise public keys

* feat(noise): added support to Waku Payload V2

* fix(noise): missing comma

* Fixed header

* refactor(noise): add comments, restyle code

* refactor(noise): address reviewer's comments

* Update nim-eth

* fix(noise): moved strutils in std
2022-04-12 13:50:51 +02:00
Hanno Cornelius
a1a776e1b5 chore: update submodules (#940) 2022-04-12 09:35:19 +02:00
Hanno Cornelius
982d395c12 fix(store): timestamp validity checks (#876) 2022-04-11 14:58:18 +02:00
G
10d336fc26 feat(noise): add support to encrypted/unencrypted public keys (#931)
* feat(noise): adding ChaChaPoly encryption

* test(noise): add test for ChaChaPoly Encryption/decryption

* style(noise): converted variables to camelCase

* feat(noise): add support to Noise public keys

* Fixed header

* refactor(noise): address reviewer's comments

* refactor(noise): small fixes/comments

* refactor(noise): add empty plaintext/ciphertext handling + string encryption test

* refactor(noise): address reviewer's comments
2022-04-06 14:37:02 +02:00
G
b536a49921 feat(noise): add support to ChaChaPoly encryption (#930)
* feat(noise): adding ChaChaPoly encryption

* fix(noise): restored waku2 tests

* fix(noise): missing comma

* Fixed header

* fix(noise): made comment about empty ChaChaPolyKey clearer

* refactor(noise): address reviewer's comments

* test(noise): add test for ChaChaPoly Encryption/decryption

* refactor(noise): removed libp2p specific debug tools usage

* style(noise): converted variables to camelCase
2022-04-04 17:46:51 +02:00
Sanaz Taheri Boshrooyeh
2e79a2c960 feat: make the rln-relay protocol available in the waku docker image (#924) 2022-03-31 13:15:00 -07:00
Hanno Cornelius
dd35d77e0f docs: release v0.9 2022-03-31 11:16:20 +02:00
Daniel Kaiser
051d67c69a feat(store): info message after delete (#929) 2022-03-30 22:55:39 +02:00
Daniel Kaiser
e51001fca7 feat(store): vacuum after delete (#928) 2022-03-30 22:54:37 +02:00
Hanno Cornelius
4c6ea0c7f4 fix: release assets do not work (#926) 2022-03-30 17:29:12 +02:00
Daniel Kaiser
811e82b12a feat(jsonrpc): add call returning git version (#919) 2022-03-30 17:17:21 +02:00
Daniel Kaiser
020712c0db feat(jsonrpc): add ENR to debug_v1_info call (#918) 2022-03-30 15:10:15 +02:00
Sanaz Taheri Boshrooyeh
9bad88b36b chore: bumps up the alpine version to 3.15 (#923) 2022-03-29 12:27:12 -07:00
Hanno Cornelius
93b25638e6 docs(rpc-api-tutorial): fix broken links in JSON-RPC API tutorial (#920) 2022-03-29 15:40:11 +02:00
Hanno Cornelius
20744b3a36 feat(relay): add support for gossipsub peer exchange (#911) 2022-03-29 10:09:48 +02:00
Daniel Kaiser
d975fb305c fix(store): capacity limit for persistent message store (#900)
* fix(store): limit capacity of persistent message store

fixes performance issue of loading a large message table by deleting
old messages in case of an overflow

* test(store): message capacity limit
2022-03-28 20:27:14 +02:00
jemboh
913899d97b fix: building on Apple clang and M1 (#907) 2022-03-28 15:21:02 +02:00
Hanno Cornelius
52a0395beb docs: added bug reporting section to main readme (#912) 2022-03-28 14:17:50 +02:00
Daniel Kaiser
a29e4cffb0 fix(discv5): info print ENR containing discv5 udp port (#913) 2022-03-28 10:29:19 +02:00
Sanaz Taheri Boshrooyeh
0ccf2e0fd8 Revert "chore(rln-relay): Copy rln lib into wakunode2 docker container (#909)" (#916) 2022-03-26 13:01:27 +08:00
Sanaz Taheri Boshrooyeh
33432cf36d chore(rln-relay): Copy rln lib into wakunode2 docker container (#909)
* Update Dockerfile

* makes librln optional

* adds comments

* marks the entire rlnlib directory optional
2022-03-25 13:16:02 -07:00
Daniel Kaiser
da0de11cc5 chore(rln): add cleanrln make rule + docu (#910)
* chore(rln): add cleanrln to make rule

- add `cargo clean` to  `make clean`
- add new `cleanrln` make rule that `cargo clean`s the rln vendor repo

* docs(rln): add trouble shooting section

- list `make cleanrln` as a solution to force rebuilding the rln crate
2022-03-25 16:08:13 +01:00
Sanaz Taheri Boshrooyeh
8ea25d1b2a Increase rln-relay logging (#908)
* updates default rln-relay content topic

* adds further debug and trace level logs

* converts a debug level log to the trace level
2022-03-24 10:47:40 -07:00
Hanno Cornelius
7c40f45279 chore: update submodules (#905) 2022-03-23 15:20:07 +02:00
Sanaz Taheri Boshrooyeh
5da1213e0d Tutorial for rln-relay live testnet (#898)
* first edition

* adds the full test scenario

* fixes typos

* fixes a bug in the supplied command

* further edits the description

* displays the chat prompt after spam detection

* updates changelog

* minor wording fix

* Update rln-chat2-live-testnet.md
2022-03-18 15:51:26 -07:00
Daniel Kaiser
3f15d39d83 add dns bootstrap to changelog (#899) 2022-03-18 22:31:34 +01:00
Hanno Cornelius
39e1c4e6c2 chore(chat2): remove noise, set sender timestamp (#877) 2022-03-18 13:13:32 +02:00
Hanno Cornelius
988453f287 Fix: timestamp type could overflow before conversion (#892) 2022-03-18 12:04:11 +02:00