Commit Graph

175 Commits

Author SHA1 Message Date
Jonathan Claudius b18a6c8c2f
Fix segfault from empty GetSignedVAARequest (#1069) 2022-04-11 19:16:59 -04:00
Jonathan Claudius bad4f7061b
Adds unit-tests and functional improvements to guardian signature verification (#1068)
* Add more comprehensive structs unit-tests

* Make VerifySignatures fail on duplicate addresses

* Adjust duplicate detection to guard on signatures instead of addresses

* Add monotonic check in VerifySignatures

* Move logic into VerifySignatures and add more test cases

* Add a paranoid check for duplicate signers

* Make VerifySignatures unit-tests less contrived

* Add more verify signature test cases

* Refactor VerifySignatures tests

* Add VerifySignature fuzz tests

* Add tc.result checking instead of hardcoded true

* Change comparison so it throws debug on failure for fuzz tests

* Add unit-tests for observation signature logic

* Fix comment typos

* Refactor observation tests

* Add missing test case

* Fix VAAInvalidSignatures test case label

* Clean up unit-tests for observation and structs

* Change errorString convention in test

* Format Signature Verification Test Cases

* Remove unnecessary casting

* Add multi-signer same key cases

* Fix err usage in test cases

* Remove duplicate getVAA
2022-04-11 19:14:41 -04:00
Leopold Schabel 1fd6e14885 node/pkg/ethereum: fix unreachable nil check
The program would've crashed on `l.Address` before it
could reach the nilness check.

commit-id:17b64899
2022-04-11 17:10:14 -04:00
Bruce Riley 10f00b934b Promote Aurora to Mainnet 2022-04-11 17:05:07 -04:00
Paul Noel 763f80b45d
Repair eth for Aurora (#1065)
* node/hack/repair_eth: update for Aurora

Change-Id: Ic073cb7806ce611a0d0c742b864dfa5cd57f39da

* bridge_ui/utils: update for Aurora

Change-Id: I19089355910d1252d139267ce1398e1dcdd46095

* node/hack/repair_eth: add comments

Change-Id: I2361d317e24446590334d39bc2e52f68d75932c5

* node/hack/repair_eth: fix comments

Change-Id: I4fd3e04d74f4f0b1c3731c556a106663bb36b66d
2022-04-11 16:27:20 -04:00
Leopold Schabel 97aedff9f0
node/pkg/ethereum: restart watcher if guardian set update fails (#1010) 2022-04-11 21:07:19 +02:00
Leopold Schabel d68232c447
hack/repair_solana: improve sequence guessing (#1003) 2022-04-11 21:07:09 +02:00
Jonathan Claudius 8dd3536fb2
Add README and crypto/rand for encrypt.go tool (#1057) 2022-04-08 19:37:53 -04:00
Jonathan Claudius 36cabf0e6a
Remove dead code path (#1056) 2022-04-08 19:37:23 -04:00
bruce-riley 879670c0e5
Klaytn testnet support (#1038)
* Klaytn support for testnet

Change-Id: Id0647fd6c603ab298f860c2cae20481555467315

* token_bridge client changes

Change-Id: If49ba994a67041044bdec054f19e69b4cfc2785b

* Get rid of special handling

* More cleanup

* Need to add Klaytn to structs tests

* Update SDK version

* Add SDK version

* fix klaytn bridge chain id

Co-authored-by: Evan Gray <battledingo@gmail.com>
2022-04-04 18:11:03 -04:00
bruce-riley eb898b0555
Aurora and Fantom handled wrong in a couple cases in guardian (#1044)
* Aurora and Fantom handled wrong in a couple cases

Change-Id: I09b7d2da46507e219bd99d945256e63fefad529c

* Original test covered upper / lower case

Change-Id: I0384b0aac6f63bf9782d393fcd4e4e67f353775a
2022-04-04 15:08:16 -04:00
Jonathan Claudius b7ec3ac0d3
Add unit-tests for nodekey (#1035)
* Add unit-tests for nodekey

* Move to deferred file clean up
2022-03-30 09:41:27 -04:00
Jonathan Claudius 5e00027a18
Add unit-tests for registry (#1026)
* Add unit-tests for registry

* Tweaks to registry unit-tests

* Remove duplicate unit-test

* Remove duplicate test case
2022-03-30 09:38:37 -04:00
Jonathan Claudius 3ceec1833f
Add more comprehensive structs unit-tests (#1006)
* Add more comprehensive structs unit-tests

* Abstract the vaa generation test logic
2022-03-29 12:24:56 -04:00
Jonathan Claudius 5921150f93
Add unit-test for ethereum utils (#1022) 2022-03-29 12:24:16 -04:00
Jonathan Claudius a709d6f283
Add unit-tests for deterministic devnet keys (#1032)
* Add unit-tests for deterministic devnet keys

* Extend unit-tests to do full deterministic key checks
2022-03-28 10:43:37 -04:00
Jonathan Claudius 5355f87206
Add unit test for 0 case and move to testify (#1023) 2022-03-28 09:54:18 -04:00
Jonathan Claudius b7a95484f9
Refactor Symmetric Unit-tests to Testify (#948)
* Refactor Symmetric Unit-tests to Testify

* Isolate tests for more durability

* Remove duplicate test case
2022-03-25 16:17:33 -04:00
justinschuldt b73ebd1b9c fix digest string represenation
commit-id:617ade15
2022-03-18 10:49:34 -05:00
justinschuldt d2dcb57e61 send guardian set data to prometheus
commit-id:87ec83e0
2022-03-18 10:49:34 -05:00
justinschuldt 99a02a41ea fix devnet GS upgrade path
commit-id:3a2fa5aa
2022-03-18 10:49:34 -05:00
bruce-riley b718225e45
Testnet support for Aurora (#947)
* Testnet support

* Upgrade contract for 1conf

* Formatting changes

Change-Id: Id06481d77d770a04eb200aadb82574e23cddcd36
2022-03-15 10:41:10 -04:00
Jonathan Claudius fa237c7bb4
Add some unit-test coverage for GuardianSet (#951)
* Add some unit-test coverage for GuardianSet

* Remove mu check to fix CI run

* Remove unnecessary copy paste
2022-03-11 11:31:10 -05:00
claudijd ff62a2c7f4 Add unit-tests for payloads 2022-03-09 20:58:04 -05:00
Jonathan Claudius 991f8fdb4b
Add struct tests2 (#978)
* Add unit-tests for structs

* Remote commented imports

* Add tweaks per review feedback
2022-03-09 19:40:36 -05:00
Leopold Schabel c9ae0880fa
node/hack/repair_eth: add max retries to skip over broken entries (#977)
commit-id:b1119b32
2022-03-08 20:51:55 +01:00
Leo 011987867a pkg/ethereum: check receipt status code
commit-id:0b2539be
2022-03-07 17:53:42 -05:00
bruce-riley d1da11785f
Karura and Acala support (#862)
* Karura and Acala support

Change-Id: I74c88b9b7a220e419e31a11cf77931343c9a8159

* env files got dropped

Change-Id: If330887782a4e38f3419dff2efcc100a5949d3f2

* Updates for latest parameters

Change-Id: Ie25f377f6d70dfb7d4b28efabd4064088e001c0a
2022-03-03 16:40:32 -05:00
Leopold Schabel d40a70a37f
node/pkg/ethereum: log blockhash for new message publications (#910) 2022-03-03 21:31:15 +01:00
Leopold Schabel 3e51512aec
node/pkg/common: fix guardian set state cleanup (#891) 2022-03-03 21:18:41 +01:00
Hendrik Hofstadt 4bc5daa8d1
Hardening against governance message spoofing (#938) 2022-03-03 17:55:02 +01:00
Jeff Schroeder fd96dced3a
Fantom updates (#928)
* node: Add fantom to guardiand admin list-nodes

* node: check fantom readiness for mainnet
2022-03-01 20:32:31 -05:00
Evan Gray 695dcac26c support custom root ca 2022-03-01 12:35:27 -05:00
bruce-riley 60363dd3d1
Fantom deploy (#920)
* Truffle changes

* Always require fantomRPC
2022-02-28 16:32:22 -05:00
Paul Noel 3b10f124a1
node/hack/repair_terra re-observation (#871)
* node/hack/repair_terra added file

Change-Id: Ie015cb3364c56211ba51550cfae307836071532a

* node/hack/repair_terra code inspection fixes

Change-Id: I91dfeeedf7d7f04591cc8ef47fde52f933a45d0a
2022-02-21 17:43:40 -05:00
Jonathan Claudius d47089741c
Add unit-test for governance (#867)
* Add unit-test for governance

* Gofmt governance_test.go

* Use structs for testing governance VAA

Co-authored-by: claudijd <jclaudius@jumptrading.com>
2022-02-21 17:23:34 -05:00
Leo a9e36ea7fb node/cmd: remove an extra err check
commit-id:e3096e20
2022-02-18 09:00:26 -05:00
Paul Noel 7af9d22221 node/hack/repair: oasis support
Change-Id: I2b7b825ab49dad68e7072a4f488bbc411cbaabd6
2022-02-15 17:20:03 -05:00
Leo d2d6128c12 node/hack/repair_eth: add tx replay via Etherscan API
commit-id:023a6afb
2022-02-15 16:47:20 -05:00
Leo 799c1e9942 node/hack/repair: rename to repair_solana
commit-id:9cf72c8a
2022-02-15 16:47:20 -05:00
Leo de7cfe6cc7 node/hack/findmissing: add simple script to find all missing messages
This is different from "admin find-missing-messages" insofar as
having a hardcoded list of emitters.

commit-id:b934f672
2022-02-15 16:47:20 -05:00
Leo 8bf1176401 node/pkg/common: add list of known mainnet emitters
commit-id:f4d2389f
2022-02-15 16:47:20 -05:00
Leo 93ee5f3d31 node: remove duplicated public RPC node definitions
commit-id:452deba7
2022-02-15 16:47:20 -05:00
Leo 632e8acbee node/hack/repair: remove state directory
commit-id:74906ad4
2022-02-15 16:47:20 -05:00
Jeff Schroeder b54b7e1183 node: add fantom support
Only run in testnet until the contracts are deployed to mainnet.
2022-02-15 13:51:11 -05:00
Evan Gray 9ed71c0038 node: terra reobservation 2022-02-12 15:03:32 +01:00
Leo c28b492e03 node: add reobservation requests for Eth chains
commit-id:e4fa6adf
2022-02-12 01:06:06 +01:00
Leo 8f63e123a5 node/pkg/ethereum: add MessageEventsForTransaction
This retrieves a single transaction's MessagePublication events. This
has the same security assumptions than listening to the log events -
namely, ensuring the right contract has emitted them.

Tested locally with a mainnet transaction.

commit-id:64347ecc
2022-02-12 01:06:06 +01:00
Leo 7ae4b3d6aa node: increase Polygon minimum confirmation to 512
It appears that in spite of exceeding the recommended value by 2x,
256 offers insufficient safety margin given that we saw two reorgs
of depths 178 and 187 recently: https://polygonscan.com/blocks_forked

This will increase confirmation delay from ~10 minutes to ~20 minutes.

commit-id:cf2b1503
2022-02-08 17:39:53 +01:00
Leo 6c02299f2b node/pkg/solana: skip failed transactions
Avoid unnecessary RPC calls/retries.

Makes no difference for safety, which relies on VAA accounts rather than
any transaction metadata.

commit-id:0cd82ed4
2022-02-08 12:41:48 +01:00