github.com/evdatsion/aphelion-dpos-bft@v0.32.1/crypto/merkle/merkle.proto (about) 1 syntax = "proto3"; 2 package merkle; 3 4 // For more information on gogo.proto, see: 5 // https://github.com/gogo/protobuf/blob/master/extensions.md 6 import "github.com/gogo/protobuf/gogoproto/gogo.proto"; 7 8 option (gogoproto.marshaler_all) = true; 9 option (gogoproto.unmarshaler_all) = true; 10 option (gogoproto.sizer_all) = true; 11 12 option (gogoproto.populate_all) = true; 13 option (gogoproto.equal_all) = true; 14 15 //---------------------------------------- 16 // Message types 17 18 // ProofOp defines an operation used for calculating Merkle root 19 // The data could be arbitrary format, providing nessecary data 20 // for example neighbouring node hash 21 message ProofOp { 22 string type = 1; 23 bytes key = 2; 24 bytes data = 3; 25 } 26 27 // Proof is Merkle proof defined by the list of ProofOps 28 message Proof { 29 repeated ProofOp ops = 1 [(gogoproto.nullable)=false]; 30 }