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.

48 lines
1.4 KiB

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. // prev block info
  18. BlockID LastBlockID = 5;
  19. sint64 TotalTxs = 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 ConsensusHash = 10; // consensus params for current block
  26. bytes AppHash = 11; // state after txs from the previous block
  27. bytes LastResultsHash = 12; // root hash of all results from the txs from the previous block
  28. // consensus info
  29. bytes EvidenceHash = 13; // evidence included in the block
  30. }
  31. // Timestamp wraps how amino encodes time. Note that this is different from the protobuf well-known type
  32. // protobuf/timestamp.proto in the sense that there seconds and nanos are varint encoded. See:
  33. // https://github.com/google/protobuf/blob/d2980062c859649523d5fd51d6b55ab310e47482/src/google/protobuf/timestamp.proto#L123-L135
  34. // Also nanos do not get skipped if they are zero in amino.
  35. message Timestamp {
  36. sfixed64 seconds = 1;
  37. sfixed32 nanos = 2;
  38. }