github.com/zorawar87/trillian@v1.2.1/trillian.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // source: trillian.proto
     3  
     4  package trillian // import "github.com/google/trillian"
     5  
     6  import proto "github.com/golang/protobuf/proto"
     7  import fmt "fmt"
     8  import math "math"
     9  import any "github.com/golang/protobuf/ptypes/any"
    10  import duration "github.com/golang/protobuf/ptypes/duration"
    11  import timestamp "github.com/golang/protobuf/ptypes/timestamp"
    12  import keyspb "github.com/google/trillian/crypto/keyspb"
    13  import sigpb "github.com/google/trillian/crypto/sigpb"
    14  
    15  // Reference imports to suppress errors if they are not otherwise used.
    16  var _ = proto.Marshal
    17  var _ = fmt.Errorf
    18  var _ = math.Inf
    19  
    20  // This is a compile-time assertion to ensure that this generated file
    21  // is compatible with the proto package it is being compiled against.
    22  // A compilation error at this line likely means your copy of the
    23  // proto package needs to be updated.
    24  const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
    25  
    26  // LogRootFormat specifies the fields that are covered by the
    27  // SignedLogRoot signature, as well as their ordering and formats.
    28  type LogRootFormat int32
    29  
    30  const (
    31  	LogRootFormat_LOG_ROOT_FORMAT_UNKNOWN LogRootFormat = 0
    32  	LogRootFormat_LOG_ROOT_FORMAT_V1      LogRootFormat = 1
    33  )
    34  
    35  var LogRootFormat_name = map[int32]string{
    36  	0: "LOG_ROOT_FORMAT_UNKNOWN",
    37  	1: "LOG_ROOT_FORMAT_V1",
    38  }
    39  var LogRootFormat_value = map[string]int32{
    40  	"LOG_ROOT_FORMAT_UNKNOWN": 0,
    41  	"LOG_ROOT_FORMAT_V1":      1,
    42  }
    43  
    44  func (x LogRootFormat) String() string {
    45  	return proto.EnumName(LogRootFormat_name, int32(x))
    46  }
    47  func (LogRootFormat) EnumDescriptor() ([]byte, []int) {
    48  	return fileDescriptor_trillian_e37d9043461fd127, []int{0}
    49  }
    50  
    51  // MapRootFormat specifies the fields that are covered by the
    52  // SignedMapRoot signature, as well as their ordering and formats.
    53  type MapRootFormat int32
    54  
    55  const (
    56  	MapRootFormat_MAP_ROOT_FORMAT_UNKNOWN MapRootFormat = 0
    57  	MapRootFormat_MAP_ROOT_FORMAT_V1      MapRootFormat = 1
    58  )
    59  
    60  var MapRootFormat_name = map[int32]string{
    61  	0: "MAP_ROOT_FORMAT_UNKNOWN",
    62  	1: "MAP_ROOT_FORMAT_V1",
    63  }
    64  var MapRootFormat_value = map[string]int32{
    65  	"MAP_ROOT_FORMAT_UNKNOWN": 0,
    66  	"MAP_ROOT_FORMAT_V1":      1,
    67  }
    68  
    69  func (x MapRootFormat) String() string {
    70  	return proto.EnumName(MapRootFormat_name, int32(x))
    71  }
    72  func (MapRootFormat) EnumDescriptor() ([]byte, []int) {
    73  	return fileDescriptor_trillian_e37d9043461fd127, []int{1}
    74  }
    75  
    76  // Defines the way empty / node / leaf hashes are constructed incorporating
    77  // preimage protection, which can be application specific.
    78  type HashStrategy int32
    79  
    80  const (
    81  	// Hash strategy cannot be determined. Included to enable detection of
    82  	// mismatched proto versions being used. Represents an invalid value.
    83  	HashStrategy_UNKNOWN_HASH_STRATEGY HashStrategy = 0
    84  	// Certificate Transparency strategy: leaf hash prefix = 0x00, node prefix =
    85  	// 0x01, empty hash is digest([]byte{}), as defined in the specification.
    86  	HashStrategy_RFC6962_SHA256 HashStrategy = 1
    87  	// Sparse Merkle Tree strategy:  leaf hash prefix = 0x00, node prefix = 0x01,
    88  	// empty branch is recursively computed from empty leaf nodes.
    89  	// NOT secure in a multi tree environment. For testing only.
    90  	HashStrategy_TEST_MAP_HASHER HashStrategy = 2
    91  	// Append-only log strategy where leaf nodes are defined as the ObjectHash.
    92  	// All other properties are equal to RFC6962_SHA256.
    93  	HashStrategy_OBJECT_RFC6962_SHA256 HashStrategy = 3
    94  	// The CONIKS sparse tree hasher with SHA512_256 as the hash algorithm.
    95  	HashStrategy_CONIKS_SHA512_256 HashStrategy = 4
    96  )
    97  
    98  var HashStrategy_name = map[int32]string{
    99  	0: "UNKNOWN_HASH_STRATEGY",
   100  	1: "RFC6962_SHA256",
   101  	2: "TEST_MAP_HASHER",
   102  	3: "OBJECT_RFC6962_SHA256",
   103  	4: "CONIKS_SHA512_256",
   104  }
   105  var HashStrategy_value = map[string]int32{
   106  	"UNKNOWN_HASH_STRATEGY": 0,
   107  	"RFC6962_SHA256":        1,
   108  	"TEST_MAP_HASHER":       2,
   109  	"OBJECT_RFC6962_SHA256": 3,
   110  	"CONIKS_SHA512_256":     4,
   111  }
   112  
   113  func (x HashStrategy) String() string {
   114  	return proto.EnumName(HashStrategy_name, int32(x))
   115  }
   116  func (HashStrategy) EnumDescriptor() ([]byte, []int) {
   117  	return fileDescriptor_trillian_e37d9043461fd127, []int{2}
   118  }
   119  
   120  // State of the tree.
   121  type TreeState int32
   122  
   123  const (
   124  	// Tree state cannot be determined. Included to enable detection of
   125  	// mismatched proto versions being used. Represents an invalid value.
   126  	TreeState_UNKNOWN_TREE_STATE TreeState = 0
   127  	// Active trees are able to respond to both read and write requests.
   128  	TreeState_ACTIVE TreeState = 1
   129  	// Frozen trees are only able to respond to read requests, writing to a frozen
   130  	// tree is forbidden. Trees should not be frozen when there are entries
   131  	// in the queue that have not yet been integrated. See the DRAINING
   132  	// state for this case.
   133  	TreeState_FROZEN TreeState = 2
   134  	// Deprecated: now tracked in Tree.deleted.
   135  	TreeState_DEPRECATED_SOFT_DELETED TreeState = 3 // Deprecated: Do not use.
   136  	// Deprecated: now tracked in Tree.deleted.
   137  	TreeState_DEPRECATED_HARD_DELETED TreeState = 4 // Deprecated: Do not use.
   138  	// A tree that is draining will continue to integrate queued entries.
   139  	// No new entries should be accepted.
   140  	TreeState_DRAINING TreeState = 5
   141  )
   142  
   143  var TreeState_name = map[int32]string{
   144  	0: "UNKNOWN_TREE_STATE",
   145  	1: "ACTIVE",
   146  	2: "FROZEN",
   147  	3: "DEPRECATED_SOFT_DELETED",
   148  	4: "DEPRECATED_HARD_DELETED",
   149  	5: "DRAINING",
   150  }
   151  var TreeState_value = map[string]int32{
   152  	"UNKNOWN_TREE_STATE":      0,
   153  	"ACTIVE":                  1,
   154  	"FROZEN":                  2,
   155  	"DEPRECATED_SOFT_DELETED": 3,
   156  	"DEPRECATED_HARD_DELETED": 4,
   157  	"DRAINING":                5,
   158  }
   159  
   160  func (x TreeState) String() string {
   161  	return proto.EnumName(TreeState_name, int32(x))
   162  }
   163  func (TreeState) EnumDescriptor() ([]byte, []int) {
   164  	return fileDescriptor_trillian_e37d9043461fd127, []int{3}
   165  }
   166  
   167  // Type of the tree.
   168  type TreeType int32
   169  
   170  const (
   171  	// Tree type cannot be determined. Included to enable detection of mismatched
   172  	// proto versions being used. Represents an invalid value.
   173  	TreeType_UNKNOWN_TREE_TYPE TreeType = 0
   174  	// Tree represents a verifiable log.
   175  	TreeType_LOG TreeType = 1
   176  	// Tree represents a verifiable map.
   177  	TreeType_MAP TreeType = 2
   178  	// Tree represents a verifiable pre-ordered log, i.e., a log whose entries are
   179  	// placed according to sequence numbers assigned outside of Trillian.
   180  	TreeType_PREORDERED_LOG TreeType = 3
   181  )
   182  
   183  var TreeType_name = map[int32]string{
   184  	0: "UNKNOWN_TREE_TYPE",
   185  	1: "LOG",
   186  	2: "MAP",
   187  	3: "PREORDERED_LOG",
   188  }
   189  var TreeType_value = map[string]int32{
   190  	"UNKNOWN_TREE_TYPE": 0,
   191  	"LOG":               1,
   192  	"MAP":               2,
   193  	"PREORDERED_LOG":    3,
   194  }
   195  
   196  func (x TreeType) String() string {
   197  	return proto.EnumName(TreeType_name, int32(x))
   198  }
   199  func (TreeType) EnumDescriptor() ([]byte, []int) {
   200  	return fileDescriptor_trillian_e37d9043461fd127, []int{4}
   201  }
   202  
   203  // Represents a tree, which may be either a verifiable log or map.
   204  // Readonly attributes are assigned at tree creation, after which they may not
   205  // be modified.
   206  //
   207  // Note: Many APIs within the rest of the code require these objects to
   208  // be provided. For safety they should be obtained via Admin API calls and
   209  // not created dynamically.
   210  type Tree struct {
   211  	// ID of the tree.
   212  	// Readonly.
   213  	TreeId int64 `protobuf:"varint,1,opt,name=tree_id,json=treeId" json:"tree_id,omitempty"`
   214  	// State of the tree.
   215  	// Trees are ACTIVE after creation. At any point the tree may transition
   216  	// between ACTIVE, DRAINING and FROZEN states.
   217  	TreeState TreeState `protobuf:"varint,2,opt,name=tree_state,json=treeState,enum=trillian.TreeState" json:"tree_state,omitempty"`
   218  	// Type of the tree.
   219  	// Readonly after Tree creation. Exception: Can be switched from
   220  	// PREORDERED_LOG to LOG if the Tree is and remains in the FROZEN state.
   221  	TreeType TreeType `protobuf:"varint,3,opt,name=tree_type,json=treeType,enum=trillian.TreeType" json:"tree_type,omitempty"`
   222  	// Hash strategy to be used by the tree.
   223  	// Readonly.
   224  	HashStrategy HashStrategy `protobuf:"varint,4,opt,name=hash_strategy,json=hashStrategy,enum=trillian.HashStrategy" json:"hash_strategy,omitempty"`
   225  	// Hash algorithm to be used by the tree.
   226  	// Readonly.
   227  	HashAlgorithm sigpb.DigitallySigned_HashAlgorithm `protobuf:"varint,5,opt,name=hash_algorithm,json=hashAlgorithm,enum=sigpb.DigitallySigned_HashAlgorithm" json:"hash_algorithm,omitempty"`
   228  	// Signature algorithm to be used by the tree.
   229  	// Readonly.
   230  	SignatureAlgorithm sigpb.DigitallySigned_SignatureAlgorithm `protobuf:"varint,6,opt,name=signature_algorithm,json=signatureAlgorithm,enum=sigpb.DigitallySigned_SignatureAlgorithm" json:"signature_algorithm,omitempty"`
   231  	// Display name of the tree.
   232  	// Optional.
   233  	DisplayName string `protobuf:"bytes,8,opt,name=display_name,json=displayName" json:"display_name,omitempty"`
   234  	// Description of the tree,
   235  	// Optional.
   236  	Description string `protobuf:"bytes,9,opt,name=description" json:"description,omitempty"`
   237  	// Identifies the private key used for signing tree heads and entry
   238  	// timestamps.
   239  	// This can be any type of message to accommodate different key management
   240  	// systems, e.g. PEM files, HSMs, etc.
   241  	// Private keys are write-only: they're never returned by RPCs.
   242  	// The private_key message can be changed after a tree is created, but the
   243  	// underlying key must remain the same - this is to enable migrating a key
   244  	// from one provider to another.
   245  	PrivateKey *any.Any `protobuf:"bytes,12,opt,name=private_key,json=privateKey" json:"private_key,omitempty"`
   246  	// Storage-specific settings.
   247  	// Varies according to the storage implementation backing Trillian.
   248  	StorageSettings *any.Any `protobuf:"bytes,13,opt,name=storage_settings,json=storageSettings" json:"storage_settings,omitempty"`
   249  	// The public key used for verifying tree heads and entry timestamps.
   250  	// Readonly.
   251  	PublicKey *keyspb.PublicKey `protobuf:"bytes,14,opt,name=public_key,json=publicKey" json:"public_key,omitempty"`
   252  	// Interval after which a new signed root is produced even if there have been
   253  	// no submission.  If zero, this behavior is disabled.
   254  	MaxRootDuration *duration.Duration `protobuf:"bytes,15,opt,name=max_root_duration,json=maxRootDuration" json:"max_root_duration,omitempty"`
   255  	// Time of tree creation.
   256  	// Readonly.
   257  	CreateTime *timestamp.Timestamp `protobuf:"bytes,16,opt,name=create_time,json=createTime" json:"create_time,omitempty"`
   258  	// Time of last tree update.
   259  	// Readonly (automatically assigned on updates).
   260  	UpdateTime *timestamp.Timestamp `protobuf:"bytes,17,opt,name=update_time,json=updateTime" json:"update_time,omitempty"`
   261  	// If true, the tree has been deleted.
   262  	// Deleted trees may be undeleted during a certain time window, after which
   263  	// they're permanently deleted (and unrecoverable).
   264  	// Readonly.
   265  	Deleted bool `protobuf:"varint,19,opt,name=deleted" json:"deleted,omitempty"`
   266  	// Time of tree deletion, if any.
   267  	// Readonly.
   268  	DeleteTime           *timestamp.Timestamp `protobuf:"bytes,20,opt,name=delete_time,json=deleteTime" json:"delete_time,omitempty"`
   269  	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
   270  	XXX_unrecognized     []byte               `json:"-"`
   271  	XXX_sizecache        int32                `json:"-"`
   272  }
   273  
   274  func (m *Tree) Reset()         { *m = Tree{} }
   275  func (m *Tree) String() string { return proto.CompactTextString(m) }
   276  func (*Tree) ProtoMessage()    {}
   277  func (*Tree) Descriptor() ([]byte, []int) {
   278  	return fileDescriptor_trillian_e37d9043461fd127, []int{0}
   279  }
   280  func (m *Tree) XXX_Unmarshal(b []byte) error {
   281  	return xxx_messageInfo_Tree.Unmarshal(m, b)
   282  }
   283  func (m *Tree) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   284  	return xxx_messageInfo_Tree.Marshal(b, m, deterministic)
   285  }
   286  func (dst *Tree) XXX_Merge(src proto.Message) {
   287  	xxx_messageInfo_Tree.Merge(dst, src)
   288  }
   289  func (m *Tree) XXX_Size() int {
   290  	return xxx_messageInfo_Tree.Size(m)
   291  }
   292  func (m *Tree) XXX_DiscardUnknown() {
   293  	xxx_messageInfo_Tree.DiscardUnknown(m)
   294  }
   295  
   296  var xxx_messageInfo_Tree proto.InternalMessageInfo
   297  
   298  func (m *Tree) GetTreeId() int64 {
   299  	if m != nil {
   300  		return m.TreeId
   301  	}
   302  	return 0
   303  }
   304  
   305  func (m *Tree) GetTreeState() TreeState {
   306  	if m != nil {
   307  		return m.TreeState
   308  	}
   309  	return TreeState_UNKNOWN_TREE_STATE
   310  }
   311  
   312  func (m *Tree) GetTreeType() TreeType {
   313  	if m != nil {
   314  		return m.TreeType
   315  	}
   316  	return TreeType_UNKNOWN_TREE_TYPE
   317  }
   318  
   319  func (m *Tree) GetHashStrategy() HashStrategy {
   320  	if m != nil {
   321  		return m.HashStrategy
   322  	}
   323  	return HashStrategy_UNKNOWN_HASH_STRATEGY
   324  }
   325  
   326  func (m *Tree) GetHashAlgorithm() sigpb.DigitallySigned_HashAlgorithm {
   327  	if m != nil {
   328  		return m.HashAlgorithm
   329  	}
   330  	return sigpb.DigitallySigned_NONE
   331  }
   332  
   333  func (m *Tree) GetSignatureAlgorithm() sigpb.DigitallySigned_SignatureAlgorithm {
   334  	if m != nil {
   335  		return m.SignatureAlgorithm
   336  	}
   337  	return sigpb.DigitallySigned_ANONYMOUS
   338  }
   339  
   340  func (m *Tree) GetDisplayName() string {
   341  	if m != nil {
   342  		return m.DisplayName
   343  	}
   344  	return ""
   345  }
   346  
   347  func (m *Tree) GetDescription() string {
   348  	if m != nil {
   349  		return m.Description
   350  	}
   351  	return ""
   352  }
   353  
   354  func (m *Tree) GetPrivateKey() *any.Any {
   355  	if m != nil {
   356  		return m.PrivateKey
   357  	}
   358  	return nil
   359  }
   360  
   361  func (m *Tree) GetStorageSettings() *any.Any {
   362  	if m != nil {
   363  		return m.StorageSettings
   364  	}
   365  	return nil
   366  }
   367  
   368  func (m *Tree) GetPublicKey() *keyspb.PublicKey {
   369  	if m != nil {
   370  		return m.PublicKey
   371  	}
   372  	return nil
   373  }
   374  
   375  func (m *Tree) GetMaxRootDuration() *duration.Duration {
   376  	if m != nil {
   377  		return m.MaxRootDuration
   378  	}
   379  	return nil
   380  }
   381  
   382  func (m *Tree) GetCreateTime() *timestamp.Timestamp {
   383  	if m != nil {
   384  		return m.CreateTime
   385  	}
   386  	return nil
   387  }
   388  
   389  func (m *Tree) GetUpdateTime() *timestamp.Timestamp {
   390  	if m != nil {
   391  		return m.UpdateTime
   392  	}
   393  	return nil
   394  }
   395  
   396  func (m *Tree) GetDeleted() bool {
   397  	if m != nil {
   398  		return m.Deleted
   399  	}
   400  	return false
   401  }
   402  
   403  func (m *Tree) GetDeleteTime() *timestamp.Timestamp {
   404  	if m != nil {
   405  		return m.DeleteTime
   406  	}
   407  	return nil
   408  }
   409  
   410  type SignedEntryTimestamp struct {
   411  	TimestampNanos       int64                  `protobuf:"varint,1,opt,name=timestamp_nanos,json=timestampNanos" json:"timestamp_nanos,omitempty"`
   412  	LogId                int64                  `protobuf:"varint,2,opt,name=log_id,json=logId" json:"log_id,omitempty"`
   413  	Signature            *sigpb.DigitallySigned `protobuf:"bytes,3,opt,name=signature" json:"signature,omitempty"`
   414  	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
   415  	XXX_unrecognized     []byte                 `json:"-"`
   416  	XXX_sizecache        int32                  `json:"-"`
   417  }
   418  
   419  func (m *SignedEntryTimestamp) Reset()         { *m = SignedEntryTimestamp{} }
   420  func (m *SignedEntryTimestamp) String() string { return proto.CompactTextString(m) }
   421  func (*SignedEntryTimestamp) ProtoMessage()    {}
   422  func (*SignedEntryTimestamp) Descriptor() ([]byte, []int) {
   423  	return fileDescriptor_trillian_e37d9043461fd127, []int{1}
   424  }
   425  func (m *SignedEntryTimestamp) XXX_Unmarshal(b []byte) error {
   426  	return xxx_messageInfo_SignedEntryTimestamp.Unmarshal(m, b)
   427  }
   428  func (m *SignedEntryTimestamp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   429  	return xxx_messageInfo_SignedEntryTimestamp.Marshal(b, m, deterministic)
   430  }
   431  func (dst *SignedEntryTimestamp) XXX_Merge(src proto.Message) {
   432  	xxx_messageInfo_SignedEntryTimestamp.Merge(dst, src)
   433  }
   434  func (m *SignedEntryTimestamp) XXX_Size() int {
   435  	return xxx_messageInfo_SignedEntryTimestamp.Size(m)
   436  }
   437  func (m *SignedEntryTimestamp) XXX_DiscardUnknown() {
   438  	xxx_messageInfo_SignedEntryTimestamp.DiscardUnknown(m)
   439  }
   440  
   441  var xxx_messageInfo_SignedEntryTimestamp proto.InternalMessageInfo
   442  
   443  func (m *SignedEntryTimestamp) GetTimestampNanos() int64 {
   444  	if m != nil {
   445  		return m.TimestampNanos
   446  	}
   447  	return 0
   448  }
   449  
   450  func (m *SignedEntryTimestamp) GetLogId() int64 {
   451  	if m != nil {
   452  		return m.LogId
   453  	}
   454  	return 0
   455  }
   456  
   457  func (m *SignedEntryTimestamp) GetSignature() *sigpb.DigitallySigned {
   458  	if m != nil {
   459  		return m.Signature
   460  	}
   461  	return nil
   462  }
   463  
   464  // SignedLogRoot represents a commitment by a Log to a particular tree.
   465  type SignedLogRoot struct {
   466  	// Deprecated: TimestampNanos moved to LogRoot.
   467  	TimestampNanos int64 `protobuf:"varint,1,opt,name=timestamp_nanos,json=timestampNanos" json:"timestamp_nanos,omitempty"`
   468  	// Deprecated: RootHash moved to LogRoot.
   469  	RootHash []byte `protobuf:"bytes,2,opt,name=root_hash,json=rootHash,proto3" json:"root_hash,omitempty"`
   470  	// Deprecated: TreeSize moved to LogRoot.
   471  	TreeSize int64 `protobuf:"varint,3,opt,name=tree_size,json=treeSize" json:"tree_size,omitempty"`
   472  	// Deprecated: TreeRevision moved to LogRoot.
   473  	TreeRevision int64 `protobuf:"varint,6,opt,name=tree_revision,json=treeRevision" json:"tree_revision,omitempty"`
   474  	// key_hint is a hint to identify the public key for signature verification.
   475  	// key_hint is not authenticated and may be incorrect or missing, in which
   476  	// case all known public keys may be used to verify the signature.
   477  	// When directly communicating with a Trillian gRPC server, the key_hint will
   478  	// typically contain the LogID encoded as a big-endian 64-bit integer;
   479  	// however, in other contexts the key_hint is likely to have different
   480  	// contents (e.g. it could be a GUID, a URL + TreeID, or it could be
   481  	// derived from the public key itself).
   482  	KeyHint []byte `protobuf:"bytes,7,opt,name=key_hint,json=keyHint,proto3" json:"key_hint,omitempty"`
   483  	// log_root holds the TLS-serialization of the following structure (described
   484  	// in RFC5246 notation): Clients should validate log_root_signature with
   485  	// VerifySignedLogRoot before deserializing log_root.
   486  	// enum { v1(1), (65535)} Version;
   487  	// struct {
   488  	//   uint64 tree_size;
   489  	//   opaque root_hash<0..128>;
   490  	//   uint64 timestamp_nanos;
   491  	//   uint64 revision;
   492  	//   opaque metadata<0..65535>;
   493  	// } LogRootV1;
   494  	// struct {
   495  	//   Version version;
   496  	//   select(version) {
   497  	//     case v1: LogRootV1;
   498  	//   }
   499  	// } LogRoot;
   500  	LogRoot []byte `protobuf:"bytes,8,opt,name=log_root,json=logRoot,proto3" json:"log_root,omitempty"`
   501  	// log_root_signature is the raw signature over log_root.
   502  	LogRootSignature     []byte   `protobuf:"bytes,9,opt,name=log_root_signature,json=logRootSignature,proto3" json:"log_root_signature,omitempty"`
   503  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   504  	XXX_unrecognized     []byte   `json:"-"`
   505  	XXX_sizecache        int32    `json:"-"`
   506  }
   507  
   508  func (m *SignedLogRoot) Reset()         { *m = SignedLogRoot{} }
   509  func (m *SignedLogRoot) String() string { return proto.CompactTextString(m) }
   510  func (*SignedLogRoot) ProtoMessage()    {}
   511  func (*SignedLogRoot) Descriptor() ([]byte, []int) {
   512  	return fileDescriptor_trillian_e37d9043461fd127, []int{2}
   513  }
   514  func (m *SignedLogRoot) XXX_Unmarshal(b []byte) error {
   515  	return xxx_messageInfo_SignedLogRoot.Unmarshal(m, b)
   516  }
   517  func (m *SignedLogRoot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   518  	return xxx_messageInfo_SignedLogRoot.Marshal(b, m, deterministic)
   519  }
   520  func (dst *SignedLogRoot) XXX_Merge(src proto.Message) {
   521  	xxx_messageInfo_SignedLogRoot.Merge(dst, src)
   522  }
   523  func (m *SignedLogRoot) XXX_Size() int {
   524  	return xxx_messageInfo_SignedLogRoot.Size(m)
   525  }
   526  func (m *SignedLogRoot) XXX_DiscardUnknown() {
   527  	xxx_messageInfo_SignedLogRoot.DiscardUnknown(m)
   528  }
   529  
   530  var xxx_messageInfo_SignedLogRoot proto.InternalMessageInfo
   531  
   532  func (m *SignedLogRoot) GetTimestampNanos() int64 {
   533  	if m != nil {
   534  		return m.TimestampNanos
   535  	}
   536  	return 0
   537  }
   538  
   539  func (m *SignedLogRoot) GetRootHash() []byte {
   540  	if m != nil {
   541  		return m.RootHash
   542  	}
   543  	return nil
   544  }
   545  
   546  func (m *SignedLogRoot) GetTreeSize() int64 {
   547  	if m != nil {
   548  		return m.TreeSize
   549  	}
   550  	return 0
   551  }
   552  
   553  func (m *SignedLogRoot) GetTreeRevision() int64 {
   554  	if m != nil {
   555  		return m.TreeRevision
   556  	}
   557  	return 0
   558  }
   559  
   560  func (m *SignedLogRoot) GetKeyHint() []byte {
   561  	if m != nil {
   562  		return m.KeyHint
   563  	}
   564  	return nil
   565  }
   566  
   567  func (m *SignedLogRoot) GetLogRoot() []byte {
   568  	if m != nil {
   569  		return m.LogRoot
   570  	}
   571  	return nil
   572  }
   573  
   574  func (m *SignedLogRoot) GetLogRootSignature() []byte {
   575  	if m != nil {
   576  		return m.LogRootSignature
   577  	}
   578  	return nil
   579  }
   580  
   581  // SignedMapRoot represents a commitment by a Map to a particular tree.
   582  type SignedMapRoot struct {
   583  	// map_root holds the TLS-serialization of the following structure (described
   584  	// in RFC5246 notation): Clients should validate signature with
   585  	// VerifySignedMapRoot before deserializing map_root.
   586  	// enum { v1(1), (65535)} Version;
   587  	// struct {
   588  	//   opaque root_hash<0..128>;
   589  	//   uint64 timestamp_nanos;
   590  	//   uint64 revision;
   591  	//   opaque metadata<0..65535>;
   592  	// } MapRootV1;
   593  	// struct {
   594  	//   Version version;
   595  	//   select(version) {
   596  	//     case v1: MapRootV1;
   597  	//   }
   598  	// } MapRoot;
   599  	MapRoot []byte `protobuf:"bytes,9,opt,name=map_root,json=mapRoot,proto3" json:"map_root,omitempty"`
   600  	// Signature is the raw signature over MapRoot.
   601  	Signature            []byte   `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"`
   602  	XXX_NoUnkeyedLiteral struct{} `json:"-"`
   603  	XXX_unrecognized     []byte   `json:"-"`
   604  	XXX_sizecache        int32    `json:"-"`
   605  }
   606  
   607  func (m *SignedMapRoot) Reset()         { *m = SignedMapRoot{} }
   608  func (m *SignedMapRoot) String() string { return proto.CompactTextString(m) }
   609  func (*SignedMapRoot) ProtoMessage()    {}
   610  func (*SignedMapRoot) Descriptor() ([]byte, []int) {
   611  	return fileDescriptor_trillian_e37d9043461fd127, []int{3}
   612  }
   613  func (m *SignedMapRoot) XXX_Unmarshal(b []byte) error {
   614  	return xxx_messageInfo_SignedMapRoot.Unmarshal(m, b)
   615  }
   616  func (m *SignedMapRoot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   617  	return xxx_messageInfo_SignedMapRoot.Marshal(b, m, deterministic)
   618  }
   619  func (dst *SignedMapRoot) XXX_Merge(src proto.Message) {
   620  	xxx_messageInfo_SignedMapRoot.Merge(dst, src)
   621  }
   622  func (m *SignedMapRoot) XXX_Size() int {
   623  	return xxx_messageInfo_SignedMapRoot.Size(m)
   624  }
   625  func (m *SignedMapRoot) XXX_DiscardUnknown() {
   626  	xxx_messageInfo_SignedMapRoot.DiscardUnknown(m)
   627  }
   628  
   629  var xxx_messageInfo_SignedMapRoot proto.InternalMessageInfo
   630  
   631  func (m *SignedMapRoot) GetMapRoot() []byte {
   632  	if m != nil {
   633  		return m.MapRoot
   634  	}
   635  	return nil
   636  }
   637  
   638  func (m *SignedMapRoot) GetSignature() []byte {
   639  	if m != nil {
   640  		return m.Signature
   641  	}
   642  	return nil
   643  }
   644  
   645  func init() {
   646  	proto.RegisterType((*Tree)(nil), "trillian.Tree")
   647  	proto.RegisterType((*SignedEntryTimestamp)(nil), "trillian.SignedEntryTimestamp")
   648  	proto.RegisterType((*SignedLogRoot)(nil), "trillian.SignedLogRoot")
   649  	proto.RegisterType((*SignedMapRoot)(nil), "trillian.SignedMapRoot")
   650  	proto.RegisterEnum("trillian.LogRootFormat", LogRootFormat_name, LogRootFormat_value)
   651  	proto.RegisterEnum("trillian.MapRootFormat", MapRootFormat_name, MapRootFormat_value)
   652  	proto.RegisterEnum("trillian.HashStrategy", HashStrategy_name, HashStrategy_value)
   653  	proto.RegisterEnum("trillian.TreeState", TreeState_name, TreeState_value)
   654  	proto.RegisterEnum("trillian.TreeType", TreeType_name, TreeType_value)
   655  }
   656  
   657  func init() { proto.RegisterFile("trillian.proto", fileDescriptor_trillian_e37d9043461fd127) }
   658  
   659  var fileDescriptor_trillian_e37d9043461fd127 = []byte{
   660  	// 1097 bytes of a gzipped FileDescriptorProto
   661  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x56, 0xdb, 0x6f, 0xdb, 0x36,
   662  	0x17, 0xaf, 0x6c, 0xc5, 0x96, 0xe9, 0x4b, 0x18, 0xa6, 0x17, 0xd9, 0xfd, 0xf0, 0xd5, 0xcb, 0x06,
   663  	0x2c, 0x2b, 0x06, 0x67, 0xf5, 0xd6, 0x02, 0x43, 0x1f, 0x06, 0x35, 0x56, 0x62, 0x3b, 0x89, 0x6d,
   664  	0x50, 0x5a, 0x87, 0xe6, 0x85, 0x90, 0x6d, 0x4e, 0x16, 0xa2, 0x1b, 0x24, 0xba, 0xa8, 0xfa, 0x3c,
   665  	0x60, 0x18, 0xb6, 0x3f, 0x7a, 0x20, 0x45, 0xd9, 0x89, 0xb3, 0xae, 0x7b, 0x49, 0x78, 0xce, 0xef,
   666  	0xc2, 0x23, 0xf2, 0x1c, 0xc9, 0xa0, 0xc5, 0x12, 0xcf, 0xf7, 0x3d, 0x27, 0xec, 0xc5, 0x49, 0xc4,
   667  	0x22, 0xa4, 0x15, 0x71, 0xa7, 0xb3, 0x48, 0xb2, 0x98, 0x45, 0x27, 0x37, 0x34, 0x4b, 0xe3, 0xb9,
   668  	0xfc, 0x97, 0xb3, 0x3a, 0xba, 0xc4, 0x52, 0xcf, 0x8d, 0xe7, 0xf9, 0x5f, 0x89, 0xb4, 0xdd, 0x28,
   669  	0x72, 0x7d, 0x7a, 0x22, 0xa2, 0xf9, 0xfa, 0xd7, 0x13, 0x27, 0xcc, 0x24, 0xf4, 0xff, 0x5d, 0x68,
   670  	0xb9, 0x4e, 0x1c, 0xe6, 0x45, 0x72, 0xeb, 0xce, 0xb3, 0x5d, 0x9c, 0x79, 0x01, 0x4d, 0x99, 0x13,
   671  	0xc4, 0x39, 0xe1, 0xe8, 0x8f, 0x2a, 0x50, 0xed, 0x84, 0x52, 0xf4, 0x04, 0x54, 0x59, 0x42, 0x29,
   672  	0xf1, 0x96, 0xba, 0xd2, 0x55, 0x8e, 0xcb, 0xb8, 0xc2, 0xc3, 0xd1, 0x12, 0xf5, 0x01, 0x10, 0x40,
   673  	0xca, 0x1c, 0x46, 0xf5, 0x52, 0x57, 0x39, 0x6e, 0xf5, 0x0f, 0x7b, 0x9b, 0x47, 0xe4, 0x62, 0x8b,
   674  	0x43, 0xb8, 0xc6, 0x8a, 0x25, 0x3a, 0x01, 0x22, 0x20, 0x2c, 0x8b, 0xa9, 0x5e, 0x16, 0x12, 0x74,
   675  	0x57, 0x62, 0x67, 0x31, 0xc5, 0x1a, 0x93, 0x2b, 0xf4, 0x1a, 0x34, 0x57, 0x4e, 0xba, 0x22, 0x29,
   676  	0x4b, 0x1c, 0x46, 0xdd, 0x4c, 0x57, 0x85, 0xe8, 0xf1, 0x56, 0x34, 0x74, 0xd2, 0x95, 0x25, 0x51,
   677  	0xdc, 0x58, 0xdd, 0x8a, 0xd0, 0x05, 0x68, 0x09, 0xb1, 0xe3, 0xbb, 0x51, 0xe2, 0xb1, 0x55, 0xa0,
   678  	0xef, 0x09, 0xf5, 0x57, 0xbd, 0xfc, 0x14, 0x07, 0x9e, 0xeb, 0x31, 0xc7, 0xf7, 0x33, 0xcb, 0x73,
   679  	0x43, 0xba, 0x14, 0x56, 0x46, 0xc1, 0xc5, 0x62, 0xe3, 0x4d, 0x88, 0xae, 0xc1, 0x61, 0xea, 0xb9,
   680  	0xa1, 0xc3, 0xd6, 0x09, 0xbd, 0xe5, 0x58, 0x11, 0x8e, 0xdf, 0x7c, 0xc2, 0xd1, 0x2a, 0x14, 0x5b,
   681  	0x5b, 0x94, 0xde, 0xcb, 0xa1, 0x2f, 0x40, 0x63, 0xe9, 0xa5, 0xb1, 0xef, 0x64, 0x24, 0x74, 0x02,
   682  	0xaa, 0x6b, 0x5d, 0xe5, 0xb8, 0x86, 0xeb, 0x32, 0x37, 0x71, 0x02, 0x8a, 0xba, 0xa0, 0xbe, 0xa4,
   683  	0xe9, 0x22, 0xf1, 0x62, 0x7e, 0x8b, 0x7a, 0x4d, 0x32, 0xb6, 0x29, 0xf4, 0x12, 0xd4, 0xe3, 0xc4,
   684  	0x7b, 0xef, 0x30, 0x4a, 0x6e, 0x68, 0xa6, 0x37, 0xba, 0xca, 0x71, 0xbd, 0xff, 0xb0, 0x97, 0x5f,
   685  	0x74, 0xaf, 0xb8, 0xe8, 0x9e, 0x11, 0x66, 0x18, 0x48, 0xe2, 0x05, 0xcd, 0xd0, 0x4f, 0x00, 0xa6,
   686  	0x2c, 0x4a, 0x1c, 0x97, 0x92, 0x94, 0x32, 0xe6, 0x85, 0x6e, 0xaa, 0x37, 0xff, 0x45, 0xbb, 0x2f,
   687  	0xd9, 0x96, 0x24, 0xa3, 0xef, 0x00, 0x88, 0xd7, 0x73, 0xdf, 0x5b, 0x88, 0x6d, 0x5b, 0x42, 0x7a,
   688  	0xd0, 0x93, 0x2d, 0x3c, 0x13, 0xc8, 0x05, 0xcd, 0x70, 0x2d, 0x2e, 0x96, 0xc8, 0x04, 0x07, 0x81,
   689  	0xf3, 0x81, 0x24, 0x51, 0xc4, 0x48, 0xd1, 0x97, 0xfa, 0xbe, 0x10, 0xb6, 0xef, 0xed, 0x39, 0x90,
   690  	0x04, 0xbc, 0x1f, 0x38, 0x1f, 0x70, 0x14, 0xb1, 0x22, 0x81, 0x5e, 0x83, 0xfa, 0x22, 0xa1, 0xfc,
   691  	0x79, 0x79, 0xf3, 0xea, 0x50, 0x18, 0x74, 0xee, 0x19, 0xd8, 0x45, 0x67, 0x63, 0x90, 0xd3, 0x79,
   692  	0x82, 0x8b, 0xd7, 0xf1, 0x72, 0x23, 0x3e, 0xf8, 0xbc, 0x38, 0xa7, 0x0b, 0xb1, 0x0e, 0xaa, 0x4b,
   693  	0xea, 0x53, 0x46, 0x97, 0xfa, 0x61, 0x57, 0x39, 0xd6, 0x70, 0x11, 0x72, 0xdb, 0x7c, 0x99, 0xdb,
   694  	0x3e, 0xfc, 0xbc, 0x6d, 0x4e, 0xe7, 0x89, 0xb1, 0xaa, 0x21, 0x78, 0x38, 0x56, 0xb5, 0x2a, 0xd4,
   695  	0xc6, 0xaa, 0x06, 0x60, 0x7d, 0xac, 0x6a, 0x75, 0xd8, 0x38, 0xfa, 0x4b, 0x01, 0x0f, 0xf3, 0x86,
   696  	0x32, 0x43, 0x96, 0x64, 0x1b, 0x31, 0xfa, 0x1a, 0xec, 0x6f, 0xe6, 0x96, 0x84, 0x4e, 0x18, 0xa5,
   697  	0x72, 0x46, 0x5b, 0x9b, 0xf4, 0x84, 0x67, 0xd1, 0x23, 0x50, 0xf1, 0x23, 0x97, 0xcf, 0x70, 0x49,
   698  	0xe0, 0x7b, 0x7e, 0xe4, 0x8e, 0x96, 0xe8, 0x07, 0x50, 0xdb, 0x74, 0xa3, 0x18, 0xc7, 0x7a, 0xff,
   699  	0xf1, 0x3f, 0x77, 0x32, 0xde, 0x12, 0x8f, 0x7e, 0x2f, 0x81, 0x66, 0x9e, 0xbd, 0x8c, 0x5c, 0x7e,
   700  	0x23, 0xff, 0xbd, 0x8e, 0xa7, 0xa0, 0x26, 0x6e, 0x9d, 0x8f, 0x96, 0x28, 0xa5, 0x81, 0x35, 0x9e,
   701  	0xe0, 0x93, 0xc7, 0xc1, 0xfc, 0x85, 0xe2, 0x7d, 0xcc, 0xab, 0x29, 0xe7, 0x2f, 0x02, 0xcb, 0xfb,
   702  	0x48, 0xd1, 0x97, 0xa0, 0x29, 0xc0, 0x84, 0xbe, 0xf7, 0x52, 0xde, 0x2f, 0x15, 0x41, 0x68, 0xf0,
   703  	0x24, 0x96, 0x39, 0xd4, 0x06, 0xda, 0x0d, 0xcd, 0xc8, 0xca, 0x0b, 0x99, 0x5e, 0x15, 0xee, 0xd5,
   704  	0x1b, 0x9a, 0x0d, 0xbd, 0x90, 0x71, 0x88, 0x9f, 0x00, 0xdf, 0x4c, 0x8c, 0x57, 0x03, 0x57, 0x7d,
   705  	0x59, 0xfd, 0xb7, 0x00, 0x15, 0x10, 0xd9, 0x1e, 0x47, 0x4d, 0x90, 0xa0, 0x24, 0x6d, 0x06, 0x79,
   706  	0xac, 0x6a, 0x2a, 0xdc, 0x1b, 0xab, 0xda, 0x1e, 0xac, 0x1c, 0x25, 0xc5, 0x41, 0x5c, 0x39, 0xb1,
   707  	0xb0, 0x6a, 0x03, 0x2d, 0x70, 0xe2, 0x7c, 0x97, 0xdc, 0xa0, 0x1a, 0x48, 0xe8, 0x7f, 0xb7, 0xcf,
   708  	0x5a, 0x15, 0xd8, 0x36, 0x31, 0x56, 0x35, 0x05, 0x96, 0xc6, 0xaa, 0x56, 0x82, 0xe5, 0xb1, 0xaa,
   709  	0x95, 0xa1, 0x9a, 0xef, 0x30, 0x56, 0xb5, 0x0a, 0xac, 0x6e, 0x5a, 0x42, 0x83, 0xb5, 0xe7, 0x03,
   710  	0xd0, 0x94, 0xc7, 0x7e, 0x16, 0x25, 0x81, 0xc3, 0xd0, 0x53, 0xf0, 0xe4, 0x72, 0x7a, 0x4e, 0xf0,
   711  	0x74, 0x6a, 0x93, 0xb3, 0x29, 0xbe, 0x32, 0x6c, 0xf2, 0xf3, 0xe4, 0x62, 0x32, 0xfd, 0x65, 0x02,
   712  	0x1f, 0xa0, 0xc7, 0x00, 0xed, 0x82, 0x6f, 0x5f, 0x40, 0x85, 0xbb, 0xc8, 0x9a, 0xb7, 0x2e, 0x57,
   713  	0xc6, 0xec, 0xd3, 0x2e, 0xbb, 0xa0, 0x70, 0xf9, 0x4d, 0x01, 0x8d, 0xdb, 0xef, 0x5f, 0xd4, 0x06,
   714  	0x8f, 0xa4, 0x8a, 0x0c, 0x0d, 0x6b, 0x48, 0x2c, 0x1b, 0x1b, 0xb6, 0x79, 0xfe, 0x0e, 0x3e, 0x40,
   715  	0x08, 0xb4, 0xf0, 0xd9, 0xe9, 0xab, 0x1f, 0x5f, 0xf5, 0x89, 0x35, 0x34, 0xfa, 0x2f, 0x5f, 0x41,
   716  	0x05, 0x1d, 0x82, 0x7d, 0xdb, 0xb4, 0x6c, 0xc2, 0xcd, 0x39, 0xdf, 0xc4, 0xb0, 0xc4, 0x3d, 0xa6,
   717  	0x6f, 0xc6, 0xe6, 0xa9, 0x4d, 0x76, 0xf8, 0x65, 0xf4, 0x08, 0x1c, 0x9c, 0x4e, 0x27, 0xa3, 0x0b,
   718  	0x8b, 0xa7, 0x5e, 0xbe, 0xe8, 0x13, 0x9e, 0x56, 0x9f, 0xff, 0xa9, 0x80, 0xda, 0xe6, 0x73, 0xc3,
   719  	0x8b, 0x2d, 0x6a, 0xb0, 0xb1, 0x69, 0x12, 0xcb, 0x36, 0x6c, 0x13, 0x3e, 0x40, 0x00, 0x54, 0x8c,
   720  	0x53, 0x7b, 0xf4, 0xd6, 0x84, 0x0a, 0x5f, 0x9f, 0xe1, 0xe9, 0xb5, 0x39, 0x81, 0x25, 0xf4, 0x0c,
   721  	0x3c, 0x19, 0x98, 0x33, 0x6c, 0x9e, 0x1a, 0xb6, 0x39, 0x20, 0xd6, 0xf4, 0xcc, 0x26, 0x03, 0xf3,
   722  	0xd2, 0xb4, 0xcd, 0x01, 0x2c, 0x77, 0x4a, 0x9a, 0xb2, 0x43, 0x18, 0x1a, 0x78, 0xb0, 0x21, 0xa8,
   723  	0x82, 0xd0, 0x00, 0xda, 0x00, 0x1b, 0xa3, 0xc9, 0x68, 0x72, 0x0e, 0xf7, 0x9e, 0x9f, 0x03, 0xad,
   724  	0xf8, 0x90, 0xf1, 0x82, 0xef, 0xd4, 0x62, 0xbf, 0x9b, 0xf1, 0x52, 0xaa, 0xa0, 0x7c, 0x39, 0x3d,
   725  	0x87, 0x0a, 0x5f, 0x5c, 0x19, 0x33, 0x58, 0xe2, 0xa7, 0x33, 0xc3, 0xe6, 0x14, 0x0f, 0x4c, 0x6c,
   726  	0x0e, 0x08, 0x07, 0xcb, 0x6f, 0x86, 0xa0, 0xbd, 0x88, 0x82, 0xe2, 0xdd, 0x71, 0xf7, 0xb7, 0xc3,
   727  	0x9b, 0xa6, 0x2d, 0xe3, 0x19, 0x0f, 0x67, 0xca, 0x75, 0xc7, 0xf5, 0xd8, 0x6a, 0x3d, 0xef, 0x2d,
   728  	0xa2, 0xe0, 0x44, 0x7e, 0xdc, 0x0b, 0xc9, 0xbc, 0x22, 0x34, 0xdf, 0xff, 0x1d, 0x00, 0x00, 0xff,
   729  	0xff, 0x19, 0x4e, 0xf0, 0x51, 0x81, 0x08, 0x00, 0x00,
   730  }