You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.5 KiB

7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
  1. syntax = "proto3";
  2. package proto3;
  3. message PartSetHeader {
  4. sint32 Total = 1;
  5. bytes Hash = 2;
  6. }
  7. message BlockID {
  8. bytes Hash = 1;
  9. PartSetHeader PartsHeader = 2;
  10. }
  11. message Header {
  12. // basic block info
  13. string ChainID = 1;
  14. sint64 Height = 2;
  15. Timestamp Time = 3;
  16. sint64 NumTxs = 4;
  17. sint64 TotalTxs = 5;
  18. // prev block info
  19. BlockID LastBlockID = 6;
  20. // hashes of block data
  21. bytes LastCommitHash = 7; // commit from validators from the last block
  22. bytes DataHash = 8; // transactions
  23. // hashes from the app output from the prev block
  24. bytes ValidatorsHash = 9; // validators for the current block
  25. bytes NextValidatorsHash = 10; // validators for the next block
  26. bytes ConsensusHash = 11; // consensus params for current block
  27. bytes AppHash = 12; // state after txs from the previous block
  28. bytes LastResultsHash = 13; // root hash of all results from the txs from the previous block
  29. // consensus info
  30. bytes EvidenceHash = 14; // evidence included in the block
  31. bytes ProposerAddress = 15; // original proposer of the block
  32. }
  33. // Timestamp wraps how amino encodes time. Note that this is different from the protobuf well-known type
  34. // protobuf/timestamp.proto in the sense that there seconds and nanos are varint encoded. See:
  35. // https://github.com/google/protobuf/blob/d2980062c859649523d5fd51d6b55ab310e47482/src/google/protobuf/timestamp.proto#L123-L135
  36. // Also nanos do not get skipped if they are zero in amino.
  37. message Timestamp {
  38. sfixed64 seconds = 1;
  39. sfixed32 nanos = 2;
  40. }