318 Commits

Author SHA1 Message Date
Hanno Cornelius
d09ba25dd6 Change contentTopic to string (#463)
* Change contentTopic to string

* Missed a spot

* Try to fix Windows CI

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
2021-04-08 17:55:19 +08:00
Oskar Thorén
70798cd9d9 Make wakunode2 and wakunode2 default to DEBUG log (#462)
Logs too noisy by default, full of gossipsub TRC making it hard to see what is going on on a local node
2021-04-08 13:40:49 +08:00
Sanaz Taheri Boshrooyeh
618d48d422 Updates the field number of proof and timestamp (#457)
* updates the fields numbers of proof and timestamp

* clarifies that proof is not part of waku message specs

* Update waku/v2/protocol/waku_message.nim

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>

* fixes indentation

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
2021-04-07 11:08:46 -07:00
Sanaz Taheri Boshrooyeh
af7de3e189 adds startTime and endTime to the HistoryQuery (#451) 2021-04-02 15:53:28 -07:00
Sanaz Taheri Boshrooyeh
0ffd17006e Add timestamp field to the waku message (#450)
* adds timestamp field

* unit test for timestamp

* adds comments

* updates test title
2021-04-02 14:28:46 -07:00
Hanno Cornelius
d37a305f21 Start relay protocol on wakunode2 (#446)
* Start relay protocol on wakunode2
2021-04-01 11:37:14 +02:00
Sanaz Taheri Boshrooyeh
31e3fd5297 Rln-relay zkp module Nim bindings (#427)
* entirely replaces the prior rln header, the var variables are changed to ptr

* updates the unittest of key_gen

* adds test for update_next_member

* updates membershipKeyGen internals and prototype

* adds createRLNInstance

* adds helpers methods

* adds generateKeyPairBuffer

* cleans up the test and adds comments

* renames  merkleTreeDepth to d

* fixes a buf re decoding the keys into sk and pk

* adds getSKPK proc

* unifies key gen helper procs, adds todos

* comments out the createRLNInstance

* refactors the code based on the updated createRLNInstance interface

* adds the test for the verify proc

* fixes a variable name and replaces random key gen with the real key gen

* tests a simple hash

* adds get_root method

* fixes the data pointer issue and adds the proof breakdown

* adds rln

* adds unit tests for Merkle tree

* adds a sample hash test

* fixes the hash bug and comments out unused part of proof gen test

* cleans up the proof gent test

* replaces unsafeAddr with addr

* fixes an issue in key gen

* updates rln submodule

* fixes the verification problem

* adds a failed test

* replaces an old test scenario with a new one

* handles createRLNInstance output

* working createRLNInstance2

* refactors the code by replacing the old createRLNInstance

* renames createRLNInstance2

* adds documentation and reorganizes rln.nim

* replace echo with debug, renames vars, adds a bad proof test

* minor

* minor

* edits var names

* adds one more check

* adds one more test to the hash

* enforcing exception handling

* adds pacman -Sy

* removes update:true

* activates update
2021-03-31 17:39:27 -07:00
Hanno Cornelius
5cfa7bd93a Specify chat2 message format (#440)
* Specify chat2 message format

* Clarify payload is UTF8 encoded
2021-03-31 17:06:20 +02:00
Franck Royer
fa83e13e81 Update kibana link to only filter on fleet (#444)
Also, return last 7 days of logs instead of
fixed date in the past.
2021-03-31 14:32:18 +08:00
Hanno Cornelius
cbe81b711c Fix nil error when starting wakunode2 with store/filter node (#441) 2021-03-30 15:33:19 +02:00
Kim De Mey
91dc245604 Bump chronos and fix exception tracking issues (#436)
* Bump nim-chronos and fix exception tracking issues

* Bump other Nim submodules to latest

* Fix repeatMessage properly through proc type fix in nim-eth

Also add and use unittest2 through testutils to avoid extra
annotations.
2021-03-26 10:52:04 +01:00
Hanno Cornelius
daae9f3e1d Integrate persistent peer storage (#437)
* Integrate persistent peer storage
2021-03-26 10:49:51 +02:00
Hanno Cornelius
3167a134cb Added persistent storage for peers (#435) 2021-03-25 10:37:11 +02:00
Sanaz Taheri Boshrooyeh
5a0ed0e597 Adds Merkle tree Nim bindings (#430)
* entirely replaces the prior rln header, the var variables are changed to ptr

* updates the unittest of key_gen

* adds test for update_next_member

* updates membershipKeyGen internals and prototype

* adds createRLNInstance

* adds helpers methods

* adds generateKeyPairBuffer

* cleans up the test and adds comments

* renames  merkleTreeDepth to d

* fixes a buf re decoding the keys into sk and pk

* adds getSKPK proc

* unifies key gen helper procs, adds todos

* comments out the createRLNInstance

* refactors the code based on the updated createRLNInstance interface

* adds the test for the verify proc

* fixes a variable name and replaces random key gen with the real key gen

* tests a simple hash

* adds get_root method

* fixes the data pointer issue and adds the proof breakdown

* adds rln

* adds unit tests for Merkle tree

* deletes unnecessary comments

* updates createRLNInstance to return bool indicating the success of call

* updates create RLN Instance interface

* minor

* clean up

* removes unused imports

* adds documentation

* adds comments

* adds byteutils

* removes extra spaces

* updates rln submodule

* deletes genSKPK

* fixes a bug in membershipKeyGen

* unsafeAddr to addr

* Update waku/v2/protocol/waku_rln_relay/rln.nim

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>

* clean up

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
2021-03-24 10:26:56 -07:00
Hanno Cornelius
38946bd366 Improvement/bridge improvements (#429)
* General test, import and log improvements

* Bridge improvements
2021-03-23 10:04:51 +02:00
Hanno Cornelius
d863ff5ecf Fix marshalling of message payloads (#428)
Fix marshalling of message payloads
2021-03-22 17:13:56 +02:00
Hanno Cornelius
b99d1ed31d Add WakuBridge and test (#426)
* Add WakuBridge and test

* Fix test
2021-03-22 11:44:45 +02:00
Hanno Cornelius
0451933252 Add message passing to waku bridge script (#425) 2021-03-18 12:01:27 +02:00
Hanno Cornelius
f9e5a58ff6 Add hook on newly added envelope (#423) 2021-03-17 11:49:06 +02:00
Hanno Cornelius
c37874c317 Update submodules (#424)
Update submodules and fix issues
2021-03-17 10:52:27 +02:00
Sanaz Taheri Boshrooyeh
d69529030b Basic proof gen and vrfy (#421)
* adds the proof field to the WakuMessage

* adds a basic zkProof api

* adds proof gen to the publish proc

* relocates the proofGen and proofVrfy to rln_relay_utils

* wip: test of proof gen

* adds a procedure to pass rln-relay message validator, adds the proof gen

* tests the proof gen and verify

* relocates zkp API

* adds documentation and todos

* adds todos and documentations

* removes an unnecessary comment

* adds todos
2021-03-16 11:18:40 -07:00
Sanaz Taheri Boshrooyeh
3eae34d740 Filtering messages in the relay protocol using libp2p topic validators (#414)
* adds a test for topic validators

* edits the import

* edits the comments

* further edits on the comments

* mode comments on the test

* checks the pubsub topic in the validator

* adds a fix

* changes the sleep time to 2 secs
2021-03-11 15:42:26 -08:00
Hanno Cornelius
539df242eb Fix Relay API: handle messages on previously subscribed topics (#413) 2021-03-11 09:48:59 +02:00
Hanno Cornelius
2d9005b9d7 Add post method to Admin API for ad-hoc peer dialing (#412)
* Add post method to Admin API

* Updated CHANGELOG
2021-03-11 09:05:39 +02:00
Hanno Cornelius
238ffa1627 Improved description for config items (#410) 2021-03-10 09:03:22 +02:00
Hanno Cornelius
0ec0c18039 Improved chat2 message encoding (#409) 2021-03-09 09:23:53 +02:00
Hanno Cornelius
e62cf2f79e Minor fixes for chat2 and store (#407) 2021-03-08 09:45:10 +02:00
Hanno Cornelius
e61e487b00 Fix Docker image - missing librln.so file (#406) 2021-03-04 17:55:27 +02:00
Hanno Cornelius
dc17937e3b Further chat2 improvements (#405) 2021-03-04 09:19:21 +02:00
Hanno Cornelius
2973cdcce5 chat2 improvements (#403) 2021-03-03 10:40:19 +02:00
Sanaz Taheri Boshrooyeh
3ee5f606b1 Adds rln as a submodule (#402)
* adds rln as submodule

* removes the duplicate rln submodule

* adds rln

* Delete waku.nims
2021-03-02 12:57:48 -08:00
1ca6cab981 ci: add rust and cargo to fix builds (#400)
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-03-01 16:19:58 +02:00
Oskar Thorén
52d0ea6445 Swap redeem cheque and update accounting state accordingly (#397)
* Redeem cheque when recevived

* Check balance, ish

* conditional update accounting after redeem cheque

* Add override for account update state w/o cheque

* Update waku/v2/protocol/waku_swap/waku_swap.nim

Co-authored-by: Sanaz Taheri Boshrooyeh <35961250+staheri14@users.noreply.github.com>

Co-authored-by: Sanaz Taheri Boshrooyeh <35961250+staheri14@users.noreply.github.com>
2021-03-01 13:55:20 +08:00
Oskar Thorén
52cb7f5448 Green build (#396)
Windows CI was slow before, merged before it completed. This way master is green...
2021-02-26 15:30:20 +08:00
Oskar Thorén
7e6d1a4d0f Better error handling with Results from interactions with swap-contracts-module (#393)
* Fix balance JSON resp

* Resultify swap contract calls for error handling

* More resultify and fixup tests

* More results

* resultify waku swap handling

* re-enable waku swap test

should not crash now, even if it fails to settle (tested separately)
2021-02-25 10:47:48 +08:00
Oskar Thorén
861a9334a6 Waku Swap: sign and send cheque (#386)
* fix balance test

* move waku swap contracts into own module

* Move more to separate waku swap contracts

* move erc20address

* Improve cmd/task util

* fix redeem part too

* sign cheque hardcode

* add signature field, send cheque

* echo->debug

* disable waku swap test

it calls contracts, which isnt integrated
2021-02-23 13:15:06 +08:00
Sanaz Taheri Boshrooyeh
50e900a21b Integrate registration into wakunode and Enable signed registration transactions (#385)
* cleans up imported modules

* adds uploadContract proc and consolidates rln-relay test files

* deletes test_rln_relay_wrappers

* deletes wrappers tests

* adds waku_rln_relay_utils

* adds the unit test for the membership key generation

* adds the key generation procedure

* adds unit test of key gen proc

* adds RLNRelayPeer data type

* adds the register proc

* adds the register proc unit test

* minor

* edits registration test

* adds comments to the registration unit test and relocates some constants

* defines constants variables for membership contract inputs and adds todos

* fixes a typo

* enables signed transaction

* adds registration into waku rln relay

* adds a TODO

* adds debug notes

* WIP add registration test

* integrates rln relay inputs into the mountRelay proc

* minor

* adds mountRelay

* renames RlnRelayPeer to WakuRlnRelay

* adds debugging notes

* changes the test title

* adds rln to gitignore

* cleans up tests, fixes a bug

* exposes mountRlnrelay, adds some comments

* fixes a bug

* deletes async pragma from mountRelay

* exposes the wakuRlnRelay field

* adds bash command to delete any existing rln directory before cloning the rln repo

* removes -v verbose flag from rln removal

* replaces await with WaitFor

* embed mountRlnRelay inside mountRelay
2021-02-22 09:40:02 -08:00
Sanaz Taheri Boshrooyeh
468e4a44c8 Rln relay registration (#378)
* cleans up imported modules

* adds uploadContract proc and consolidates rln-relay test files

* deletes test_rln_relay_wrappers

* deletes wrappers tests

* adds waku_rln_relay_utils

* adds the unit test for the membership key generation

* adds the key generation procedure

* adds unit test of key gen proc

* adds RLNRelayPeer data type

* adds the register proc

* adds the register proc unit test

* minor

* edits registration test

* adds comments to the registration unit test and relocates some constants

* defines constants variables for membership contract inputs and adds todos

* fixes a typo

* adds rln to gitignore

* moves all the types to the top

* adds contracts inputs to the utils module

* adds a TODO

* adds some comments

* removes newline! adds some comments
2021-02-19 11:44:18 -08:00
Sanaz Taheri Boshrooyeh
1afcfc3181 Rln relay key generation (#383)
* cleans up imported modules

* adds uploadContract proc and consolidates rln-relay test files

* deletes test_rln_relay_wrappers

* deletes wrappers tests

* adds waku_rln_relay_utils

* adds the unit test for the membership key generation

* adds the key generation procedure

* adds unit test of key gen proc

* removes extra spaces

* Update tests/v2/test_waku_rln_relay.nim

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>

* deletes the newline

* adds rln to gitignore

Co-authored-by: Oskar Thorén <ot@oskarthoren.com>
2021-02-18 14:59:10 -08:00
Sanaz Taheri Boshrooyeh
64267c2de5 Rln-relay tests utils and reorganization (#381)
* cleans up imported modules

* adds uploadContract proc and consolidates rln-relay test files

* deletes test_rln_relay_wrappers

* deletes wrappers tests

* replaces echo with debug

* minor
2021-02-17 13:54:49 -08:00
Oskar Thorén
9051077d89 Swap contracts test e2e (#371)
Swap contracts use JSON interface

Check Alice address returned correctly

Sign cheque test with arg and resp

Add network to operate against persistant node

Get erc20 balance

Redeem cheque and check balance
2021-02-17 13:50:46 +08:00
Sanaz Taheri Boshrooyeh
d0977a67d5 rlnlib dependency (#376)
* adds rlnlib dependency

* clones the full-node branch of rln repository

* moves rlnlib dependency to the deps target

* changes rlnlib path

* adds test_rln_relay_wrappers to the v2 tests

* loads rlnlib with different extensions based on the OS

* deletes unnecessary imports

* changes rlnlib extension to .exe for windows

* minor

* list files in rln/target/debug

* edits rln lib name for windows

* removes unnecessary commands

* edits some comments

* fetches specific commit of rln library
2021-02-12 12:12:10 -08:00
Hanno Cornelius
91162a8cd1 Feat/pm connection tracking (#377)
* Track connectedness state in peer manager
2021-02-12 10:53:52 +02:00
Hanno Cornelius
f364c1a9cd Removed local peer sets for filter, swap and store (#375) 2021-02-11 10:58:25 +02:00
Sanaz Taheri Boshrooyeh
0dac4efa10 Nim wrappers for Rln lib (Key and Params generation) (#373)
* adds the initial rln.nim wrapper

* adds test_rln_wrapper

* WIP: initial test (not working)

* changes RLNBn256 data type

* updates parameters type

* adds the wrappers and fixes the bugs

* adds tests

* replaces echo with debug
2021-02-10 12:51:41 -08:00
Hanno Cornelius
3b987cdc06 Integrate peer manager with Swap and Store (#370) 2021-02-09 10:31:38 +02:00
Oskar Thorén
faeac60c15 Swap contract module test - initial step (#369)
* Basic pwd shelling out script

* Get balance string from running node

* Add comment re manual test

* Add TODOs
2021-02-08 22:19:34 +08:00
Hanno Cornelius
594efeaf37 Peer manager: improvements; waku_filter integration (#368)
* Integrate peer manager with waku_filter

* Changelog and misc PR suggestions
2021-02-08 11:17:20 +02:00
Hanno Cornelius
13fc9d6f71 Feat/peer manager improvements (#367)
* Add managed peers to Admin API result

* Deal with dial failures
2021-02-05 12:49:11 +02:00
Sanaz Taheri Boshrooyeh
3101e545b6 Rln relay/membership contract (#359)
* updates test_waku_rln_relay

* adds contract's constructor input support

* adds contracts bytecodes
2021-02-04 12:10:25 -08:00