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 }