diff --git a/.env b/.env new file mode 100644 index 0000000..00cc4a0 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +TEST_MODE=live \ No newline at end of file diff --git a/Makefile b/Makefile index 2f67be8..9e4c038 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,9 @@ config: mkdir -p data/.gaiacli docker-compose run gaia gaiad init --home "/home/gaia/.gaiad" --chain-id=wormhole node || true cp configs/keyring-test data/.gaiacli/keyring-test -R - cp configs/qt.json data/config.json + cp configs/live_config.json data/live_config.json + cp configs/faulty* data/ + cp configs/simulated* data/ cp configs/genesis.json data/.gaiad/config/ cp configs/priv_validator_key.json data/.gaiad/config/ cp configs/config.toml data/.gaiad/config/ @@ -21,3 +23,19 @@ clean: run: docker-compose up + +test_live: + docker-compose up --exit-code-from qt + +test_simulated_substrate: + TEST_MODE=simulated_substrate docker-compose up --exit-code-from qt + +test_simulated_cosmos: + TEST_MODE=simulated_cosmos docker-compose up --exit-code-from qt + +test_faulty_simulated_substrate: + TEST_MODE=faulty_simulated_substrate docker-compose up --exit-code-from qt + +test_faulty_simulated_cosmos: + TEST_MODE=faulty_simulated_cosmos docker-compose up --exit-code-from qt + diff --git a/configs/.qt.json.swp b/configs/.qt.json.swp new file mode 100644 index 0000000..28e742a Binary files /dev/null and b/configs/.qt.json.swp differ diff --git a/configs/faulty_cosmos_light_client_simulated.txt b/configs/faulty_cosmos_light_client_simulated.txt new file mode 100644 index 0000000..60121d9 --- /dev/null +++ b/configs/faulty_cosmos_light_client_simulated.txt @@ -0,0 +1,579 @@ +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "154", + "time": "2020-08-03T12:36:13.5291326Z", + "last_block_id": { + "hash": "7EFD098568A949E1E7345D4CFAFD5B43DB7060F90200ADE527FB1FBD36B8BFEC", + "parts": { + "total": "1", + "hash": "34F98B736F0CCC174887BB40A1B8E51A49FDAFE9F02FB14F143BE36CDCD8A415" + } + }, + "last_commit_hash": "65686D4C43FB8A592DCB06AAA8300D61AC468309B38E340A7AC2490304FA0753", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7" + }, + "commit": { + "height": "154", + "round": "0", + "block_id": { + "hash": "2B248F585A10E2EA82827157889E6267F2F7840119011395B8A4594959D3F644", + "parts": { + "total": "1", + "hash": "569538CF9450EBDDD1058A8E5C81017FA770CE81E51076F69BE21F28DFFFCFBD" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:36:14.849487Z", + "signature": "djj1yLbKeV4pT5nw684AwXY2sVtYYYuMukgESqGLx2xecWmam/y0GuQgHZyCg4hYdkNJ41GEs5bS/mn/Kq65DA==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:36:14.9534042Z", + "signature": "aKJXJZQXcuEZrWd3n1JX46Tk7/tL50viUMnu62PPqoeYfaY8/QQLMN1WTd5QjIqzKBQYmoKfcmOPiMQX0szNBQ==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:36:14.8485292Z", + "signature": "rp/4wIhQGqQXJBZdVUrzFN/UXCrFzPILa5tVTgBFHT8UJ5q8T1QYUZLjqs5n6FwUO7SB49cJZ5goDK3IBuUSBA==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:36:14.8529983Z", + "signature": "kRAzQG3pLOaO5hq3nq2JmcPlgmZfwILYD/MnMVy+6yuUdnd+BX5EtW2QqTjNQ+8L6nmpOtkGWtxjGQ58a7vrDA==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] +} + +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "174", + "time": "2020-08-03T12:36:40.1786983Z", + "last_block_id": { + "hash": "6A934604717C8E3EA8CB4046FEA03F9D8CFA43B583361E8785D964CC9E47588C", + "parts": { + "total": "1", + "hash": "12590B195D71400EF09AFA0D88B66A5BABAEED6B9481550B7E929BDD67682ECE" + } + }, + "last_commit_hash": "E86B23EEE23916128863BCA3EB67916FA2F12FFECEF0318CCB97BCCCCB6FD254", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7" + }, + "commit": { + "height": "174", + "round": "0", + "block_id": { + "hash": "2013840EE6CD9FEB60B0354375E50503E6A55098EEB01AAF7C21790AB9302A3C", + "parts": { + "total": "1", + "hash": "2DA1A421B6E04137866B47119B6F6E81BF2E1EF6B0D66D46AFDE5860B6E88A8A" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:36:41.5902402Z", + "signature": "Hy1Jz6tuufVMc8+T9AWFTOLDtbKsZZ+CMNKC9ApL8F+7S0VfgUHSzfxU4tkWxQ121i+SzllveguaA5OrXRT6DA==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:36:41.6925814Z", + "signature": "Lxr1NxWJq7kJZozrtfPi00q89q9wq/BPdJCuuXX3t/CqMtUBmiPCyFpCSKoBqOq0Oix//sI42CaHbYjm7R1bDQ==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:36:41.5900466Z", + "signature": "CdWbhEKDbJi0UZ28c68O9xgFcBoGaRZAvhsQKoZyz4OMCWNjfx/lctI0UncobhpidEwuwNQMJ/mE5SExZKalAg==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:36:41.6922002Z", + "signature": "eXhU1ZDTx+V5XPx4xQXB+3GYTVeJURhGQ4SexZMS6BU8BIfOosdzuDAcACg+PRWHpI0MjKXd0qrPKEv04myJDg==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] +} + +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "200", + "time": "2020-08-03T12:37:14.9836481Z", + "last_block_id": { + "hash": "ECDFA9A69194D03D9A18DD2F6F73985782AADE151143F86D01FEAC65598C5603", + "parts": { + "total": "1", + "hash": "A22169454F199EA3FA1E347353BA689D5A4D28F4477701AB9C84FC6021E95F99" + } + }, + "last_commit_hash": "3414D503990156C4DFCC4494EB94147E0070AFDA6F0BC8DDBB0BA80A6708B1B6", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "848308F0A5102F24095FF14AB56535562EFF4CCE" + }, + "commit": { + "height": "200", + "round": "0", + "block_id": { + "hash": "65C68008299CFFAED30FA79B95530D3303C27CA9B3EBDEDE8B04F486CB671989", + "parts": { + "total": "1", + "hash": "E03AE52C77868F41CA6602F01223D636FDE6B004B8011229716AF9B65AB2131B" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:37:16.2697383Z", + "signature": "REFf2w9JhcEPActbqQIIwbTcBr+dgjthRfEuctu3h09ntyjwW2DzhyET2CZ7u8cxOEko7F2cPMwQo+mASi2OCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:37:16.269539Z", + "signature": "Ga1/WZy3E45g/8M3zjRiH1I4irSpKs2ENpHq9NU7EIHCuSZ+CD/qQLFz3BNuyhEMakFSjKGKeomTdcJX0KXtBA==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:37:16.3567309Z", + "signature": "stD4h+8e2z3xicp4/Wlly8UH55kwCYl1HcD+j2WF6hYMViWM+IMD7485KyCe7D+jrQgagUQBNpZ3csUdzvV5CA==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:37:16.35676Z", + "signature": "KMtWmCo7HOkHUoxjKHp1qTwHazYBbvBQB6im/nXoVGcV5r7JlO4Uk5NsRT45gbXlHrooOxKc/VcwvSmUGVLoBg==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "0" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "0" + } + ] +} + +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "210", + "time": "2020-08-03T12:37:28.434957Z", + "last_block_id": { + "hash": "93392DEB54813EABFB83D159CA23B4484580D75535486925C0BB459ED20A448D", + "parts": { + "total": "1", + "hash": "757AC91EBA9D975DE26DA94E88885BD28E5BF9A2A510984FFDBA6113CAAD2388" + } + }, + "last_commit_hash": "8CC77DE2CA5DD0A6155715316211149D0E55BC7F3544D8884209D5D690A5DC7A", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7" + }, + "commit": { + "height": "210", + "round": "0", + "block_id": { + "hash": "9275FD08593C9B12FE876CE814E18BACE4A95AE1F82BCED96D7E86670E91FCBB", + "parts": { + "total": "1", + "hash": "4AFA47F67598C629B006C7F3AC4CD723CF1DA8B45C1358719484DE6707604331" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:37:29.8502627Z", + "signature": "n3ZERXS4YWvHHjKrpDyvNnzsb2BIF3sQ4e32NMim29C2rzn0fprm6FJjk7zldRkg7ijzwOWXT/rLqbpZ5JfRBw==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:37:29.9531502Z", + "signature": "B31OCx/xRqYOGWONYMk0417C7R4QGrOYAKvSlFuhbnZE3CwUjRvGDKO7IYhxrDdRDTcEZepfDW4D10BvdfvsAQ==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:37:29.8508308Z", + "signature": "snsduWBMXOO5qVTmHZoSCC+YtQKETceWe0rZDxmbxUKXcFqZOUsMQEj/NegsEB+xQPEZC0oW2Ao2X4gVvTnSCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:37:29.9524964Z", + "signature": "9yAV6KXWwKqKQDzQgwg7wBOJmoPaYhth4Y6IM56804Qt6VmoF3aSq6kfpYbRRzrOZeMkkfkjeJF0UIC9gViYCg==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] + }, + "next_validators": [ + { + "address": "55086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "9452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] +} \ No newline at end of file diff --git a/configs/faulty_simulated_cosmos_config.json b/configs/faulty_simulated_cosmos_config.json new file mode 100644 index 0000000..5be408a --- /dev/null +++ b/configs/faulty_simulated_cosmos_config.json @@ -0,0 +1,17 @@ +{ + "cosmos": { + "simulation": { + "simulation_file_path": "/data/faulty_cosmos_light_client_simulated.txt", + "should_run_till_height": 200 + } + }, + "substrate": { + "real": { + "ws_addr": "ws://wormhole:9944/", + "rpc_addr": "http://wormhole:9933/", + "trusting_period": "99998h", + "unbonding_period": "99999h", + "max_clock_drift": "30s" + } + } +} diff --git a/configs/faulty_simulated_substrate_config.json b/configs/faulty_simulated_substrate_config.json new file mode 100644 index 0000000..4dfa1b9 --- /dev/null +++ b/configs/faulty_simulated_substrate_config.json @@ -0,0 +1,22 @@ +{ + "cosmos": { + "real": { + "chain_id": "wormhole", + "rpc_addr": "http://gaia:26657/", + "lcd_addr": "http://lcd:1317/", + "trusting_period": "720h", + "unbonding_period": "721h", + "max_clock_drift": "30s", + "wasm_id": 1, + "gas": 90000000, + "gas_price": "0.25stake", + "default_denom": "stake" + } + }, + "substrate": { + "simulation": { + "simulation_file_path": "/data/faulty_substrate_light_client_simulated.txt", + "should_run_till_height": 4 + } + } +} diff --git a/configs/faulty_substrate_light_client_simulated.txt b/configs/faulty_substrate_light_client_simulated.txt new file mode 100644 index 0000000..80cae3a --- /dev/null +++ b/configs/faulty_substrate_light_client_simulated.txt @@ -0,0 +1,62 @@ +{ + "block": { + "block": {"header":{"parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000","number":"0x1","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x6443a0b46e0412e626363028115a9f2cf963eeed526b8b33e5316f08b50d0dc3","number":"0x2","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x3984f1e85cd63358a8f3020388516d1194516ca3a8b5b44924b18db52b8b51dc","number":"0x3","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": [1,0,0,0,0,0,0,0,64,68,67,199,174,204,120,213,251,4,236,116,63,172,151,125,248,237,190,204,159,45,22,179,155,8,188,44,66,77,33,213,3,0,0,0,12,64,68,67,199,174,204,120,213,251,4,236,116,63,172,151,125,248,237,190,204,159,45,22,179,155,8,188,44,66,77,33,213,3,0,0,0,22,97,253,252,39,74,143,174,135,128,127,8,179,74,59,16,73,168,189,187,95,245,101,227,144,19,139,167,37,220,150,129,197,103,19,135,164,37,220,81,179,68,198,131,246,133,16,252,76,123,49,250,52,55,83,157,44,239,196,55,33,161,193,14,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,19,98,173,35,94,236,153,234,83,27,61,52,51,147,60,90,237,23,133,44,172,114,120,244,58,48,139,41,254,29,196,42,4,0,0,0,57,103,200,118,23,133,5,113,76,215,192,6,248,65,103,101,98,204,92,82,10,110,179,4,92,50,110,35,146,40,113,207,102,114,231,146,248,110,70,102,91,148,92,236,98,124,48,200,165,17,63,52,251,220,60,36,121,11,157,186,211,170,28,5,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,46,11,13,199,117,139,152,106,89,104,233,38,88,165,131,150,162,4,126,132,168,123,180,25,66,75,178,108,148,58,37,33,5,0,0,0,86,137,153,225,128,122,232,85,84,63,191,142,6,71,144,143,152,48,62,140,253,2,218,170,50,32,38,250,182,131,201,194,172,75,6,99,4,186,40,76,185,126,244,180,248,151,138,36,81,119,192,46,231,178,89,100,250,123,70,201,97,89,245,0,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,8,64,68,67,199,174,204,120,213,251,4,236,116,63,172,151,125,248,237,190,204,159,45,22,179,155,8,188,44,66,77,33,213,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,98,173,35,94,236,153,234,83,27,61,52,51,147,60,90,237,23,133,44,172,114,120,244,58,48,139,41,254,29,196,42,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x404443c7aecc78d5fb04ec743fac977df8edbecc9f2d16b39b08bc2c424d21d5","number":"0x4","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x2362ad235eec99ea531b3d3433933c5aed17852cac7278f43a308b29fe1dc42a","number":"0x5","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x2e0b0dc7758b986a5968e92658a58396a2047e84a87bb419424bb26c943a2521","number":"0x6","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": [1,0,0,0,0,0,0,0,163,154,246,199,108,47,9,89,118,57,240,9,101,226,29,233,152,121,15,182,227,125,37,178,210,207,7,214,187,236,206,177,6,0,0,0,8,163,154,246,199,108,47,9,89,118,57,240,9,101,226,29,233,152,121,15,182,227,125,37,178,210,207,7,214,187,236,206,177,6,0,0,0,189,253,181,105,55,53,201,231,229,45,92,233,232,135,6,135,181,197,190,120,201,68,158,147,26,41,4,86,93,164,251,166,69,141,11,207,99,34,184,12,59,41,134,15,189,213,109,61,254,134,149,29,243,16,77,101,210,245,204,114,222,192,125,3,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,35,34,118,176,73,187,223,207,188,183,55,99,193,165,108,195,185,165,162,91,14,133,240,32,107,173,173,105,13,97,211,77,7,0,0,0,57,34,182,255,75,88,182,128,243,86,40,156,183,99,165,37,214,224,151,208,194,156,222,199,62,207,181,147,225,43,228,221,155,27,88,101,154,25,246,28,101,131,124,249,130,48,83,91,223,237,58,149,77,187,34,145,29,131,172,150,57,85,66,6,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,4,163,154,246,199,108,47,9,89,118,57,240,9,101,226,29,233,152,121,15,182,227,125,37,178,210,207,7,214,187,236,206,177,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0xa39af6c76c2f09597639f00965e21de998790fb6e37d25b2d2cf07d6bbecceb1","number":"0x7","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} \ No newline at end of file diff --git a/configs/qt.json b/configs/live_config.json similarity index 100% rename from configs/qt.json rename to configs/live_config.json diff --git a/configs/simulated_cosmos_config.json b/configs/simulated_cosmos_config.json new file mode 100644 index 0000000..9889c54 --- /dev/null +++ b/configs/simulated_cosmos_config.json @@ -0,0 +1,17 @@ +{ + "cosmos": { + "simulation": { + "simulation_file_path": "/data/simulated_cosmos_light_client.txt", + "should_run_till_height": 210 + } + }, + "substrate": { + "real": { + "ws_addr": "ws://wormhole:9944/", + "rpc_addr": "http://wormhole:9933/", + "trusting_period": "99998h", + "unbonding_period": "99999h", + "max_clock_drift": "30s" + } + } +} diff --git a/configs/simulated_cosmos_light_client.txt b/configs/simulated_cosmos_light_client.txt new file mode 100644 index 0000000..a0048f5 --- /dev/null +++ b/configs/simulated_cosmos_light_client.txt @@ -0,0 +1,579 @@ +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "154", + "time": "2020-08-03T12:36:13.5291326Z", + "last_block_id": { + "hash": "7EFD098568A949E1E7345D4CFAFD5B43DB7060F90200ADE527FB1FBD36B8BFEC", + "parts": { + "total": "1", + "hash": "34F98B736F0CCC174887BB40A1B8E51A49FDAFE9F02FB14F143BE36CDCD8A415" + } + }, + "last_commit_hash": "65686D4C43FB8A592DCB06AAA8300D61AC468309B38E340A7AC2490304FA0753", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7" + }, + "commit": { + "height": "154", + "round": "0", + "block_id": { + "hash": "2B248F585A10E2EA82827157889E6267F2F7840119011395B8A4594959D3F644", + "parts": { + "total": "1", + "hash": "569538CF9450EBDDD1058A8E5C81017FA770CE81E51076F69BE21F28DFFFCFBD" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:36:14.849487Z", + "signature": "djj1yLbKeV4pT5nw684AwXY2sVtYYYuMukgESqGLx2xecWmam/y0GuQgHZyCg4hYdkNJ41GEs5bS/mn/Kq65DA==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:36:14.9534042Z", + "signature": "aKJXJZQXcuEZrWd3n1JX46Tk7/tL50viUMnu62PPqoeYfaY8/QQLMN1WTd5QjIqzKBQYmoKfcmOPiMQX0szNBQ==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:36:14.8485292Z", + "signature": "rp/4wIhQGqQXJBZdVUrzFN/UXCrFzPILa5tVTgBFHT8UJ5q8T1QYUZLjqs5n6FwUO7SB49cJZ5goDK3IBuUSBA==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:36:14.8529983Z", + "signature": "kRAzQG3pLOaO5hq3nq2JmcPlgmZfwILYD/MnMVy+6yuUdnd+BX5EtW2QqTjNQ+8L6nmpOtkGWtxjGQ58a7vrDA==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] +} + +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "174", + "time": "2020-08-03T12:36:40.1786983Z", + "last_block_id": { + "hash": "6A934604717C8E3EA8CB4046FEA03F9D8CFA43B583361E8785D964CC9E47588C", + "parts": { + "total": "1", + "hash": "12590B195D71400EF09AFA0D88B66A5BABAEED6B9481550B7E929BDD67682ECE" + } + }, + "last_commit_hash": "E86B23EEE23916128863BCA3EB67916FA2F12FFECEF0318CCB97BCCCCB6FD254", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7" + }, + "commit": { + "height": "174", + "round": "0", + "block_id": { + "hash": "2013840EE6CD9FEB60B0354375E50503E6A55098EEB01AAF7C21790AB9302A3C", + "parts": { + "total": "1", + "hash": "2DA1A421B6E04137866B47119B6F6E81BF2E1EF6B0D66D46AFDE5860B6E88A8A" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:36:41.5902402Z", + "signature": "Hy1Jz6tuufVMc8+T9AWFTOLDtbKsZZ+CMNKC9ApL8F+7S0VfgUHSzfxU4tkWxQ121i+SzllveguaA5OrXRT6DA==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:36:41.6925814Z", + "signature": "Lxr1NxWJq7kJZozrtfPi00q89q9wq/BPdJCuuXX3t/CqMtUBmiPCyFpCSKoBqOq0Oix//sI42CaHbYjm7R1bDQ==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:36:41.5900466Z", + "signature": "CdWbhEKDbJi0UZ28c68O9xgFcBoGaRZAvhsQKoZyz4OMCWNjfx/lctI0UncobhpidEwuwNQMJ/mE5SExZKalAg==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:36:41.6922002Z", + "signature": "eXhU1ZDTx+V5XPx4xQXB+3GYTVeJURhGQ4SexZMS6BU8BIfOosdzuDAcACg+PRWHpI0MjKXd0qrPKEv04myJDg==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] +} + +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "200", + "time": "2020-08-03T12:37:14.9836481Z", + "last_block_id": { + "hash": "ECDFA9A69194D03D9A18DD2F6F73985782AADE151143F86D01FEAC65598C5603", + "parts": { + "total": "1", + "hash": "A22169454F199EA3FA1E347353BA689D5A4D28F4477701AB9C84FC6021E95F99" + } + }, + "last_commit_hash": "3414D503990156C4DFCC4494EB94147E0070AFDA6F0BC8DDBB0BA80A6708B1B6", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "848308F0A5102F24095FF14AB56535562EFF4CCE" + }, + "commit": { + "height": "200", + "round": "0", + "block_id": { + "hash": "65C68008299CFFAED30FA79B95530D3303C27CA9B3EBDEDE8B04F486CB671989", + "parts": { + "total": "1", + "hash": "E03AE52C77868F41CA6602F01223D636FDE6B004B8011229716AF9B65AB2131B" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:37:16.2697383Z", + "signature": "REFf2w9JhcEPActbqQIIwbTcBr+dgjthRfEuctu3h09ntyjwW2DzhyET2CZ7u8cxOEko7F2cPMwQo+mASi2OCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:37:16.269539Z", + "signature": "Ga1/WZy3E45g/8M3zjRiH1I4irSpKs2ENpHq9NU7EIHCuSZ+CD/qQLFz3BNuyhEMakFSjKGKeomTdcJX0KXtBA==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:37:16.3567309Z", + "signature": "stD4h+8e2z3xicp4/Wlly8UH55kwCYl1HcD+j2WF6hYMViWM+IMD7485KyCe7D+jrQgagUQBNpZ3csUdzvV5CA==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:37:16.35676Z", + "signature": "KMtWmCo7HOkHUoxjKHp1qTwHazYBbvBQB6im/nXoVGcV5r7JlO4Uk5NsRT45gbXlHrooOxKc/VcwvSmUGVLoBg==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "0" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "0" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "0" + } + ] +} + +{ + "header": { + "signed_header": { + "header": { + "version": { + "block": "10", + "app": "1" + }, + "chain_id": "chain-jHJzfJ", + "height": "210", + "time": "2020-08-03T12:37:28.434957Z", + "last_block_id": { + "hash": "93392DEB54813EABFB83D159CA23B4484580D75535486925C0BB459ED20A448D", + "parts": { + "total": "1", + "hash": "757AC91EBA9D975DE26DA94E88885BD28E5BF9A2A510984FFDBA6113CAAD2388" + } + }, + "last_commit_hash": "8CC77DE2CA5DD0A6155715316211149D0E55BC7F3544D8884209D5D690A5DC7A", + "data_hash": "", + "validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "next_validators_hash": "9090CE282B99263E4B3062FF32141F9A82DDDADF67D1ABCCDBA251BC0D42B613", + "consensus_hash": "048091BC7DDC283F77BFBF91D73C44DA58C3DF8A9CBC867405D8B7F3DAADA22F", + "app_hash": "0000000000000000", + "last_results_hash": "", + "evidence_hash": "", + "proposer_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7" + }, + "commit": { + "height": "210", + "round": "0", + "block_id": { + "hash": "9275FD08593C9B12FE876CE814E18BACE4A95AE1F82BCED96D7E86670E91FCBB", + "parts": { + "total": "1", + "hash": "4AFA47F67598C629B006C7F3AC4CD723CF1DA8B45C1358719484DE6707604331" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "timestamp": "2020-08-03T12:37:29.8502627Z", + "signature": "n3ZERXS4YWvHHjKrpDyvNnzsb2BIF3sQ4e32NMim29C2rzn0fprm6FJjk7zldRkg7ijzwOWXT/rLqbpZ5JfRBw==" + }, + { + "block_id_flag": 2, + "validator_address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "timestamp": "2020-08-03T12:37:29.9531502Z", + "signature": "B31OCx/xRqYOGWONYMk0417C7R4QGrOYAKvSlFuhbnZE3CwUjRvGDKO7IYhxrDdRDTcEZepfDW4D10BvdfvsAQ==" + }, + { + "block_id_flag": 2, + "validator_address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "timestamp": "2020-08-03T12:37:29.8508308Z", + "signature": "snsduWBMXOO5qVTmHZoSCC+YtQKETceWe0rZDxmbxUKXcFqZOUsMQEj/NegsEB+xQPEZC0oW2Ao2X4gVvTnSCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "timestamp": "2020-08-03T12:37:29.9524964Z", + "signature": "9yAV6KXWwKqKQDzQgwg7wBOJmoPaYhth4Y6IM56804Qt6VmoF3aSq6kfpYbRRzrOZeMkkfkjeJF0UIC9gViYCg==" + } + ] + } + }, + "validator_set": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] + }, + "next_validators": [ + { + "address": "45086134583F4FF8B1D9F6CFECBB0F34664B1E59", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kh6fym/VQCMfUDj/PR1KsfmKC30MVylTyNSOLoeGu6Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "7758A3742D731A57EFEE9D1400C3ABCBE05303C7", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "zba2RWQ7klc+zd0+oGYEwF5Ww+EUd4e8ETsVwtZZg7Y=" + }, + "voting_power": "1", + "proposer_priority": "-2" + }, + { + "address": "8452DD4375A183A3C668AF1F97E2676713491A75", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "wlLvGcBMSUsaZrqtf4p795VdaXdq32li5fSv25KuVew=" + }, + "voting_power": "1", + "proposer_priority": "2" + }, + { + "address": "848308F0A5102F24095FF14AB56535562EFF4CCE", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "LX6DLp43+WtXsRddzquvsoobOMhen/I5rvHOx4wzEXI=" + }, + "voting_power": "1", + "proposer_priority": "2" + } + ] +} \ No newline at end of file diff --git a/configs/simulated_substrate_config.json b/configs/simulated_substrate_config.json new file mode 100644 index 0000000..1b64e92 --- /dev/null +++ b/configs/simulated_substrate_config.json @@ -0,0 +1,22 @@ +{ + "cosmos": { + "real": { + "chain_id": "wormhole", + "rpc_addr": "http://gaia:26657/", + "lcd_addr": "http://lcd:1317/", + "trusting_period": "720h", + "unbonding_period": "721h", + "max_clock_drift": "30s", + "wasm_id": 1, + "gas": 90000000, + "gas_price": "0.25stake", + "default_denom": "stake" + } + }, + "substrate": { + "simulation": { + "simulation_file_path": "/data/simulated_substrate_light_client.txt", + "should_run_till_height": 7 + } + } +} diff --git a/configs/simulated_substrate_light_client.txt b/configs/simulated_substrate_light_client.txt new file mode 100644 index 0000000..f282455 --- /dev/null +++ b/configs/simulated_substrate_light_client.txt @@ -0,0 +1,62 @@ +{ + "block": { + "block": {"header":{"parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000","number":"0x1","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x6443a0b46e0412e626363028115a9f2cf963eeed526b8b33e5316f08b50d0dc3","number":"0x2","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x3984f1e85cd63358a8f3020388516d1194516ca3a8b5b44924b18db52b8b51dc","number":"0x3","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": [1,0,0,0,0,0,0,0,64,68,67,199,174,204,120,213,251,4,236,116,63,172,151,125,248,237,190,204,159,45,22,179,155,8,188,44,66,77,33,213,3,0,0,0,12,64,68,67,199,174,204,120,213,251,4,236,116,63,172,151,125,248,237,190,204,159,45,22,179,155,8,188,44,66,77,33,213,3,0,0,0,22,97,253,252,39,74,143,174,135,128,127,8,179,74,59,16,73,168,189,187,95,245,101,227,144,19,139,167,37,220,150,129,197,103,19,135,164,37,220,81,179,68,198,131,246,133,16,252,76,123,49,250,52,55,83,157,44,239,196,55,33,161,193,14,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,19,98,173,35,94,236,153,234,83,27,61,52,51,147,60,90,237,23,133,44,172,114,120,244,58,48,139,41,254,29,196,42,4,0,0,0,57,103,200,118,23,133,5,113,76,215,192,6,248,65,103,101,98,204,92,82,10,110,179,4,92,50,110,35,146,40,113,207,102,114,231,146,248,110,70,102,91,148,92,236,98,124,48,200,165,17,63,52,251,220,60,36,121,11,157,186,211,170,28,5,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,46,11,13,199,117,139,152,106,89,104,233,38,88,165,131,150,162,4,126,132,168,123,180,25,66,75,178,108,148,58,37,33,5,0,0,0,86,137,153,225,128,122,232,85,84,63,191,142,6,71,144,143,152,48,62,140,253,2,218,170,50,32,38,250,182,131,201,194,172,75,6,99,4,186,40,76,185,126,244,180,248,151,138,36,81,119,192,46,231,178,89,100,250,123,70,201,97,89,245,0,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,8,64,68,67,199,174,204,120,213,251,4,236,116,63,172,151,125,248,237,190,204,159,45,22,179,155,8,188,44,66,77,33,213,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,98,173,35,94,236,153,234,83,27,61,52,51,147,60,90,237,23,133,44,172,114,120,244,58,48,139,41,254,29,196,42,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x404443c7aecc78d5fb04ec743fac977df8edbecc9f2d16b39b08bc2c424d21d5","number":"0x4","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x1362ad235eec99ea531b3d3433933c5aed17852cac7278f43a308b29fe1dc42a","number":"0x5","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0x2e0b0dc7758b986a5968e92658a58396a2047e84a87bb419424bb26c943a2521","number":"0x6","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": [1,0,0,0,0,0,0,0,163,154,246,199,108,47,9,89,118,57,240,9,101,226,29,233,152,121,15,182,227,125,37,178,210,207,7,214,187,236,206,177,6,0,0,0,8,163,154,246,199,108,47,9,89,118,57,240,9,101,226,29,233,152,121,15,182,227,125,37,178,210,207,7,214,187,236,206,177,6,0,0,0,189,253,181,105,55,53,201,231,229,45,92,233,232,135,6,135,181,197,190,120,201,68,158,147,26,41,4,86,93,164,251,166,69,141,11,207,99,34,184,12,59,41,134,15,189,213,109,61,254,134,149,29,243,16,77,101,210,245,204,114,222,192,125,3,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,35,34,118,176,73,187,223,207,188,183,55,99,193,165,108,195,185,165,162,91,14,133,240,32,107,173,173,105,13,97,211,77,7,0,0,0,57,34,182,255,75,88,182,128,243,86,40,156,183,99,165,37,214,224,151,208,194,156,222,199,62,207,181,147,225,43,228,221,155,27,88,101,154,25,246,28,101,131,124,249,130,48,83,91,223,237,58,149,77,187,34,145,29,131,172,150,57,85,66,6,136,220,52,23,213,5,142,196,180,80,62,12,18,234,26,10,137,190,32,15,233,137,34,66,61,67,52,1,79,166,176,238,4,163,154,246,199,108,47,9,89,118,57,240,9,101,226,29,233,152,121,15,182,227,125,37,178,210,207,7,214,187,236,206,177,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} + +{ + "block": { + "block": {"header":{"parentHash":"0xa39af6c76c2f09597639f00965e21de998790fb6e37d25b2d2cf07d6bbecceb1","number":"0x7","stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","extrinsicsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","digest":{"logs":[]}},"extrinsics":[]}, + "justification": null + }, + "set_id": 0, + "authority_set": [["5FA9nQDVg267DEd8m1ZypXLBnvN7SFxYwV7ndqSYGiN9TTpu",1]] +} \ No newline at end of file diff --git a/docker-compose.yaml b/docker-compose.yaml index 5b20226..afaa204 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -23,8 +23,7 @@ services: image: quantum-tunnel build: context: ./quantum-tunnel - command: sh -c "sleep 20; quantum-tunnel -c /data/config.json start" - restart: always + command: sh -c "sleep 20; quantum-tunnel -c /data/${TEST_MODE}_config.json start" volumes: - ./data:/data environment: diff --git a/quantum-tunnel b/quantum-tunnel index a4b29b6..838e69b 160000 --- a/quantum-tunnel +++ b/quantum-tunnel @@ -1 +1 @@ -Subproject commit a4b29b67c7969418bbd6182b8f8f466e6ec5ba9a +Subproject commit 838e69b86108e403b6615bad27db3e99fa9c0168