From 8e6194626eb60aef79052cfa93949bdc61e6ce05 Mon Sep 17 00:00:00 2001 From: Anton Kaliaev Date: Mon, 2 Nov 2020 12:07:18 +0400 Subject: [PATCH] light: model-based tests (#5461) This is the first iteration of model-based testing in Go Tendermint. The test runner is using the static JSON fixtures located under the ./json directory. In the future, the Rust tensgen binary will be used to generate those (given the static intermediate scenarios and the test seed, which will be published along with each testgen release). Closes: #5322 --- libs/bytes/bytes.go | 19 +- light/mbt/doc.go | 20 + light/mbt/driver_test.go | 122 ++++ ...4_4_faulty_Test2NotEnoughTrustFailure.json | 305 ++++++++ ...4_4_faulty_Test2NotEnoughTrustSuccess.json | 462 ++++++++++++ ...4_4_faulty_Test3NotEnoughTrustFailure.json | 538 ++++++++++++++ ...4_4_faulty_Test3NotEnoughTrustSuccess.json | 662 ++++++++++++++++++ light/mbt/json/MC4_4_faulty_TestFailure.json | 347 +++++++++ .../MC4_4_faulty_TestHeaderFromFuture.json | 162 +++++ light/mbt/json/MC4_4_faulty_TestSuccess.json | 479 +++++++++++++ ...4_4_faulty_TestUntrustedBeforeTrusted.json | 170 +++++ ..._4_faulty_TestValsetDifferentAllSteps.json | 371 ++++++++++ light/verifier.go | 2 +- 13 files changed, 3656 insertions(+), 3 deletions(-) create mode 100644 light/mbt/doc.go create mode 100644 light/mbt/driver_test.go create mode 100644 light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustFailure.json create mode 100644 light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustSuccess.json create mode 100644 light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustFailure.json create mode 100644 light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustSuccess.json create mode 100644 light/mbt/json/MC4_4_faulty_TestFailure.json create mode 100644 light/mbt/json/MC4_4_faulty_TestHeaderFromFuture.json create mode 100644 light/mbt/json/MC4_4_faulty_TestSuccess.json create mode 100644 light/mbt/json/MC4_4_faulty_TestUntrustedBeforeTrusted.json create mode 100644 light/mbt/json/MC4_4_faulty_TestValsetDifferentAllSteps.json diff --git a/libs/bytes/bytes.go b/libs/bytes/bytes.go index 809049e84..fd27cf33f 100644 --- a/libs/bytes/bytes.go +++ b/libs/bytes/bytes.go @@ -1,7 +1,9 @@ package bytes import ( + "bytes" "encoding/hex" + "encoding/json" "fmt" "strings" ) @@ -9,6 +11,11 @@ import ( // The main purpose of HexBytes is to enable HEX-encoding for json/encoding. type HexBytes []byte +var ( + _ json.Marshaler = HexBytes{} + _ json.Unmarshaler = &HexBytes{} +) + // Marshal needed for protobuf compatibility func (bz HexBytes) Marshal() ([]byte, error) { return bz, nil @@ -20,7 +27,8 @@ func (bz *HexBytes) Unmarshal(data []byte) error { return nil } -// This is the point of Bytes. +// MarshalJSON implements the json.Marshaler interface. The hex bytes is a +// quoted hexadecimal encoded string. func (bz HexBytes) MarshalJSON() ([]byte, error) { s := strings.ToUpper(hex.EncodeToString(bz)) jbz := make([]byte, len(s)+2) @@ -30,16 +38,23 @@ func (bz HexBytes) MarshalJSON() ([]byte, error) { return jbz, nil } -// This is the point of Bytes. +// UnmarshalJSON implements the json.Umarshaler interface. func (bz *HexBytes) UnmarshalJSON(data []byte) error { + if bytes.Equal(data, []byte("null")) { + return nil + } + if len(data) < 2 || data[0] != '"' || data[len(data)-1] != '"' { return fmt.Errorf("invalid hex string: %s", data) } + bz2, err := hex.DecodeString(string(data[1 : len(data)-1])) if err != nil { return err } + *bz = bz2 + return nil } diff --git a/light/mbt/doc.go b/light/mbt/doc.go new file mode 100644 index 000000000..fdbea479a --- /dev/null +++ b/light/mbt/doc.go @@ -0,0 +1,20 @@ +// Package mbt provides a test runner for model-based tests +// +// Model-based tests are generated by +// https://github.com/informalsystems/tendermint-rs/tree/master/testgen, which +// first turns TLA+ specifications into test scenarios. Those test scenarios +// are then in turn used to generate actual fixtures representing light blocks. +// +// The test runner initializes the light client with a trusted light block. For +// each next light block, it tries to verify the block and asserts the outcome +// ("verdict" field in .json files). +// +// In the first version (v1), JSON files are directly added to the repo. In +// the future (v2), they will be generated by the testgen binary right before +// testing on CI (the number of files will be around thousands). +// +// NOTE (v1): If a breaking change is introduced into the SignedHeader or +// ValidatorSet, you will need to regenerate the JSON files using testgen +// binary (may also require modifying tendermint-rs, e.g. +// https://github.com/informalsystems/tendermint-rs/pull/647) +package mbt diff --git a/light/mbt/driver_test.go b/light/mbt/driver_test.go new file mode 100644 index 000000000..bf6ab3d43 --- /dev/null +++ b/light/mbt/driver_test.go @@ -0,0 +1,122 @@ +package mbt + +import ( + "io/ioutil" + "path/filepath" + "testing" + "time" + + "github.com/stretchr/testify/require" + + tmjson "github.com/tendermint/tendermint/libs/json" + "github.com/tendermint/tendermint/light" + "github.com/tendermint/tendermint/types" +) + +const jsonDir = "./json" + +func TestVerify(t *testing.T) { + filenames := jsonFilenames(t) + + for _, filename := range filenames { + filename := filename + t.Run(filename, func(t *testing.T) { + + jsonBlob, err := ioutil.ReadFile(filename) + if err != nil { + t.Fatal(err) + } + + var tc testCase + err = tmjson.Unmarshal(jsonBlob, &tc) + if err != nil { + t.Fatal(err) + } + + t.Log(tc.Description) + + var ( + trustedSignedHeader = tc.Initial.SignedHeader + trustedNextVals = tc.Initial.NextValidatorSet + trustingPeriod = time.Duration(tc.Initial.TrustingPeriod) * time.Nanosecond + ) + + for _, input := range tc.Input { + var ( + newSignedHeader = input.LightBlock.SignedHeader + newVals = input.LightBlock.ValidatorSet + ) + + err = light.Verify( + &trustedSignedHeader, + &trustedNextVals, + newSignedHeader, + newVals, + trustingPeriod, + input.Now, + 1*time.Second, + light.DefaultTrustLevel, + ) + + t.Logf("%d -> %d", trustedSignedHeader.Height, newSignedHeader.Height) + + switch input.Verdict { + case "SUCCESS": + require.NoError(t, err) + case "NOT_ENOUGH_TRUST": + require.IsType(t, light.ErrNewValSetCantBeTrusted{}, err) + case "INVALID": + switch err.(type) { + case light.ErrOldHeaderExpired: + case light.ErrInvalidHeader: + default: + t.Fatalf("expected either ErrInvalidHeader or ErrOldHeaderExpired, but got %v", err) + } + default: + t.Fatalf("unexpected verdict: %q", input.Verdict) + } + + if err == nil { // advance + trustedSignedHeader = *newSignedHeader + trustedNextVals = *input.LightBlock.NextValidatorSet + } + } + }) + } +} + +// jsonFilenames returns a list of files in jsonDir directory +func jsonFilenames(t *testing.T) []string { + matches, err := filepath.Glob(filepath.Join(jsonDir, "*.json")) + if err != nil { + t.Fatal(err) + } + return matches +} + +type testCase struct { + Description string `json:"description"` + Initial initialData `json:"initial"` + Input []inputData `json:"input"` +} + +type initialData struct { + SignedHeader types.SignedHeader `json:"signed_header"` + NextValidatorSet types.ValidatorSet `json:"next_validator_set"` + TrustingPeriod uint64 `json:"trusting_period"` + Now time.Time `json:"now"` +} + +type inputData struct { + LightBlock lightBlockWithNextValidatorSet `json:"block"` + Now time.Time `json:"now"` + Verdict string `json:"verdict"` +} + +// In tendermint-rs, NextValidatorSet is used to verify new blocks (opposite to +// Go tendermint). +type lightBlockWithNextValidatorSet struct { + *types.SignedHeader `json:"signed_header"` + ValidatorSet *types.ValidatorSet `json:"validator_set"` + NextValidatorSet *types.ValidatorSet `json:"next_validator_set"` +} diff --git a/light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustFailure.json b/light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustFailure.json new file mode 100644 index 000000000..2c5579485 --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustFailure.json @@ -0,0 +1,305 @@ +{ + "description": "MC4_4_faulty_Test2NotEnoughTrustFailure.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "0D038B1BA2ED7B1EF4D4E250C54D3F8D7186068658FAA53900CA83F4280B1EF2", + "part_set_header": { + "total": 1, + "hash": "0D038B1BA2ED7B1EF4D4E250C54D3F8D7186068658FAA53900CA83F4280B1EF2" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "XJC+kaVazdli/oMNHnFQOujOJLxFnez2DAUv5Uy+wPGeypkinrk2c79ZmlB5YHBTJaLh6yotq1XiLzy3zUAJAQ==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "pj86O2mwAQcn/MggMVEK1F6yhqnaMcxqxKyZ9DgIfFVqJIgQLb5SsuqyxPcMxxRhDTjjqfkATRGIiHPEthrFCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "QssWTiluThPYflhI3bBuoeIBXlMR39I+vJb7EvLf6FVyxp0Ih7kW26wkmqjgHf0RyDAu9sny3FBrc/WbPXhFDQ==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "9xg3G66gizJBzWybdYKRtyg8c52U6vKmUT9TKb5MQ5MP/6IVCbhnvUjzw4Oe5stsnHMGvsx6Q7IVS3Ma7CbBDA==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:45:28.160326992Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:04Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "next_validators_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "consensus_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "734FC4AE3FEEAD34654D611A867E3A4F2F921DD2B8F27289EFC52C90EFC2B8D8", + "part_set_header": { + "total": 1, + "hash": "734FC4AE3FEEAD34654D611A867E3A4F2F921DD2B8F27289EFC52C90EFC2B8D8" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "x7RNTkbf71fnTEyl7G6i8U5gi33nWZLha1nbZJjsIsbm7CCxcfsgU4uTWaHrZXCo1Ywok9zXgt0gaGOt7uR+BA==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:18Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:03Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "next_validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "consensus_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "6AE5C701F508EB5B63343858E068C5843F28105F" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "E60D3DC5A38CE0773BF911BE62514F5FE6C12FA574F0571965E8EDE2D8899C01", + "part_set_header": { + "total": 1, + "hash": "E60D3DC5A38CE0773BF911BE62514F5FE6C12FA574F0571965E8EDE2D8899C01" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "L5MQUXKrrRk9I/wnx3Pai49qFdzSkkYRzM9eO7gOI5ofG2LaJoDMttkCKp2kp9/3koSWssnX+/Uuvy62XU/hCA==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:18Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:02Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "next_validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "consensus_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "81D85BE9567F7069A4760C663062E66660DADF34" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "2EA87BC69EB6739C5A1E06BCA5E7C9B8A5C163EB1ECF01EDD1A4A9B167C313C5", + "part_set_header": { + "total": 1, + "hash": "2EA87BC69EB6739C5A1E06BCA5E7C9B8A5C163EB1ECF01EDD1A4A9B167C313C5" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "bSYYr6R4pu+tcq8ji6Jnnf5EkMPcCImyROgN16KNQxzvw82fLVQ2C+E3Ry9vEV86G0fQBaxL6SFd8xers7zzDw==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "jlxTNsZ8h1uyVjWndZrvBAZpAonQhfSoC/MZSwWb0tIgpJ4/YlqUQZoRnr+QsV5btJfpDeknFD++5LAjUcsrDg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:22Z", + "verdict": "INVALID" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustSuccess.json b/light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustSuccess.json new file mode 100644 index 000000000..1aab886f3 --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_Test2NotEnoughTrustSuccess.json @@ -0,0 +1,462 @@ +{ + "description": "MC4_4_faulty_Test2NotEnoughTrustSuccess.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "6B68DB34DEF944920D6638B3AA84FE1DF790BC8BDC5189E201F23730D5756A9D", + "part_set_header": { + "total": 1, + "hash": "6B68DB34DEF944920D6638B3AA84FE1DF790BC8BDC5189E201F23730D5756A9D" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "8rGIxi7DjBLFlHUo/lAgTpmzsnTZ8HOgnQaIoe+HEM5AmrjBaVDWVMb5/nNAnJTj4hcReCh4jviXcyRkItFJCA==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "3cXnzhzJLKeF47ulcIWjgqsv9JBf9olbAo0mcjo7Ij6TfmCpJO6SmTiacBkiznsFSOc1ZSH+cHDBKA4AT7ozAg==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "4O8c5hxoHR861ldolxeY9W1iXCdxYJVIf0xD3+sANSxo0ipXayv8IS7YFw1zzZvDbjRRazVzbfyBYf2jl4JeDw==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "2Hel7uygQXpjYRJZiwtPLKNxT2Tg1/F5Zzs3VZpleFII9H1e5Gs02UjU0lybSXBKk/tD+NXPsdchrH/6/DmwAQ==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:45:11.160326991Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "next_validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "consensus_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "23DB6414C50B567947776438FC022CC24EA7489FFBA8025FAD5C4232046BE785", + "part_set_header": { + "total": 1, + "hash": "23DB6414C50B567947776438FC022CC24EA7489FFBA8025FAD5C4232046BE785" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "hiszzyt898e+HMgChDiyWNjWpbLMQ1Kfcb1Mm8KgZM4DYdvJT79fHy/N7W08y6/9DquZKlZz6hM1GTBfrZ6ODg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:20Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:04Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "747249C8038E41C91EB3B737BAC2245F5F41B1527ABB7486C02CDF69C6B0DB53", + "part_set_header": { + "total": 1, + "hash": "747249C8038E41C91EB3B737BAC2245F5F41B1527ABB7486C02CDF69C6B0DB53" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "0sxZvRkF35OZ/ALf6xufgcP9QEeqd7mhXBD7nZ36CTSbYeeBVtEDspyz/M64UQ9PyADWkG9VtbB7zZhWEArOAg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:20Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:03Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "8F5D783FEDA6E53A6333DAB6324D567395D9189B4BBB51E3A9F2F360B667E928", + "part_set_header": { + "total": 1, + "hash": "8F5D783FEDA6E53A6333DAB6324D567395D9189B4BBB51E3A9F2F360B667E928" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "5uF6x606UvPT7JLmjEUZE6yoA5uaQU1HTi3cUgTNAeNwExwvwPsj2ERy5qxBYEzQP587g2NPDrylzHagFVmJDQ==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "PDSL3wHNLYafgBDZ04JTHUjtQPK4LbT7FpglwYAXlfD1K51Soq4L4QUsiHqUfpp7+gykLJzluYhNQcWDLju4Dg==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "Toe2ayrfxX2g/eMST8ggDIKp127ZAKUWgvw0F716mfg7jTJA6WGtDzPzPueLkBUbIyqQvcjWuuoR5FV4WnMBCQ==" + }, + { + "block_id_flag": 1, + "validator_address": null, + "timestamp": null, + "signature": null + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:20Z", + "verdict": "SUCCESS" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "next_validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "consensus_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "23DB6414C50B567947776438FC022CC24EA7489FFBA8025FAD5C4232046BE785", + "part_set_header": { + "total": 1, + "hash": "23DB6414C50B567947776438FC022CC24EA7489FFBA8025FAD5C4232046BE785" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "hiszzyt898e+HMgChDiyWNjWpbLMQ1Kfcb1Mm8KgZM4DYdvJT79fHy/N7W08y6/9DquZKlZz6hM1GTBfrZ6ODg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:20Z", + "verdict": "SUCCESS" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustFailure.json b/light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustFailure.json new file mode 100644 index 000000000..1ac9a7b2a --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustFailure.json @@ -0,0 +1,538 @@ +{ + "description": "MC4_4_faulty_Test3NotEnoughTrustFailure.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "5F7419DA4B1BCFC2D2EB8C663405D9FF67DDE3BF88DB0A8A5D579E6FF1AD814E", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "F7DC6F348F04E01EC7DEA4348A3BFA2F0D7533900986EA66F6006C70BDD52D2E", + "part_set_header": { + "total": 1, + "hash": "F7DC6F348F04E01EC7DEA4348A3BFA2F0D7533900986EA66F6006C70BDD52D2E" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "S5wM4flAsMJ7uGSGduppmUqDeFZBUBFKkp+LTy249+AgM3oup9ULs7eUzNiwjhV4gWnPnLJ91m6IZ3s047xzAg==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "ZLOGEO5mgrVoTpFA5DLMLX0ggBWnWLWmMF5tAorZC732T+oR2u2USAvGhkZtpM73WN3NUp04aVHInGMsYtz9Dg==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "Lwa9l7+dJci4+mXD9ZsvLnbX0TuzWYIjfj9vU51rAftFRGEig7DHToufWaMfjwGMN53WrG72YfHAXxBigWaBBg==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "SSHBm3HdeyC1fgPqjTp647mRGxaCKA/GGraM0UFcuXv3mUjfjowL8CNjthJHgXIQCmYdF0HDwLZb1SCvWFe0Aw==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:46:51.160327001Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:07Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "next_validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "consensus_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "81D85BE9567F7069A4760C663062E66660DADF34" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "A63EEADF3FB32E33B113FF28726100E2ACA295E7C467005BF35FB43ADC0D53C8", + "part_set_header": { + "total": 1, + "hash": "A63EEADF3FB32E33B113FF28726100E2ACA295E7C467005BF35FB43ADC0D53C8" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:07Z", + "signature": "lDmtsNALIr3ZysmMkrYW5jPufVGQcR7U2rpGFwJfFeTQSohqm9yVjzLVeGsPZFjdmGUltxwi7nH63iIIjl7VCg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:08Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:07Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "next_validators_hash": "C4DFBC98F77BE756D7EB3B475471189E82F7760DD111754AA2A25CF548AE6EF8", + "consensus_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "13C32ED0F2BED33E19B4832CEEB6F949E822449F770B9B3A7F02254F391B7CD0", + "part_set_header": { + "total": 1, + "hash": "13C32ED0F2BED33E19B4832CEEB6F949E822449F770B9B3A7F02254F391B7CD0" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:07Z", + "signature": "KZ0VUajBcnvw1Lp7DnYFGTPt6sstretUcfMY9nkszfQtvcJ1x4sFvJ/D0LWkpsNVMtNSWYobw+gfETQLVbmAAQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:09Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:03Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5F7419DA4B1BCFC2D2EB8C663405D9FF67DDE3BF88DB0A8A5D579E6FF1AD814E", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "5F7419DA4B1BCFC2D2EB8C663405D9FF67DDE3BF88DB0A8A5D579E6FF1AD814E", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "E98C8412BF8736722EEBFF209C5D0AB9F82B599344D043139B4D4747E1FF21EE", + "part_set_header": { + "total": 1, + "hash": "E98C8412BF8736722EEBFF209C5D0AB9F82B599344D043139B4D4747E1FF21EE" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "V2LEkvNw6vwCh5t/eTqOE0QMnRveeNV6nS9bqAD8S/dDtVnzUTwfwEgEHPwPFJDkszVkZ/9pqoKTInoO2bsHAg==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "AyDrm3XpFjB1OWJdYegH3dYp+Q9ZXV/kAstddVzpvU4pL187Tad2bNMqcgoroTiwaCWC7jtOrHd4l8Tq5myjDA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "cyQzNOgKd1OKNQJChG/E0pk9+fZ4p8bIpAqD5oZy0xT+e1DywIVUVDx0LBqbfm38C4djq3klKMvTUwTcDypCDQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:09Z", + "verdict": "SUCCESS" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:07Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "next_validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "consensus_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "81D85BE9567F7069A4760C663062E66660DADF34" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "A63EEADF3FB32E33B113FF28726100E2ACA295E7C467005BF35FB43ADC0D53C8", + "part_set_header": { + "total": 1, + "hash": "A63EEADF3FB32E33B113FF28726100E2ACA295E7C467005BF35FB43ADC0D53C8" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:07Z", + "signature": "lDmtsNALIr3ZysmMkrYW5jPufVGQcR7U2rpGFwJfFeTQSohqm9yVjzLVeGsPZFjdmGUltxwi7nH63iIIjl7VCg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:09Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:07Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "next_validators_hash": "C4DFBC98F77BE756D7EB3B475471189E82F7760DD111754AA2A25CF548AE6EF8", + "consensus_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "13C32ED0F2BED33E19B4832CEEB6F949E822449F770B9B3A7F02254F391B7CD0", + "part_set_header": { + "total": 1, + "hash": "13C32ED0F2BED33E19B4832CEEB6F949E822449F770B9B3A7F02254F391B7CD0" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:07Z", + "signature": "KZ0VUajBcnvw1Lp7DnYFGTPt6sstretUcfMY9nkszfQtvcJ1x4sFvJ/D0LWkpsNVMtNSWYobw+gfETQLVbmAAQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:09Z", + "verdict": "INVALID" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustSuccess.json b/light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustSuccess.json new file mode 100644 index 000000000..e4c5a864d --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_Test3NotEnoughTrustSuccess.json @@ -0,0 +1,662 @@ +{ + "description": "MC4_4_faulty_Test3NotEnoughTrustSuccess.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "C106084B050BDCC5AEBC414628992E43B6216544E19826BAB46027350C5FD3C5", + "part_set_header": { + "total": 1, + "hash": "C106084B050BDCC5AEBC414628992E43B6216544E19826BAB46027350C5FD3C5" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "q0CS2J0SFpdIVuqaHEmdp8epPcZli61bfVkdA720J+TzJ06ahepHUry6P/ZD+ex6GuQcSjBP6mfzp0ksjqf3BQ==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "jKDmxZTfFv5xlj3byRSxV8gMDQUirQE4O8hPKvp9EvmIWwCX1S7D/qQo+GhCvfiF3QPdQ3kRCpdvwrTuq+6RBA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "AL2jwdkeW/o9DjLU3vfcqKG9QCqnhKxdPN4i/miR6FIA87v4Y45jFvZw8Ue6hhwkGKs3d1QghJXVlRJFg8VXDw==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "gV5npKv90ghI2wj2MP06qkVyWTbjBwBzdQnBS3ssggEE+is/BRMQQfKEKpmTAF0KIS+eZj7jmj8b+isxC3QfDw==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:46:06.160326996Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "EED66C25F857A3DA1443411CCB93DD943574A8A55F55C8E2248A129E270F9BE3", + "part_set_header": { + "total": 1, + "hash": "EED66C25F857A3DA1443411CCB93DD943574A8A55F55C8E2248A129E270F9BE3" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "/GSuwjyWvPmjmcCtrg+00QmcjerrnGZueyLJvAJxhJ5gumkVvCvXB05HDoHL0D523nJHR9hMBOFMA+7cywRoCA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "wrXQ0BgJMF8EV+CWmmGersvCF9RI6/qbhBPxgAcLixV65N8RiWGba+sCfr9UHjHAEYsCsyFgQR2OLC7Bg1PKBA==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:06Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:04Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "next_validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "consensus_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "6AE5C701F508EB5B63343858E068C5843F28105F" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "0E61042148BB059117B880E371AEC93341630D01E665088844BC1D8DFA5B6B23", + "part_set_header": { + "total": 1, + "hash": "0E61042148BB059117B880E371AEC93341630D01E665088844BC1D8DFA5B6B23" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "e/kNbh2aUmnowrri9eWLo9Wf1ZuPS1cobu+ITfz0uFn8LZcQtrQXkB7sfRrTDfRGvOkm3CpWnxD+UeQTxa12CQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:07Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:02Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "next_validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "consensus_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "FE0A34650DA8A9402EA231A4D03FD1F39E0D7F894456D7268A582244FB968605", + "part_set_header": { + "total": 1, + "hash": "FE0A34650DA8A9402EA231A4D03FD1F39E0D7F894456D7268A582244FB968605" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "aVeQWMH20B1IGFIwH50HDv3qrDsvbuCuco918Spc/nHc06YJ9LYLSvo8gd7g4EoCY71eRLwPLOoHXk8Nas+XAw==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:08Z", + "verdict": "SUCCESS" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "EED66C25F857A3DA1443411CCB93DD943574A8A55F55C8E2248A129E270F9BE3", + "part_set_header": { + "total": 1, + "hash": "EED66C25F857A3DA1443411CCB93DD943574A8A55F55C8E2248A129E270F9BE3" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "/GSuwjyWvPmjmcCtrg+00QmcjerrnGZueyLJvAJxhJ5gumkVvCvXB05HDoHL0D523nJHR9hMBOFMA+7cywRoCA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "wrXQ0BgJMF8EV+CWmmGersvCF9RI6/qbhBPxgAcLixV65N8RiWGba+sCfr9UHjHAEYsCsyFgQR2OLC7Bg1PKBA==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:08Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:04Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "next_validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "consensus_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "6AE5C701F508EB5B63343858E068C5843F28105F" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "0E61042148BB059117B880E371AEC93341630D01E665088844BC1D8DFA5B6B23", + "part_set_header": { + "total": 1, + "hash": "0E61042148BB059117B880E371AEC93341630D01E665088844BC1D8DFA5B6B23" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "e/kNbh2aUmnowrri9eWLo9Wf1ZuPS1cobu+ITfz0uFn8LZcQtrQXkB7sfRrTDfRGvOkm3CpWnxD+UeQTxa12CQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:08Z", + "verdict": "SUCCESS" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "2B141A0A08B7EF0A65BC5F4D92F00BDEF0279124DEAC497BEF4C4336D0A3CE6F", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "EED66C25F857A3DA1443411CCB93DD943574A8A55F55C8E2248A129E270F9BE3", + "part_set_header": { + "total": 1, + "hash": "EED66C25F857A3DA1443411CCB93DD943574A8A55F55C8E2248A129E270F9BE3" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "/GSuwjyWvPmjmcCtrg+00QmcjerrnGZueyLJvAJxhJ5gumkVvCvXB05HDoHL0D523nJHR9hMBOFMA+7cywRoCA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "wrXQ0BgJMF8EV+CWmmGersvCF9RI6/qbhBPxgAcLixV65N8RiWGba+sCfr9UHjHAEYsCsyFgQR2OLC7Bg1PKBA==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:08Z", + "verdict": "SUCCESS" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_TestFailure.json b/light/mbt/json/MC4_4_faulty_TestFailure.json new file mode 100644 index 000000000..a63b5f1b6 --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_TestFailure.json @@ -0,0 +1,347 @@ +{ + "description": "MC4_4_faulty_TestFailure.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "658DEEC010B33EDB1977FA7B38087A8C547D65272F6A63854959E517AAD20597", + "part_set_header": { + "total": 1, + "hash": "658DEEC010B33EDB1977FA7B38087A8C547D65272F6A63854959E517AAD20597" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "gUvww0D+bCNnq0wY4GvDkWAUQO3kbi9YvmoRBAC3goRZ6mW8Fh6V9hrMQYbpRpf7LZqFAdnleFgXnnEuKz17Bg==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "54nTri+VJoBu8HCTb+c92aYrPiMSM71qVDkdRtwmE40LWPUFkTJNTqTLXbBXutQ1p5s6PyuB+p4UfWAwYCuUCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "PWesm77j/+sQh1p00pDJv3R3B9tpe1HlfhaTS2be/5FZfq3EMH3ceplTSNGsQKo0p4f8N9UUq+TYwm+3dsZeBg==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "ngAHu3FpNX6aW4B7xmFd7ckNScOM+lfuCQuMDs7uq20UoNnnGasFOcFMXD+0dQnRndEu1RItr+0kgxKaD6OtAQ==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:44:52.160326989Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "F6AF3B9193F2672E2E3830EC49F0D7E527291DEDA4326EDB7A6FB812BE8F3251", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "F6AF3B9193F2672E2E3830EC49F0D7E527291DEDA4326EDB7A6FB812BE8F3251", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "6AE5C701F508EB5B63343858E068C5843F28105F" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "32DD1A7D7E5C8106E14255B40F029DC568E3326512B50F45012580CD6683B9E6", + "part_set_header": { + "total": 1, + "hash": "32DD1A7D7E5C8106E14255B40F029DC568E3326512B50F45012580CD6683B9E6" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "RL9tPx8XS753xu4ziuoICsAVRmqhu34gx3NN0gsNGQw+HvECVb77g9pvcapRPDkkVf89be6dAIy/WjrsfATGDg==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "kqxDTznWv65+GJA08AV4JTMBeKzDaG7jAhMA7P4YgFkM2KDKw2vOBw0R4LnLkzZQWJUkbzXeYRHcVoJlT35JAg==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "aWEOTgdl9m5vBKDSCrUloM/2AfUp+SNDqbpJFEuhBv0DYmeRJDCEoeQnGACjaZHjW4LjaxgNnTOSBVFlaP/vAg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:16Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:03Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "A14AED7ED200C7F85F89C9A43029E0CE88691532193E198E3F45AA3375AE8D01", + "part_set_header": { + "total": 1, + "hash": "A14AED7ED200C7F85F89C9A43029E0CE88691532193E198E3F45AA3375AE8D01" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "42tNU0fwo3UKq2toY2p39ykL6ZhWrCIoGjzE5O0mmvn92SZHAg1OUGmn4c5bUF6H2kNKZXCn6Zp6T/UxhlEOBQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:16Z", + "verdict": "SUCCESS" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:04Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "next_validators_hash": "F6AF3B9193F2672E2E3830EC49F0D7E527291DEDA4326EDB7A6FB812BE8F3251", + "consensus_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "AFABB1F6927F1D7845EA474BCF523AF948644C7B1301CBC17B8A264903B9AD16", + "part_set_header": { + "total": 1, + "hash": "AFABB1F6927F1D7845EA474BCF523AF948644C7B1301CBC17B8A264903B9AD16" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "If14ddLKYwosISJdPovBpU2K1+R91ZqDY/JAyuPsGXCXm70ZyciRQBoGEOVVzAs3s3hfc+OZAScGtpK8meyxDw==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:24Z", + "verdict": "INVALID" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_TestHeaderFromFuture.json b/light/mbt/json/MC4_4_faulty_TestHeaderFromFuture.json new file mode 100644 index 000000000..856e0676e --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_TestHeaderFromFuture.json @@ -0,0 +1,162 @@ +{ + "description": "MC4_4_faulty_TestHeaderFromFuture.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "C106084B050BDCC5AEBC414628992E43B6216544E19826BAB46027350C5FD3C5", + "part_set_header": { + "total": 1, + "hash": "C106084B050BDCC5AEBC414628992E43B6216544E19826BAB46027350C5FD3C5" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "q0CS2J0SFpdIVuqaHEmdp8epPcZli61bfVkdA720J+TzJ06ahepHUry6P/ZD+ex6GuQcSjBP6mfzp0ksjqf3BQ==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "jKDmxZTfFv5xlj3byRSxV8gMDQUirQE4O8hPKvp9EvmIWwCX1S7D/qQo+GhCvfiF3QPdQ3kRCpdvwrTuq+6RBA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "AL2jwdkeW/o9DjLU3vfcqKG9QCqnhKxdPN4i/miR6FIA87v4Y45jFvZw8Ue6hhwkGKs3d1QghJXVlRJFg8VXDw==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "gV5npKv90ghI2wj2MP06qkVyWTbjBwBzdQnBS3ssggEE+is/BRMQQfKEKpmTAF0KIS+eZj7jmj8b+isxC3QfDw==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:47:33.160327005Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:23:25Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "next_validators_hash": "E624CE5E2693812E58E8DBB64C7A05149A58157114D34F08CB5992FE2BECC0A7", + "consensus_hash": "F49C3E794533450FEA327755F5962F99C88F5545453E6D517BBDD96EA066B50C", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "81D85BE9567F7069A4760C663062E66660DADF34" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "4A71282D7A0FA97B3809C24291E6894081710CDA0264FE31631BD524B8D62CB2", + "part_set_header": { + "total": 1, + "hash": "4A71282D7A0FA97B3809C24291E6894081710CDA0264FE31631BD524B8D62CB2" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:23:25Z", + "signature": "io43cjLaPTzkNYsEpPZhKLkh1YJzM/ZOm0JZI6Qq9KzFZODOPMpSYaitHTHeJV0gIPh/X/29A/QKd62ByAuiBQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:24Z", + "verdict": "INVALID" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_TestSuccess.json b/light/mbt/json/MC4_4_faulty_TestSuccess.json new file mode 100644 index 000000000..9943b44b0 --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_TestSuccess.json @@ -0,0 +1,479 @@ +{ + "description": "MC4_4_faulty_TestSuccess.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "6B68DB34DEF944920D6638B3AA84FE1DF790BC8BDC5189E201F23730D5756A9D", + "part_set_header": { + "total": 1, + "hash": "6B68DB34DEF944920D6638B3AA84FE1DF790BC8BDC5189E201F23730D5756A9D" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "8rGIxi7DjBLFlHUo/lAgTpmzsnTZ8HOgnQaIoe+HEM5AmrjBaVDWVMb5/nNAnJTj4hcReCh4jviXcyRkItFJCA==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "3cXnzhzJLKeF47ulcIWjgqsv9JBf9olbAo0mcjo7Ij6TfmCpJO6SmTiacBkiznsFSOc1ZSH+cHDBKA4AT7ozAg==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "4O8c5hxoHR861ldolxeY9W1iXCdxYJVIf0xD3+sANSxo0ipXayv8IS7YFw1zzZvDbjRRazVzbfyBYf2jl4JeDw==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "2Hel7uygQXpjYRJZiwtPLKNxT2Tg1/F5Zzs3VZpleFII9H1e5Gs02UjU0lybSXBKk/tD+NXPsdchrH/6/DmwAQ==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:44:35.160326987Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "next_validators_hash": "5F7419DA4B1BCFC2D2EB8C663405D9FF67DDE3BF88DB0A8A5D579E6FF1AD814E", + "consensus_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "6AE5C701F508EB5B63343858E068C5843F28105F" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "EEF6A072BAD4A86F7B01A3E4D4E0920BA79F1FA8A25204F86697CA5C27885BF7", + "part_set_header": { + "total": 1, + "hash": "EEF6A072BAD4A86F7B01A3E4D4E0920BA79F1FA8A25204F86697CA5C27885BF7" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "5RJxkKr19lA4YOg848c0NfTB0qID+klbglOH4iugPMcnjwpsgwP3p+re65uFNe7NNO3D0c5CUQX6bA9TpwO5CQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:19Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "next_validators_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "consensus_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "6A1D90F13DCA0E65251D3DA8A07EA17A86CF79E340729DFEF165AC90FF9C2080", + "part_set_header": { + "total": 1, + "hash": "6A1D90F13DCA0E65251D3DA8A07EA17A86CF79E340729DFEF165AC90FF9C2080" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "Dg+9iWPS+P6d10RSuIgXKlC5e4IvY4/VU0fsIeCnBk5xRcjnQVy7FObhrDTLdXDo6NVd29h+ypEiLGfwPEa/CA==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:20Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:02Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "AAFE392AA939DA2A051F3C57707569B1836F93ACC8F35B57BB3CDF615B649013", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "DE957F0FC7A17229F36289714559F7FB5E908DEE04E549FF88DB72404E118581", + "part_set_header": { + "total": 1, + "hash": "DE957F0FC7A17229F36289714559F7FB5E908DEE04E549FF88DB72404E118581" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "rHPemviCweCd95mauh9ST0eW6KsC5A/melokemcZ3gH22+tcIDbLy+vkyXXgpAANKgXcblIkpflI/YJ8IaiJCQ==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "wUAMEasU8Rry1Z9xa5/VZTUYWHvp41vz0eUir0jl3QjVXqNS+cJgduEvu7e0uZSMjrLf2le8XKXVz2H767Z0Dw==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "+O0Pp6P+CtNt0QzY3YYPBqr2CPcCOXb3CwWR+1xTUMNDkRDLQK8UP12QdHsdqRB8Ocm2+ZKj8OTVv0uUWWPuCA==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:02Z", + "signature": "QENfv06GEZj6QY64sPLTnditix/SreqiaFoQxWIpwd6mbHx0sHhk0E6z+nw8MzKssaKE7wD3km3gHEYzKnJNCg==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:20Z", + "verdict": "SUCCESS" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "next_validators_hash": "5F7419DA4B1BCFC2D2EB8C663405D9FF67DDE3BF88DB0A8A5D579E6FF1AD814E", + "consensus_hash": "75E6DD63C2DC2B58FE0ED82792EAB369C4308C7EC16B69446382CC4B41D46068", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "6AE5C701F508EB5B63343858E068C5843F28105F" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "EEF6A072BAD4A86F7B01A3E4D4E0920BA79F1FA8A25204F86697CA5C27885BF7", + "part_set_header": { + "total": 1, + "hash": "EEF6A072BAD4A86F7B01A3E4D4E0920BA79F1FA8A25204F86697CA5C27885BF7" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "5RJxkKr19lA4YOg848c0NfTB0qID+klbglOH4iugPMcnjwpsgwP3p+re65uFNe7NNO3D0c5CUQX6bA9TpwO5CQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:21Z", + "verdict": "SUCCESS" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_TestUntrustedBeforeTrusted.json b/light/mbt/json/MC4_4_faulty_TestUntrustedBeforeTrusted.json new file mode 100644 index 000000000..ea57eacc9 --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_TestUntrustedBeforeTrusted.json @@ -0,0 +1,170 @@ +{ + "description": "MC4_4_faulty_TestUntrustedBeforeTrusted.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "6B68DB34DEF944920D6638B3AA84FE1DF790BC8BDC5189E201F23730D5756A9D", + "part_set_header": { + "total": 1, + "hash": "6B68DB34DEF944920D6638B3AA84FE1DF790BC8BDC5189E201F23730D5756A9D" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "8rGIxi7DjBLFlHUo/lAgTpmzsnTZ8HOgnQaIoe+HEM5AmrjBaVDWVMb5/nNAnJTj4hcReCh4jviXcyRkItFJCA==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "3cXnzhzJLKeF47ulcIWjgqsv9JBf9olbAo0mcjo7Ij6TfmCpJO6SmTiacBkiznsFSOc1ZSH+cHDBKA4AT7ozAg==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "4O8c5hxoHR861ldolxeY9W1iXCdxYJVIf0xD3+sANSxo0ipXayv8IS7YFw1zzZvDbjRRazVzbfyBYf2jl4JeDw==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "2Hel7uygQXpjYRJZiwtPLKNxT2Tg1/F5Zzs3VZpleFII9H1e5Gs02UjU0lybSXBKk/tD+NXPsdchrH/6/DmwAQ==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:47:47.160327006Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:00Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "730D3D6B2E9F4F0F23879458F2D02E0004F0F241" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "D1E7988F2C5B176E1AE1D7CA03F17A2734B1A90B154D41D0C01FEE49BA63DBAA", + "part_set_header": { + "total": 1, + "hash": "D1E7988F2C5B176E1AE1D7CA03F17A2734B1A90B154D41D0C01FEE49BA63DBAA" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:00Z", + "signature": "lJ/0qcg9/3PcEtnDSR10pswu0kZjfD8GSp03Esc/O6Odg8v20ZFIZCLUEbyFays23MfMpI08bYJrF9QnKjMQAw==" + } + ] + } + }, + "validator_set": { + "validators": [] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:23:24Z", + "verdict": "INVALID" + } + ] +} diff --git a/light/mbt/json/MC4_4_faulty_TestValsetDifferentAllSteps.json b/light/mbt/json/MC4_4_faulty_TestValsetDifferentAllSteps.json new file mode 100644 index 000000000..03e573443 --- /dev/null +++ b/light/mbt/json/MC4_4_faulty_TestValsetDifferentAllSteps.json @@ -0,0 +1,371 @@ +{ + "description": "MC4_4_faulty_TestValsetDifferentAllSteps.json", + "initial": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "1", + "time": "1970-01-01T00:00:01Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "next_validators_hash": "010ED897B4B347175BC54ADF87D640393862FF3D5038302CD523B0E97FC20079", + "consensus_hash": "5A69ACB73672274A2C020C7FAE539B2086D30F3B7E5B168A8031A21931FCA07D", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "1", + "round": 1, + "block_id": { + "hash": "42C62AB26BDCD052FD7D87449C1CA700A79780D55E2FC8129614D4D2DC24CB08", + "part_set_header": { + "total": 1, + "hash": "42C62AB26BDCD052FD7D87449C1CA700A79780D55E2FC8129614D4D2DC24CB08" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "mzNheVmshOSGCNfL/NfBBpJcofUx6cqclvEMOc9rZJ6A2pOrxO8ZymXej0FvksZ5mmhfLvZ0aW+as59WMldWBw==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "KisuL/gVSTDQP1Q51uBKd8xDZM4mX+rRKIpMlkfUYF+qW4K51sPvqL/pgKSiUwBPAoGRBzwLoavPg9oiyRwPBA==" + }, + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "fgq+19zjPxTp8HILDBaW8VJg+wzyVkthtmf0HJxdoaXd+uZRQ7LDS2Tn7LXMKAQ9Q0sjtZ4BA3H3sfv9wA56BA==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:01Z", + "signature": "Zy0rovAtLk58hTcprpXU7ikCdbky5rrQ8Y3o+/Xyo7VTt3zYiCdVsYj26agu8SR3cFkV96P2ryHF6NHWGwIJDw==" + } + ] + } + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "trusting_period": "1400000000000", + "now": "2020-10-21T08:47:18.160327003Z" + }, + "input": [ + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "4", + "time": "1970-01-01T00:00:05Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "next_validators_hash": "C8F8530F1A2E69409F2E0B4F86BB568695BC9790BA77EAC1505600D5506E22DA", + "consensus_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF" + }, + "commit": { + "height": "4", + "round": 1, + "block_id": { + "hash": "943FD341C1558245A93577E0A7CF48089B9E0FA175DE817A61EF7233AF810BF6", + "part_set_header": { + "total": 1, + "hash": "943FD341C1558245A93577E0A7CF48089B9E0FA175DE817A61EF7233AF810BF6" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:05Z", + "signature": "Y9RiUiuj/kTgPU1BCNrWbNSHEcyf3nr1o0ohY1xkRf89rYRu34oJSWU65paMAfPAosfeaHHPjYXG2whJk+dGBQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:06Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "3", + "time": "1970-01-01T00:00:04Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "C4DFBC98F77BE756D7EB3B475471189E82F7760DD111754AA2A25CF548AE6EF8", + "next_validators_hash": "C8CFFADA9808F685C4111693E1ADFDDBBEE9B9493493BEF805419F143C5B0D0A", + "consensus_hash": "C4DFBC98F77BE756D7EB3B475471189E82F7760DD111754AA2A25CF548AE6EF8", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "81D85BE9567F7069A4760C663062E66660DADF34" + }, + "commit": { + "height": "3", + "round": 1, + "block_id": { + "hash": "48A8E428AF500C9BD5674A9A2FC1217DD97B144FD623DDD2C4679022E19A5615", + "part_set_header": { + "total": 1, + "hash": "48A8E428AF500C9BD5674A9A2FC1217DD97B144FD623DDD2C4679022E19A5615" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "81D85BE9567F7069A4760C663062E66660DADF34", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "WUKkETiWSMDSgd/7sxOD8KgDrL/kg78vXbA2r42+qEvuzZSuwob+7yHXYEn32lDtLl5lnsENVIjtqUrEPkQKBg==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:04Z", + "signature": "3H9a3YJJjqewYR3HhSMxM3yAy0niBUhWX0+6K67UJVeEtXXVIk/OQJ9HeVmghsayGEJGvzcyjbHDD9CIkk/VDw==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:06Z", + "verdict": "NOT_ENOUGH_TRUST" + }, + { + "block": { + "signed_header": { + "header": { + "version": { + "block": "11", + "app": "0" + }, + "chain_id": "test-chain", + "height": "2", + "time": "1970-01-01T00:00:03Z", + "last_block_id": null, + "last_commit_hash": null, + "data_hash": null, + "validators_hash": "010ED897B4B347175BC54ADF87D640393862FF3D5038302CD523B0E97FC20079", + "next_validators_hash": "C4DFBC98F77BE756D7EB3B475471189E82F7760DD111754AA2A25CF548AE6EF8", + "consensus_hash": "010ED897B4B347175BC54ADF87D640393862FF3D5038302CD523B0E97FC20079", + "app_hash": "", + "last_results_hash": null, + "evidence_hash": null, + "proposer_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A" + }, + "commit": { + "height": "2", + "round": 1, + "block_id": { + "hash": "208411D47FC3C56A3243E8BA57010A144BAD926F2FEFFBFDFB695CF19D2788CF", + "part_set_header": { + "total": 1, + "hash": "208411D47FC3C56A3243E8BA57010A144BAD926F2FEFFBFDFB695CF19D2788CF" + } + }, + "signatures": [ + { + "block_id_flag": 2, + "validator_address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "EDJIttaUcyoVcfIyOdHTw6qmtY8Jrf5cEMquCYOxnahu6BUNYbomz8L2t0uscbJqrDzMaW1nGDAyNrIEoBlnDQ==" + }, + { + "block_id_flag": 2, + "validator_address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "QtatsO+ghgyDEJKDMmoVKdeDT8E3srh7WecyladY0ityBF9TKcrBNBIImCvPlStVu5uUbmM5NbG9+2In/F3DDA==" + }, + { + "block_id_flag": 2, + "validator_address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "timestamp": "1970-01-01T00:00:03Z", + "signature": "RJ9f2beJHCxhuYBHmPc3oWdDlQ8DOfBJOz9vN8tvEmhA0zb2qE9Zxe4jyO7Xr9wvq09yXQShTZKDsjOhOF6GAQ==" + } + ] + } + }, + "validator_set": { + "validators": [ + { + "address": "0616A636E7D0579A632EC37ED3C3F2B7E8522A0A", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "kwd8trZ8t5ASwgUbBEAnDq49nRRrrKvt2onhS4JSfQM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "6AE5C701F508EB5B63343858E068C5843F28105F", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "GQEC/HB4sDBAVhHtUzyv4yct9ZGnudaP209QQBSTfSQ=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "next_validator_set": { + "validators": [ + { + "address": "81D85BE9567F7069A4760C663062E66660DADF34", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "Lk4zm2cJO4FpzXFF9WUV9NzOLfr5jV+ps7EhwUDKlZM=" + }, + "voting_power": "50", + "proposer_priority": null + }, + { + "address": "C479DB6F37AB9757035CFBE10B687E27668EE7DF", + "pub_key": { + "type": "tendermint/PubKeyEd25519", + "value": "3wf60CidQcsIO7TksXzEZsJefMUFF73k6nP1YeEo9to=" + }, + "voting_power": "50", + "proposer_priority": null + } + ] + }, + "provider": "BADFADAD0BEFEEDC0C0ADEADBEEFC0FFEEFACADE" + }, + "now": "1970-01-01T00:00:06Z", + "verdict": "SUCCESS" + } + ] +} diff --git a/light/verifier.go b/light/verifier.go index 0b0a4926b..3c2eaca22 100644 --- a/light/verifier.go +++ b/light/verifier.go @@ -119,7 +119,7 @@ func VerifyAdjacent( trustedHeader.NextValidatorsHash, untrustedHeader.ValidatorsHash, ) - return err + return ErrInvalidHeader{err} } // Ensure that +2/3 of new validators signed correctly.