syntax = "proto3"; package proto3; message PartSetHeader { sint32 Total = 1; bytes Hash = 2; } message BlockID { bytes Hash = 1; PartSetHeader PartsHeader = 2; } message Header { // basic block info string ChainID = 1; sint64 Height = 2; Timestamp Time = 3; sint64 NumTxs = 4; // prev block info BlockID LastBlockID = 5; sint64 TotalTxs = 6; // hashes of block data bytes LastCommitHash = 7; // commit from validators from the last block bytes DataHash = 8; // transactions // hashes from the app output from the prev block bytes ValidatorsHash = 9; // validators for the current block bytes ConsensusHash = 10; // consensus params for current block bytes AppHash = 11; // state after txs from the previous block bytes LastResultsHash = 12; // root hash of all results from the txs from the previous block // consensus info bytes EvidenceHash = 13; // evidence included in the block } message Timestamp { sint64 seconds = 1; sint32 nanos = 2; }