trillian

package module
v1.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2019 License: Apache-2.0 Imports: 20 Imported by: 479

README ¶

Trillian: General Transparency

Build Status Go Report Card GoDoc Slack Status

Overview

Trillian is an implementation of the concepts described in the Verifiable Data Structures white paper, which in turn is an extension and generalisation of the ideas which underpin Certificate Transparency.

Trillian implements a Merkle tree whose contents are served from a data storage layer, to allow scalability to extremely large trees. On top of this Merkle tree, Trillian provides two modes:

  • An append-only Log mode, analogous to the original Certificate Transparency logs. In this mode, the Merkle tree is effectively filled up from the left, giving a dense Merkle tree.
  • An experimental Map mode that allows transparent storage of arbitrary key:value pairs derived from the contents of a source Log; this is also known as a log-backed map. In this mode, the key's hash is used to designate a particular leaf of a deep Merkle tree – sufficiently deep that filled leaves are vastly outnumbered by unfilled leaves, giving a sparse Merkle tree. (A Trillian Map is an unordered map; it does not allow enumeration of the Map's keys.)

Note that Trillian requires particular applications to provide their own personalities on top of the core transparent data store functionality.

Certificate Transparency (CT) is the most well-known and widely deployed transparency application, and an implementation of CT as a Trillian personality is available in the certificate-transparency-go repo.

Other examples of Trillian personalities are available in the trillian-examples repo.

Support

Using the Code

WARNING: The Trillian codebase is still under development, but the Log mode is now being used in production by several organizations. We will try to avoid any further incompatible code and schema changes but cannot guarantee that they will never be necessary.

The current state of feature implementation is recorded in the Feature implementation matrix.

To build and test Trillian you need:

  • Go 1.11 or later.

To run many of the tests (and production deployment) you need:

Note that this repository uses Go modules to manage dependencies; Go will fetch and install them automatically upon build/test.

To fetch the code, dependencies, and build Trillian, run the following:

export GO111MODULE=auto

git clone https://github.com/google/trillian.git
cd trillian

go build ./...

To build and run tests, use:

go test ./...

The repository also includes multi-process integration tests, described in the Integration Tests section below.

MySQL Setup

To run Trillian's integration tests you need to have an instance of MySQL running and configured to:

  • listen on the standard MySQL port 3306 (so mysql --host=127.0.0.1 --port=3306 connects OK)
  • not require a password for the root user

You can then set up the expected tables in a test database like so:

./scripts/resetdb.sh
Warning: about to destroy and reset database 'test'
Are you sure? y
> Resetting DB...
> Reset Complete

If you are working with the Trillian Map, you will probably need to increase the MySQL maximum connection count:

% mysql -u root
MySQL> SET GLOBAL max_connections = 1000;
Integration Tests

Trillian includes an integration test suite to confirm basic end-to-end functionality, which can be run with:

./integration/integration_test.sh

This runs two multi-process tests:

  • A test that starts a Trillian server in Log mode, together with a signer, logs many leaves, and checks they are integrated correctly.
  • A test that starts a Trillian server in Map mode, sets various key:value pairs and checks they can be retrieved.

Working on the Code

Developers who want to make changes to the Trillian codebase need some additional dependencies and tools, described in the following sections. The Travis configuration for the codebase is also a useful reference for the required tools and scripts, as it may be more up-to-date than this document.

Rebuilding Generated Code

Some of the Trillian Go code is autogenerated from other files:

  • gRPC message structures are originally provided as protocol buffer message definitions.
  • Some unit tests use mock implementations of interfaces; these are created from the real implementations by GoMock.
  • Some enums have string-conversion methods (satisfying the fmt.Stringer interface) created using the stringer tool (go get golang.org/x/tools/cmd/stringer).

Re-generating mock or protobuffer files is only needed if you're changing the original files; if you do, you'll need to install the prerequisites:

and run the following:

go generate -x ./...  # hunts for //go:generate comments and runs them
Updating Dependencies

The Trillian codebase uses go.mod to declare fixed versions of its dependencies. With Go modules, updating a dependency simply involves running go get:

export GO111MODULE=on
go get package/path       # Fetch the latest published version
go get package/path@X.Y.Z # Fetch a specific published version
go get package/path@HEAD  # Fetch the latest commit 

To update ALL dependencies to the latest version run go get -u. Be warned however, that this may undo any selected versions that resolve issues in other non-module repos.

While running go build and go test, go will add any ambiguous transitive dependencies to go.mod To clean these up run:

go mod tidy
Running Codebase Checks

The scripts/presubmit.sh script runs various tools and tests over the codebase.

Install golangci-lint.
go install github.com/golangci/golangci-lint/cmd/golangci-lint
Install prototool
go install github.com/uber/prototool/cmd/prototool
Run code generation, build, test and linters
./scripts/presubmit.sh
Or just run the linters alone
golangci-lint run
prototool lint

Design

Design Overview

Trillian is primarily implemented as a gRPC service; this service receives get/set requests over gRPC and retrieves the corresponding Merkle tree data from a separate storage layer (currently using MySQL), ensuring that the cryptographic properties of the tree are preserved along the way.

The Trillian service is multi-tenanted – a single Trillian installation can support multiple Merkle trees in parallel, distinguished by their TreeId – and each tree operates in one of two modes:

  • Log mode: an append-only collection of items; this has two sub-modes:
    • normal Log mode, where the Trillian service assigns sequence numbers to new tree entries as they arrive
    • 'preordered' Log mode, where the unique sequence number for entries in the Merkle tree is externally specified
  • Map mode: a collection of key:value pairs.

In either case, Trillian's key transparency property is that cryptographic proofs of inclusion/consistency are available for data items added to the service.

Personalities

To build a complete transparent application, the Trillian core service needs to be paired with additional code, known as a personality, that provides functionality that is specific to the particular application.

In particular, the personality is responsible for:

  • Admission Criteria – ensuring that submissions comply with the overall purpose of the application.
  • Canonicalization – ensuring that equivalent versions of the same data get the same canonical identifier, so they can be de-duplicated by the Trillian core service.
  • External Interface – providing an API for external users, including any practical constraints (ACLs, load-balancing, DoS protection, etc.)

This is described in more detail in a separate document. General design considerations for transparent Log applications are also discussed separately.

Log Mode

When running in Log mode, Trillian provides a gRPC API whose operations are similar to those available for Certificate Transparency logs (cf. RFC 6962). These include:

  • GetLatestSignedLogRoot returns information about the current root of the Merkle tree for the log, including the tree size, hash value, timestamp and signature.
  • GetLeavesByHash, GetLeavesByIndex and GetLeavesByRange return leaf information for particular leaves, specified either by their hash value or index in the log.
  • QueueLeaves requests inclusion of specified items into the log.
    • For a pre-ordered log, AddSequencedLeaves requests the inclusion of specified items into the log at specified places in the tree.
  • GetInclusionProof, GetInclusionProofByHash and GetConsistencyProof return inclusion and consistency proof data.

In Log mode (whether normal or pre-ordered), Trillian includes an additional Signer component; this component periodically processes pending items and adds them to the Merkle tree, creating a new signed tree head as a result.

Log components

(Note that each of the components in this diagram can be distributed, for scalability and resilience.)

Map Mode

WARNING: Trillian Map mode is experimental and under development; it should not be relied on for a production service (yet).

Trillian in Map mode can be thought of as providing a key:value store for values derived from a data source (normally a Trillian Log), together with cryptographic transparency guarantees for that data.

When running in Map mode, Trillian provides a straightforward gRPC API with the following available operations:

  • SetLeaves requests inclusion of specified key:value pairs into the Map; these will appear as the next revision of the Map, with a new tree head for that revision.
  • GetSignedMapRoot returns information about the current root of the Merkle tree representing the Map, including a revision , hash value, timestamp and signature.
    • A variant allows queries of the tree root at a specified historical revision.
  • GetLeaves returns leaf information for a specified set of key values, optionally as of a particular revision. The returned leaf information also includes inclusion proof data.

Map components

Logged Map

As a stand-alone component, it is not possible to reliably monitor or audit a Trillian Map instance; key:value pairs can be modified and subsequently reset without anyone noticing.

A future plan to deal with this is to create a Logged Map, which combines a Trillian Map with a Trillian Log so that all published revisions of the Map have their signed tree head data appended to the corresponding Map.

The mapping between the source Log data and the key:value data stored in the Map is application-specific, and so is implemented as a Trillian personality. This allows for wide flexibility in the mapping function:

  • The simplest example is a Log that holds a journal of pending mutations to the key:value data; the mapping function here simply applies a batch of mutations.
  • A more sophisticated example might log entries that are independently of interest (e.g. Web PKI certificates) and apply a more complex mapping function (e.g. map from domain name to public key for the domains covered by a certificate).

Log-Backed Map

Use Cases

Certificate Transparency Log

The most obvious application for Trillian in Log mode is to provide a Certificate Transparency (RFC 6962) Log. To do this, the CT Log personality needs to include all of the certificate-specific processing – in particular, checking that an item that has been suggested for inclusion is indeed a valid certificate that chains to an accepted root.

Verifiable Log-Backed Map

One useful application for Trillian in Map mode is to provide a verifiable log-backed map, as described in the Verifiable Data Structures white paper (which uses the term 'log-backed map'). To do this, a mapper personality would monitor the additions of entries to a Log, potentially external, and would write some kind of corresponding key:value data to a Trillian Map.

Clients of the log-backed map are then able to verify that the entries in the Map they are shown are also seen by anyone auditing the Log for correct operation, which in turn allows the client to trust the key/value pairs returned by the Map.

A concrete example of this might be a log-backed map that monitors a Certificate Transparency Log and builds a corresponding Map from domain names to the set of certificates associated with that domain.

The following table summarizes properties of data structures laid in the Verifiable Data Structures white paper. "Efficiently" means that a client can and should perform this validation themselves. "Full audit" means that to validate correctly, a client would need to download the entire dataset, and is something that in practice we expect a small number of dedicated auditors to perform, rather than being done by each client.

Verifiable Log Verifiable Map Verifiable Log-Backed Map
Prove inclusion of value Yes, efficiently Yes, efficiently Yes, efficiently
Prove non-inclusion of value Impractical Yes, efficiently Yes, efficiently
Retrieve provable value for key Impractical Yes, efficiently Yes, efficiently
Retrieve provable current value for key Impractical No Yes, efficiently
Prove append-only Yes, efficiently No Yes, efficiently [1].
Enumerate all entries Yes, by full audit Yes, by full audit Yes, by full audit
Prove correct operation Yes, efficiently No Yes, by full audit
Enable detection of split-view Yes, efficiently Yes, efficiently Yes, efficiently
  • [1] -- although full audit is required to verify complete correct operation

Documentation ¶

Overview ¶

Package trillian is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Package trillian is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Package trillian is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Index ¶

Constants ¶

This section is empty.

Variables ¶

View Source
var HashStrategy_name = map[int32]string{
	0: "UNKNOWN_HASH_STRATEGY",
	1: "RFC6962_SHA256",
	2: "TEST_MAP_HASHER",
	3: "OBJECT_RFC6962_SHA256",
	4: "CONIKS_SHA512_256",
	5: "CONIKS_SHA256",
}
View Source
var HashStrategy_value = map[string]int32{
	"UNKNOWN_HASH_STRATEGY": 0,
	"RFC6962_SHA256":        1,
	"TEST_MAP_HASHER":       2,
	"OBJECT_RFC6962_SHA256": 3,
	"CONIKS_SHA512_256":     4,
	"CONIKS_SHA256":         5,
}
View Source
var LogRootFormat_name = map[int32]string{
	0: "LOG_ROOT_FORMAT_UNKNOWN",
	1: "LOG_ROOT_FORMAT_V1",
}
View Source
var LogRootFormat_value = map[string]int32{
	"LOG_ROOT_FORMAT_UNKNOWN": 0,
	"LOG_ROOT_FORMAT_V1":      1,
}
View Source
var MapRootFormat_name = map[int32]string{
	0: "MAP_ROOT_FORMAT_UNKNOWN",
	1: "MAP_ROOT_FORMAT_V1",
}
View Source
var MapRootFormat_value = map[string]int32{
	"MAP_ROOT_FORMAT_UNKNOWN": 0,
	"MAP_ROOT_FORMAT_V1":      1,
}
View Source
var TreeState_name = map[int32]string{
	0: "UNKNOWN_TREE_STATE",
	1: "ACTIVE",
	2: "FROZEN",
	3: "DEPRECATED_SOFT_DELETED",
	4: "DEPRECATED_HARD_DELETED",
	5: "DRAINING",
}
View Source
var TreeState_value = map[string]int32{
	"UNKNOWN_TREE_STATE":      0,
	"ACTIVE":                  1,
	"FROZEN":                  2,
	"DEPRECATED_SOFT_DELETED": 3,
	"DEPRECATED_HARD_DELETED": 4,
	"DRAINING":                5,
}
View Source
var TreeType_name = map[int32]string{
	0: "UNKNOWN_TREE_TYPE",
	1: "LOG",
	2: "MAP",
	3: "PREORDERED_LOG",
}
View Source
var TreeType_value = map[string]int32{
	"UNKNOWN_TREE_TYPE": 0,
	"LOG":               1,
	"MAP":               2,
	"PREORDERED_LOG":    3,
}

Functions ¶

func RegisterTrillianAdminHandler ¶

func RegisterTrillianAdminHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterTrillianAdminHandler registers the http handlers for service TrillianAdmin to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterTrillianAdminHandlerClient ¶ added in v1.0.5

func RegisterTrillianAdminHandlerClient(ctx context.Context, mux *runtime.ServeMux, client TrillianAdminClient) error

RegisterTrillianAdminHandlerClient registers the http handlers for service TrillianAdmin to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "TrillianAdminClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "TrillianAdminClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "TrillianAdminClient" to call the correct interceptors.

func RegisterTrillianAdminHandlerFromEndpoint ¶

func RegisterTrillianAdminHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterTrillianAdminHandlerFromEndpoint is same as RegisterTrillianAdminHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterTrillianAdminServer ¶

func RegisterTrillianAdminServer(s *grpc.Server, srv TrillianAdminServer)

func RegisterTrillianLogHandler ¶

func RegisterTrillianLogHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterTrillianLogHandler registers the http handlers for service TrillianLog to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterTrillianLogHandlerClient ¶ added in v1.0.5

func RegisterTrillianLogHandlerClient(ctx context.Context, mux *runtime.ServeMux, client TrillianLogClient) error

RegisterTrillianLogHandlerClient registers the http handlers for service TrillianLog to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "TrillianLogClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "TrillianLogClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "TrillianLogClient" to call the correct interceptors.

func RegisterTrillianLogHandlerFromEndpoint ¶

func RegisterTrillianLogHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterTrillianLogHandlerFromEndpoint is same as RegisterTrillianLogHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterTrillianLogSequencerServer ¶ added in v1.2.1

func RegisterTrillianLogSequencerServer(s *grpc.Server, srv TrillianLogSequencerServer)

func RegisterTrillianLogServer ¶

func RegisterTrillianLogServer(s *grpc.Server, srv TrillianLogServer)

func RegisterTrillianMapHandler ¶

func RegisterTrillianMapHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterTrillianMapHandler registers the http handlers for service TrillianMap to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterTrillianMapHandlerClient ¶ added in v1.0.5

func RegisterTrillianMapHandlerClient(ctx context.Context, mux *runtime.ServeMux, client TrillianMapClient) error

RegisterTrillianMapHandlerClient registers the http handlers for service TrillianMap to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "TrillianMapClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "TrillianMapClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "TrillianMapClient" to call the correct interceptors.

func RegisterTrillianMapHandlerFromEndpoint ¶

func RegisterTrillianMapHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterTrillianMapHandlerFromEndpoint is same as RegisterTrillianMapHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterTrillianMapServer ¶

func RegisterTrillianMapServer(s *grpc.Server, srv TrillianMapServer)

func RegisterTrillianMapWriteServer ¶ added in v1.3.0

func RegisterTrillianMapWriteServer(s *grpc.Server, srv TrillianMapWriteServer)

Types ¶

type AddSequencedLeafRequest ¶ added in v1.0.7

type AddSequencedLeafRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	Leaf                 *LogLeaf  `protobuf:"bytes,2,opt,name=leaf,proto3" json:"leaf,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,3,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*AddSequencedLeafRequest) Descriptor ¶ added in v1.0.7

func (*AddSequencedLeafRequest) Descriptor() ([]byte, []int)

func (*AddSequencedLeafRequest) GetChargeTo ¶ added in v1.2.0

func (m *AddSequencedLeafRequest) GetChargeTo() *ChargeTo

func (*AddSequencedLeafRequest) GetLeaf ¶ added in v1.0.7

func (m *AddSequencedLeafRequest) GetLeaf() *LogLeaf

func (*AddSequencedLeafRequest) GetLogId ¶ added in v1.0.7

func (m *AddSequencedLeafRequest) GetLogId() int64

func (*AddSequencedLeafRequest) ProtoMessage ¶ added in v1.0.7

func (*AddSequencedLeafRequest) ProtoMessage()

func (*AddSequencedLeafRequest) Reset ¶ added in v1.0.7

func (m *AddSequencedLeafRequest) Reset()

func (*AddSequencedLeafRequest) String ¶ added in v1.0.7

func (m *AddSequencedLeafRequest) String() string

func (*AddSequencedLeafRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *AddSequencedLeafRequest) XXX_DiscardUnknown()

func (*AddSequencedLeafRequest) XXX_Marshal ¶ added in v1.2.1

func (m *AddSequencedLeafRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AddSequencedLeafRequest) XXX_Merge ¶ added in v1.2.1

func (m *AddSequencedLeafRequest) XXX_Merge(src proto.Message)

func (*AddSequencedLeafRequest) XXX_Size ¶ added in v1.2.1

func (m *AddSequencedLeafRequest) XXX_Size() int

func (*AddSequencedLeafRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *AddSequencedLeafRequest) XXX_Unmarshal(b []byte) error

type AddSequencedLeafResponse ¶ added in v1.0.7

type AddSequencedLeafResponse struct {
	Result               *QueuedLogLeaf `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*AddSequencedLeafResponse) Descriptor ¶ added in v1.0.7

func (*AddSequencedLeafResponse) Descriptor() ([]byte, []int)

func (*AddSequencedLeafResponse) GetResult ¶ added in v1.0.7

func (m *AddSequencedLeafResponse) GetResult() *QueuedLogLeaf

func (*AddSequencedLeafResponse) ProtoMessage ¶ added in v1.0.7

func (*AddSequencedLeafResponse) ProtoMessage()

func (*AddSequencedLeafResponse) Reset ¶ added in v1.0.7

func (m *AddSequencedLeafResponse) Reset()

func (*AddSequencedLeafResponse) String ¶ added in v1.0.7

func (m *AddSequencedLeafResponse) String() string

func (*AddSequencedLeafResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *AddSequencedLeafResponse) XXX_DiscardUnknown()

func (*AddSequencedLeafResponse) XXX_Marshal ¶ added in v1.2.1

func (m *AddSequencedLeafResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AddSequencedLeafResponse) XXX_Merge ¶ added in v1.2.1

func (m *AddSequencedLeafResponse) XXX_Merge(src proto.Message)

func (*AddSequencedLeafResponse) XXX_Size ¶ added in v1.2.1

func (m *AddSequencedLeafResponse) XXX_Size() int

func (*AddSequencedLeafResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *AddSequencedLeafResponse) XXX_Unmarshal(b []byte) error

type AddSequencedLeavesRequest ¶ added in v1.0.7

type AddSequencedLeavesRequest struct {
	LogId                int64      `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	Leaves               []*LogLeaf `protobuf:"bytes,2,rep,name=leaves,proto3" json:"leaves,omitempty"`
	ChargeTo             *ChargeTo  `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (*AddSequencedLeavesRequest) Descriptor ¶ added in v1.0.7

func (*AddSequencedLeavesRequest) Descriptor() ([]byte, []int)

func (*AddSequencedLeavesRequest) GetChargeTo ¶ added in v1.2.0

func (m *AddSequencedLeavesRequest) GetChargeTo() *ChargeTo

func (*AddSequencedLeavesRequest) GetLeaves ¶ added in v1.0.7

func (m *AddSequencedLeavesRequest) GetLeaves() []*LogLeaf

func (*AddSequencedLeavesRequest) GetLogId ¶ added in v1.0.7

func (m *AddSequencedLeavesRequest) GetLogId() int64

func (*AddSequencedLeavesRequest) ProtoMessage ¶ added in v1.0.7

func (*AddSequencedLeavesRequest) ProtoMessage()

func (*AddSequencedLeavesRequest) Reset ¶ added in v1.0.7

func (m *AddSequencedLeavesRequest) Reset()

func (*AddSequencedLeavesRequest) String ¶ added in v1.0.7

func (m *AddSequencedLeavesRequest) String() string

func (*AddSequencedLeavesRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *AddSequencedLeavesRequest) XXX_DiscardUnknown()

func (*AddSequencedLeavesRequest) XXX_Marshal ¶ added in v1.2.1

func (m *AddSequencedLeavesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AddSequencedLeavesRequest) XXX_Merge ¶ added in v1.2.1

func (m *AddSequencedLeavesRequest) XXX_Merge(src proto.Message)

func (*AddSequencedLeavesRequest) XXX_Size ¶ added in v1.2.1

func (m *AddSequencedLeavesRequest) XXX_Size() int

func (*AddSequencedLeavesRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *AddSequencedLeavesRequest) XXX_Unmarshal(b []byte) error

type AddSequencedLeavesResponse ¶ added in v1.0.7

type AddSequencedLeavesResponse struct {
	// Same number and order as in the corresponding request.
	Results              []*QueuedLogLeaf `protobuf:"bytes,2,rep,name=results,proto3" json:"results,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*AddSequencedLeavesResponse) Descriptor ¶ added in v1.0.7

func (*AddSequencedLeavesResponse) Descriptor() ([]byte, []int)

func (*AddSequencedLeavesResponse) GetResults ¶ added in v1.0.7

func (m *AddSequencedLeavesResponse) GetResults() []*QueuedLogLeaf

func (*AddSequencedLeavesResponse) ProtoMessage ¶ added in v1.0.7

func (*AddSequencedLeavesResponse) ProtoMessage()

func (*AddSequencedLeavesResponse) Reset ¶ added in v1.0.7

func (m *AddSequencedLeavesResponse) Reset()

func (*AddSequencedLeavesResponse) String ¶ added in v1.0.7

func (m *AddSequencedLeavesResponse) String() string

func (*AddSequencedLeavesResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *AddSequencedLeavesResponse) XXX_DiscardUnknown()

func (*AddSequencedLeavesResponse) XXX_Marshal ¶ added in v1.2.1

func (m *AddSequencedLeavesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AddSequencedLeavesResponse) XXX_Merge ¶ added in v1.2.1

func (m *AddSequencedLeavesResponse) XXX_Merge(src proto.Message)

func (*AddSequencedLeavesResponse) XXX_Size ¶ added in v1.2.1

func (m *AddSequencedLeavesResponse) XXX_Size() int

func (*AddSequencedLeavesResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *AddSequencedLeavesResponse) XXX_Unmarshal(b []byte) error

type ChargeTo ¶ added in v1.2.0

type ChargeTo struct {
	// user is a list of personality-defined strings.
	// Trillian will treat them as /User/%{user}/... keys when checking and
	// charging quota.
	// If one or more of the specified users has insufficient quota, the
	// request will be denied.
	//
	// As an example, a Certificate Transparency frontend might set the following
	// user strings when sending a QueueLeaves request to the Trillian log:
	//   - The requesting IP address.
	//     This would limit the number of requests per IP.
	//   - The "intermediate-<hash>" for each of the intermediate certificates in
	//     the submitted chain.
	//     This would have the effect of limiting the rate of submissions under
	//     a given intermediate/root.
	User                 []string `protobuf:"bytes,1,rep,name=user,proto3" json:"user,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ChargeTo describes the user(s) associated with the request whose quota should be checked and charged.

func (*ChargeTo) Descriptor ¶ added in v1.2.0

func (*ChargeTo) Descriptor() ([]byte, []int)

func (*ChargeTo) GetUser ¶ added in v1.2.0

func (m *ChargeTo) GetUser() []string

func (*ChargeTo) ProtoMessage ¶ added in v1.2.0

func (*ChargeTo) ProtoMessage()

func (*ChargeTo) Reset ¶ added in v1.2.0

func (m *ChargeTo) Reset()

func (*ChargeTo) String ¶ added in v1.2.0

func (m *ChargeTo) String() string

func (*ChargeTo) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *ChargeTo) XXX_DiscardUnknown()

func (*ChargeTo) XXX_Marshal ¶ added in v1.2.1

func (m *ChargeTo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ChargeTo) XXX_Merge ¶ added in v1.2.1

func (m *ChargeTo) XXX_Merge(src proto.Message)

func (*ChargeTo) XXX_Size ¶ added in v1.2.1

func (m *ChargeTo) XXX_Size() int

func (*ChargeTo) XXX_Unmarshal ¶ added in v1.2.1

func (m *ChargeTo) XXX_Unmarshal(b []byte) error

type CreateTreeRequest ¶

type CreateTreeRequest struct {
	// Tree to be created. See Tree and CreateTree for more details.
	Tree *Tree `protobuf:"bytes,1,opt,name=tree,proto3" json:"tree,omitempty"`
	// Describes how the tree's private key should be generated.
	// Only needs to be set if tree.private_key is not set.
	KeySpec              *keyspb.Specification `protobuf:"bytes,2,opt,name=key_spec,json=keySpec,proto3" json:"key_spec,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

CreateTree request.

func (*CreateTreeRequest) Descriptor ¶

func (*CreateTreeRequest) Descriptor() ([]byte, []int)

func (*CreateTreeRequest) GetKeySpec ¶

func (m *CreateTreeRequest) GetKeySpec() *keyspb.Specification

func (*CreateTreeRequest) GetTree ¶

func (m *CreateTreeRequest) GetTree() *Tree

func (*CreateTreeRequest) ProtoMessage ¶

func (*CreateTreeRequest) ProtoMessage()

func (*CreateTreeRequest) Reset ¶

func (m *CreateTreeRequest) Reset()

func (*CreateTreeRequest) String ¶

func (m *CreateTreeRequest) String() string

func (*CreateTreeRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *CreateTreeRequest) XXX_DiscardUnknown()

func (*CreateTreeRequest) XXX_Marshal ¶ added in v1.2.1

func (m *CreateTreeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CreateTreeRequest) XXX_Merge ¶ added in v1.2.1

func (m *CreateTreeRequest) XXX_Merge(src proto.Message)

func (*CreateTreeRequest) XXX_Size ¶ added in v1.2.1

func (m *CreateTreeRequest) XXX_Size() int

func (*CreateTreeRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *CreateTreeRequest) XXX_Unmarshal(b []byte) error

type DeleteTreeRequest ¶

type DeleteTreeRequest struct {
	// ID of the tree to delete.
	TreeId               int64    `protobuf:"varint,1,opt,name=tree_id,json=treeId,proto3" json:"tree_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

DeleteTree request.

func (*DeleteTreeRequest) Descriptor ¶

func (*DeleteTreeRequest) Descriptor() ([]byte, []int)

func (*DeleteTreeRequest) GetTreeId ¶

func (m *DeleteTreeRequest) GetTreeId() int64

func (*DeleteTreeRequest) ProtoMessage ¶

func (*DeleteTreeRequest) ProtoMessage()

func (*DeleteTreeRequest) Reset ¶

func (m *DeleteTreeRequest) Reset()

func (*DeleteTreeRequest) String ¶

func (m *DeleteTreeRequest) String() string

func (*DeleteTreeRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *DeleteTreeRequest) XXX_DiscardUnknown()

func (*DeleteTreeRequest) XXX_Marshal ¶ added in v1.2.1

func (m *DeleteTreeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DeleteTreeRequest) XXX_Merge ¶ added in v1.2.1

func (m *DeleteTreeRequest) XXX_Merge(src proto.Message)

func (*DeleteTreeRequest) XXX_Size ¶ added in v1.2.1

func (m *DeleteTreeRequest) XXX_Size() int

func (*DeleteTreeRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *DeleteTreeRequest) XXX_Unmarshal(b []byte) error

type GetConsistencyProofRequest ¶

type GetConsistencyProofRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	FirstTreeSize        int64     `protobuf:"varint,2,opt,name=first_tree_size,json=firstTreeSize,proto3" json:"first_tree_size,omitempty"`
	SecondTreeSize       int64     `protobuf:"varint,3,opt,name=second_tree_size,json=secondTreeSize,proto3" json:"second_tree_size,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetConsistencyProofRequest) Descriptor ¶

func (*GetConsistencyProofRequest) Descriptor() ([]byte, []int)

func (*GetConsistencyProofRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetConsistencyProofRequest) GetChargeTo() *ChargeTo

func (*GetConsistencyProofRequest) GetFirstTreeSize ¶

func (m *GetConsistencyProofRequest) GetFirstTreeSize() int64

func (*GetConsistencyProofRequest) GetLogId ¶

func (m *GetConsistencyProofRequest) GetLogId() int64

func (*GetConsistencyProofRequest) GetSecondTreeSize ¶

func (m *GetConsistencyProofRequest) GetSecondTreeSize() int64

func (*GetConsistencyProofRequest) ProtoMessage ¶

func (*GetConsistencyProofRequest) ProtoMessage()

func (*GetConsistencyProofRequest) Reset ¶

func (m *GetConsistencyProofRequest) Reset()

func (*GetConsistencyProofRequest) String ¶

func (m *GetConsistencyProofRequest) String() string

func (*GetConsistencyProofRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetConsistencyProofRequest) XXX_DiscardUnknown()

func (*GetConsistencyProofRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetConsistencyProofRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetConsistencyProofRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetConsistencyProofRequest) XXX_Merge(src proto.Message)

func (*GetConsistencyProofRequest) XXX_Size ¶ added in v1.2.1

func (m *GetConsistencyProofRequest) XXX_Size() int

func (*GetConsistencyProofRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetConsistencyProofRequest) XXX_Unmarshal(b []byte) error

type GetConsistencyProofResponse ¶

type GetConsistencyProofResponse struct {
	// The proof field may be empty if the requested tree_size was larger
	// than that available at the server (e.g. because there is skew between
	// server instances, and an earlier client request was processed by a
	// more up-to-date instance).  In this case, the signed_log_root
	// field will indicate the tree size that the server is aware of, and
	// the proof field will be empty.
	Proof                *Proof         `protobuf:"bytes,2,opt,name=proof,proto3" json:"proof,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetConsistencyProofResponse) Descriptor ¶

func (*GetConsistencyProofResponse) Descriptor() ([]byte, []int)

func (*GetConsistencyProofResponse) GetProof ¶

func (m *GetConsistencyProofResponse) GetProof() *Proof

func (*GetConsistencyProofResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetConsistencyProofResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetConsistencyProofResponse) ProtoMessage ¶

func (*GetConsistencyProofResponse) ProtoMessage()

func (*GetConsistencyProofResponse) Reset ¶

func (m *GetConsistencyProofResponse) Reset()

func (*GetConsistencyProofResponse) String ¶

func (m *GetConsistencyProofResponse) String() string

func (*GetConsistencyProofResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetConsistencyProofResponse) XXX_DiscardUnknown()

func (*GetConsistencyProofResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetConsistencyProofResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetConsistencyProofResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetConsistencyProofResponse) XXX_Merge(src proto.Message)

func (*GetConsistencyProofResponse) XXX_Size ¶ added in v1.2.1

func (m *GetConsistencyProofResponse) XXX_Size() int

func (*GetConsistencyProofResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetConsistencyProofResponse) XXX_Unmarshal(b []byte) error

type GetEntryAndProofRequest ¶

type GetEntryAndProofRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	LeafIndex            int64     `protobuf:"varint,2,opt,name=leaf_index,json=leafIndex,proto3" json:"leaf_index,omitempty"`
	TreeSize             int64     `protobuf:"varint,3,opt,name=tree_size,json=treeSize,proto3" json:"tree_size,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetEntryAndProofRequest) Descriptor ¶

func (*GetEntryAndProofRequest) Descriptor() ([]byte, []int)

func (*GetEntryAndProofRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetEntryAndProofRequest) GetChargeTo() *ChargeTo

func (*GetEntryAndProofRequest) GetLeafIndex ¶

func (m *GetEntryAndProofRequest) GetLeafIndex() int64

func (*GetEntryAndProofRequest) GetLogId ¶

func (m *GetEntryAndProofRequest) GetLogId() int64

func (*GetEntryAndProofRequest) GetTreeSize ¶

func (m *GetEntryAndProofRequest) GetTreeSize() int64

func (*GetEntryAndProofRequest) ProtoMessage ¶

func (*GetEntryAndProofRequest) ProtoMessage()

func (*GetEntryAndProofRequest) Reset ¶

func (m *GetEntryAndProofRequest) Reset()

func (*GetEntryAndProofRequest) String ¶

func (m *GetEntryAndProofRequest) String() string

func (*GetEntryAndProofRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetEntryAndProofRequest) XXX_DiscardUnknown()

func (*GetEntryAndProofRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetEntryAndProofRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetEntryAndProofRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetEntryAndProofRequest) XXX_Merge(src proto.Message)

func (*GetEntryAndProofRequest) XXX_Size ¶ added in v1.2.1

func (m *GetEntryAndProofRequest) XXX_Size() int

func (*GetEntryAndProofRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetEntryAndProofRequest) XXX_Unmarshal(b []byte) error

type GetEntryAndProofResponse ¶

type GetEntryAndProofResponse struct {
	Proof                *Proof         `protobuf:"bytes,2,opt,name=proof,proto3" json:"proof,omitempty"`
	Leaf                 *LogLeaf       `protobuf:"bytes,3,opt,name=leaf,proto3" json:"leaf,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,4,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetEntryAndProofResponse) Descriptor ¶

func (*GetEntryAndProofResponse) Descriptor() ([]byte, []int)

func (*GetEntryAndProofResponse) GetLeaf ¶

func (m *GetEntryAndProofResponse) GetLeaf() *LogLeaf

func (*GetEntryAndProofResponse) GetProof ¶

func (m *GetEntryAndProofResponse) GetProof() *Proof

func (*GetEntryAndProofResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetEntryAndProofResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetEntryAndProofResponse) ProtoMessage ¶

func (*GetEntryAndProofResponse) ProtoMessage()

func (*GetEntryAndProofResponse) Reset ¶

func (m *GetEntryAndProofResponse) Reset()

func (*GetEntryAndProofResponse) String ¶

func (m *GetEntryAndProofResponse) String() string

func (*GetEntryAndProofResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetEntryAndProofResponse) XXX_DiscardUnknown()

func (*GetEntryAndProofResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetEntryAndProofResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetEntryAndProofResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetEntryAndProofResponse) XXX_Merge(src proto.Message)

func (*GetEntryAndProofResponse) XXX_Size ¶ added in v1.2.1

func (m *GetEntryAndProofResponse) XXX_Size() int

func (*GetEntryAndProofResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetEntryAndProofResponse) XXX_Unmarshal(b []byte) error

type GetInclusionProofByHashRequest ¶

type GetInclusionProofByHashRequest struct {
	LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	// The leaf hash field provides the Merkle tree hash of the leaf entry
	// to be retrieved.
	LeafHash             []byte    `protobuf:"bytes,2,opt,name=leaf_hash,json=leafHash,proto3" json:"leaf_hash,omitempty"`
	TreeSize             int64     `protobuf:"varint,3,opt,name=tree_size,json=treeSize,proto3" json:"tree_size,omitempty"`
	OrderBySequence      bool      `protobuf:"varint,4,opt,name=order_by_sequence,json=orderBySequence,proto3" json:"order_by_sequence,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,5,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetInclusionProofByHashRequest) Descriptor ¶

func (*GetInclusionProofByHashRequest) Descriptor() ([]byte, []int)

func (*GetInclusionProofByHashRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetInclusionProofByHashRequest) GetChargeTo() *ChargeTo

func (*GetInclusionProofByHashRequest) GetLeafHash ¶

func (m *GetInclusionProofByHashRequest) GetLeafHash() []byte

func (*GetInclusionProofByHashRequest) GetLogId ¶

func (m *GetInclusionProofByHashRequest) GetLogId() int64

func (*GetInclusionProofByHashRequest) GetOrderBySequence ¶

func (m *GetInclusionProofByHashRequest) GetOrderBySequence() bool

func (*GetInclusionProofByHashRequest) GetTreeSize ¶

func (m *GetInclusionProofByHashRequest) GetTreeSize() int64

func (*GetInclusionProofByHashRequest) ProtoMessage ¶

func (*GetInclusionProofByHashRequest) ProtoMessage()

func (*GetInclusionProofByHashRequest) Reset ¶

func (m *GetInclusionProofByHashRequest) Reset()

func (*GetInclusionProofByHashRequest) String ¶

func (*GetInclusionProofByHashRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetInclusionProofByHashRequest) XXX_DiscardUnknown()

func (*GetInclusionProofByHashRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetInclusionProofByHashRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetInclusionProofByHashRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetInclusionProofByHashRequest) XXX_Merge(src proto.Message)

func (*GetInclusionProofByHashRequest) XXX_Size ¶ added in v1.2.1

func (m *GetInclusionProofByHashRequest) XXX_Size() int

func (*GetInclusionProofByHashRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetInclusionProofByHashRequest) XXX_Unmarshal(b []byte) error

type GetInclusionProofByHashResponse ¶

type GetInclusionProofByHashResponse struct {
	// Logs can potentially contain leaves with duplicate hashes so it's possible
	// for this to return multiple proofs.  If the leaf index for a particular
	// instance of the requested Merkle leaf hash is beyond the requested tree
	// size, the corresponding proof entry will be missing.
	Proof                []*Proof       `protobuf:"bytes,2,rep,name=proof,proto3" json:"proof,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetInclusionProofByHashResponse) Descriptor ¶

func (*GetInclusionProofByHashResponse) Descriptor() ([]byte, []int)

func (*GetInclusionProofByHashResponse) GetProof ¶

func (m *GetInclusionProofByHashResponse) GetProof() []*Proof

func (*GetInclusionProofByHashResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetInclusionProofByHashResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetInclusionProofByHashResponse) ProtoMessage ¶

func (*GetInclusionProofByHashResponse) ProtoMessage()

func (*GetInclusionProofByHashResponse) Reset ¶

func (*GetInclusionProofByHashResponse) String ¶

func (*GetInclusionProofByHashResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetInclusionProofByHashResponse) XXX_DiscardUnknown()

func (*GetInclusionProofByHashResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetInclusionProofByHashResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetInclusionProofByHashResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetInclusionProofByHashResponse) XXX_Merge(src proto.Message)

func (*GetInclusionProofByHashResponse) XXX_Size ¶ added in v1.2.1

func (m *GetInclusionProofByHashResponse) XXX_Size() int

func (*GetInclusionProofByHashResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetInclusionProofByHashResponse) XXX_Unmarshal(b []byte) error

type GetInclusionProofRequest ¶

type GetInclusionProofRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	LeafIndex            int64     `protobuf:"varint,2,opt,name=leaf_index,json=leafIndex,proto3" json:"leaf_index,omitempty"`
	TreeSize             int64     `protobuf:"varint,3,opt,name=tree_size,json=treeSize,proto3" json:"tree_size,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetInclusionProofRequest) Descriptor ¶

func (*GetInclusionProofRequest) Descriptor() ([]byte, []int)

func (*GetInclusionProofRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetInclusionProofRequest) GetChargeTo() *ChargeTo

func (*GetInclusionProofRequest) GetLeafIndex ¶

func (m *GetInclusionProofRequest) GetLeafIndex() int64

func (*GetInclusionProofRequest) GetLogId ¶

func (m *GetInclusionProofRequest) GetLogId() int64

func (*GetInclusionProofRequest) GetTreeSize ¶

func (m *GetInclusionProofRequest) GetTreeSize() int64

func (*GetInclusionProofRequest) ProtoMessage ¶

func (*GetInclusionProofRequest) ProtoMessage()

func (*GetInclusionProofRequest) Reset ¶

func (m *GetInclusionProofRequest) Reset()

func (*GetInclusionProofRequest) String ¶

func (m *GetInclusionProofRequest) String() string

func (*GetInclusionProofRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetInclusionProofRequest) XXX_DiscardUnknown()

func (*GetInclusionProofRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetInclusionProofRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetInclusionProofRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetInclusionProofRequest) XXX_Merge(src proto.Message)

func (*GetInclusionProofRequest) XXX_Size ¶ added in v1.2.1

func (m *GetInclusionProofRequest) XXX_Size() int

func (*GetInclusionProofRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetInclusionProofRequest) XXX_Unmarshal(b []byte) error

type GetInclusionProofResponse ¶

type GetInclusionProofResponse struct {
	// The proof field may be empty if the requested tree_size was larger
	// than that available at the server (e.g. because there is skew between
	// server instances, and an earlier client request was processed by a
	// more up-to-date instance).  In this case, the signed_log_root
	// field will indicate the tree size that the server is aware of, and
	// the proof field will be empty.
	Proof                *Proof         `protobuf:"bytes,2,opt,name=proof,proto3" json:"proof,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetInclusionProofResponse) Descriptor ¶

func (*GetInclusionProofResponse) Descriptor() ([]byte, []int)

func (*GetInclusionProofResponse) GetProof ¶

func (m *GetInclusionProofResponse) GetProof() *Proof

func (*GetInclusionProofResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetInclusionProofResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetInclusionProofResponse) ProtoMessage ¶

func (*GetInclusionProofResponse) ProtoMessage()

func (*GetInclusionProofResponse) Reset ¶

func (m *GetInclusionProofResponse) Reset()

func (*GetInclusionProofResponse) String ¶

func (m *GetInclusionProofResponse) String() string

func (*GetInclusionProofResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetInclusionProofResponse) XXX_DiscardUnknown()

func (*GetInclusionProofResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetInclusionProofResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetInclusionProofResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetInclusionProofResponse) XXX_Merge(src proto.Message)

func (*GetInclusionProofResponse) XXX_Size ¶ added in v1.2.1

func (m *GetInclusionProofResponse) XXX_Size() int

func (*GetInclusionProofResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetInclusionProofResponse) XXX_Unmarshal(b []byte) error

type GetLastInRangeByRevisionRequest ¶ added in v1.3.0

type GetLastInRangeByRevisionRequest struct {
	MapId    int64  `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	Revision int64  `protobuf:"varint,2,opt,name=revision,proto3" json:"revision,omitempty"`
	Prefix   []byte `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// prefix_bits is the number of bits to include, starting from the left, or
	// most significant bit (MSB).
	PrefixBits           int32    `protobuf:"varint,4,opt,name=prefix_bits,json=prefixBits,proto3" json:"prefix_bits,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

GetLastInRangeByRevisionRequest specifies a range in the map at a revision. The range is defined as the entire subtree below a particular point in the Merkle tree. Another way of saying this is that the range matches all leaves that share a common prefix of `prefix_bits` with `prefix`.

func (*GetLastInRangeByRevisionRequest) Descriptor ¶ added in v1.3.0

func (*GetLastInRangeByRevisionRequest) Descriptor() ([]byte, []int)

func (*GetLastInRangeByRevisionRequest) GetMapId ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) GetMapId() int64

func (*GetLastInRangeByRevisionRequest) GetPrefix ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) GetPrefix() []byte

func (*GetLastInRangeByRevisionRequest) GetPrefixBits ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) GetPrefixBits() int32

func (*GetLastInRangeByRevisionRequest) GetRevision ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) GetRevision() int64

func (*GetLastInRangeByRevisionRequest) ProtoMessage ¶ added in v1.3.0

func (*GetLastInRangeByRevisionRequest) ProtoMessage()

func (*GetLastInRangeByRevisionRequest) Reset ¶ added in v1.3.0

func (*GetLastInRangeByRevisionRequest) String ¶ added in v1.3.0

func (*GetLastInRangeByRevisionRequest) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) XXX_DiscardUnknown()

func (*GetLastInRangeByRevisionRequest) XXX_Marshal ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLastInRangeByRevisionRequest) XXX_Merge ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) XXX_Merge(src proto.Message)

func (*GetLastInRangeByRevisionRequest) XXX_Size ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) XXX_Size() int

func (*GetLastInRangeByRevisionRequest) XXX_Unmarshal ¶ added in v1.3.0

func (m *GetLastInRangeByRevisionRequest) XXX_Unmarshal(b []byte) error

type GetLatestSignedLogRootRequest ¶

type GetLatestSignedLogRootRequest struct {
	LogId    int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	ChargeTo *ChargeTo `protobuf:"bytes,2,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	// If first_tree_size is non-zero, the response will include a consistency
	// proof between first_tree_size and the new tree size (if not smaller).
	FirstTreeSize        int64    `protobuf:"varint,3,opt,name=first_tree_size,json=firstTreeSize,proto3" json:"first_tree_size,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetLatestSignedLogRootRequest) Descriptor ¶

func (*GetLatestSignedLogRootRequest) Descriptor() ([]byte, []int)

func (*GetLatestSignedLogRootRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetLatestSignedLogRootRequest) GetChargeTo() *ChargeTo

func (*GetLatestSignedLogRootRequest) GetFirstTreeSize ¶ added in v1.3.0

func (m *GetLatestSignedLogRootRequest) GetFirstTreeSize() int64

func (*GetLatestSignedLogRootRequest) GetLogId ¶

func (m *GetLatestSignedLogRootRequest) GetLogId() int64

func (*GetLatestSignedLogRootRequest) ProtoMessage ¶

func (*GetLatestSignedLogRootRequest) ProtoMessage()

func (*GetLatestSignedLogRootRequest) Reset ¶

func (m *GetLatestSignedLogRootRequest) Reset()

func (*GetLatestSignedLogRootRequest) String ¶

func (*GetLatestSignedLogRootRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLatestSignedLogRootRequest) XXX_DiscardUnknown()

func (*GetLatestSignedLogRootRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetLatestSignedLogRootRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLatestSignedLogRootRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetLatestSignedLogRootRequest) XXX_Merge(src proto.Message)

func (*GetLatestSignedLogRootRequest) XXX_Size ¶ added in v1.2.1

func (m *GetLatestSignedLogRootRequest) XXX_Size() int

func (*GetLatestSignedLogRootRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLatestSignedLogRootRequest) XXX_Unmarshal(b []byte) error

type GetLatestSignedLogRootResponse ¶

type GetLatestSignedLogRootResponse struct {
	SignedLogRoot *SignedLogRoot `protobuf:"bytes,2,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	// proof is filled in with a consistency proof if first_tree_size in
	// GetLatestSignedLogRootRequest is non-zero (and within the tree size
	// available at the server).
	Proof                *Proof   `protobuf:"bytes,3,opt,name=proof,proto3" json:"proof,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetLatestSignedLogRootResponse) Descriptor ¶

func (*GetLatestSignedLogRootResponse) Descriptor() ([]byte, []int)

func (*GetLatestSignedLogRootResponse) GetProof ¶ added in v1.3.0

func (m *GetLatestSignedLogRootResponse) GetProof() *Proof

func (*GetLatestSignedLogRootResponse) GetSignedLogRoot ¶

func (m *GetLatestSignedLogRootResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetLatestSignedLogRootResponse) ProtoMessage ¶

func (*GetLatestSignedLogRootResponse) ProtoMessage()

func (*GetLatestSignedLogRootResponse) Reset ¶

func (m *GetLatestSignedLogRootResponse) Reset()

func (*GetLatestSignedLogRootResponse) String ¶

func (*GetLatestSignedLogRootResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLatestSignedLogRootResponse) XXX_DiscardUnknown()

func (*GetLatestSignedLogRootResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetLatestSignedLogRootResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLatestSignedLogRootResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetLatestSignedLogRootResponse) XXX_Merge(src proto.Message)

func (*GetLatestSignedLogRootResponse) XXX_Size ¶ added in v1.2.1

func (m *GetLatestSignedLogRootResponse) XXX_Size() int

func (*GetLatestSignedLogRootResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLatestSignedLogRootResponse) XXX_Unmarshal(b []byte) error

type GetLeavesByHashRequest ¶

type GetLeavesByHashRequest struct {
	LogId int64 `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	// The Merkle leaf hash of the leaf to be retrieved.
	LeafHash [][]byte `protobuf:"bytes,2,rep,name=leaf_hash,json=leafHash,proto3" json:"leaf_hash,omitempty"`
	// If order_by_sequence is set then leaves will be returned in order of ascending
	// leaf index.
	OrderBySequence      bool      `protobuf:"varint,3,opt,name=order_by_sequence,json=orderBySequence,proto3" json:"order_by_sequence,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,5,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetLeavesByHashRequest) Descriptor ¶

func (*GetLeavesByHashRequest) Descriptor() ([]byte, []int)

func (*GetLeavesByHashRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetLeavesByHashRequest) GetChargeTo() *ChargeTo

func (*GetLeavesByHashRequest) GetLeafHash ¶

func (m *GetLeavesByHashRequest) GetLeafHash() [][]byte

func (*GetLeavesByHashRequest) GetLogId ¶

func (m *GetLeavesByHashRequest) GetLogId() int64

func (*GetLeavesByHashRequest) GetOrderBySequence ¶

func (m *GetLeavesByHashRequest) GetOrderBySequence() bool

func (*GetLeavesByHashRequest) ProtoMessage ¶

func (*GetLeavesByHashRequest) ProtoMessage()

func (*GetLeavesByHashRequest) Reset ¶

func (m *GetLeavesByHashRequest) Reset()

func (*GetLeavesByHashRequest) String ¶

func (m *GetLeavesByHashRequest) String() string

func (*GetLeavesByHashRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLeavesByHashRequest) XXX_DiscardUnknown()

func (*GetLeavesByHashRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetLeavesByHashRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLeavesByHashRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetLeavesByHashRequest) XXX_Merge(src proto.Message)

func (*GetLeavesByHashRequest) XXX_Size ¶ added in v1.2.1

func (m *GetLeavesByHashRequest) XXX_Size() int

func (*GetLeavesByHashRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLeavesByHashRequest) XXX_Unmarshal(b []byte) error

type GetLeavesByHashResponse ¶

type GetLeavesByHashResponse struct {
	Leaves               []*LogLeaf     `protobuf:"bytes,2,rep,name=leaves,proto3" json:"leaves,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetLeavesByHashResponse) Descriptor ¶

func (*GetLeavesByHashResponse) Descriptor() ([]byte, []int)

func (*GetLeavesByHashResponse) GetLeaves ¶

func (m *GetLeavesByHashResponse) GetLeaves() []*LogLeaf

func (*GetLeavesByHashResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetLeavesByHashResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetLeavesByHashResponse) ProtoMessage ¶

func (*GetLeavesByHashResponse) ProtoMessage()

func (*GetLeavesByHashResponse) Reset ¶

func (m *GetLeavesByHashResponse) Reset()

func (*GetLeavesByHashResponse) String ¶

func (m *GetLeavesByHashResponse) String() string

func (*GetLeavesByHashResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLeavesByHashResponse) XXX_DiscardUnknown()

func (*GetLeavesByHashResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetLeavesByHashResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLeavesByHashResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetLeavesByHashResponse) XXX_Merge(src proto.Message)

func (*GetLeavesByHashResponse) XXX_Size ¶ added in v1.2.1

func (m *GetLeavesByHashResponse) XXX_Size() int

func (*GetLeavesByHashResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLeavesByHashResponse) XXX_Unmarshal(b []byte) error

type GetLeavesByIndexRequest ¶

type GetLeavesByIndexRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	LeafIndex            []int64   `protobuf:"varint,2,rep,packed,name=leaf_index,json=leafIndex,proto3" json:"leaf_index,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,5,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetLeavesByIndexRequest) Descriptor ¶

func (*GetLeavesByIndexRequest) Descriptor() ([]byte, []int)

func (*GetLeavesByIndexRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetLeavesByIndexRequest) GetChargeTo() *ChargeTo

func (*GetLeavesByIndexRequest) GetLeafIndex ¶

func (m *GetLeavesByIndexRequest) GetLeafIndex() []int64

func (*GetLeavesByIndexRequest) GetLogId ¶

func (m *GetLeavesByIndexRequest) GetLogId() int64

func (*GetLeavesByIndexRequest) ProtoMessage ¶

func (*GetLeavesByIndexRequest) ProtoMessage()

func (*GetLeavesByIndexRequest) Reset ¶

func (m *GetLeavesByIndexRequest) Reset()

func (*GetLeavesByIndexRequest) String ¶

func (m *GetLeavesByIndexRequest) String() string

func (*GetLeavesByIndexRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLeavesByIndexRequest) XXX_DiscardUnknown()

func (*GetLeavesByIndexRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetLeavesByIndexRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLeavesByIndexRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetLeavesByIndexRequest) XXX_Merge(src proto.Message)

func (*GetLeavesByIndexRequest) XXX_Size ¶ added in v1.2.1

func (m *GetLeavesByIndexRequest) XXX_Size() int

func (*GetLeavesByIndexRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLeavesByIndexRequest) XXX_Unmarshal(b []byte) error

type GetLeavesByIndexResponse ¶

type GetLeavesByIndexResponse struct {
	// TODO(gbelvin): Response syntax does not allow for some requested leaves to be available, and some not (but using QueuedLogLeaf might)
	Leaves               []*LogLeaf     `protobuf:"bytes,2,rep,name=leaves,proto3" json:"leaves,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,3,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetLeavesByIndexResponse) Descriptor ¶

func (*GetLeavesByIndexResponse) Descriptor() ([]byte, []int)

func (*GetLeavesByIndexResponse) GetLeaves ¶

func (m *GetLeavesByIndexResponse) GetLeaves() []*LogLeaf

func (*GetLeavesByIndexResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetLeavesByIndexResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetLeavesByIndexResponse) ProtoMessage ¶

func (*GetLeavesByIndexResponse) ProtoMessage()

func (*GetLeavesByIndexResponse) Reset ¶

func (m *GetLeavesByIndexResponse) Reset()

func (*GetLeavesByIndexResponse) String ¶

func (m *GetLeavesByIndexResponse) String() string

func (*GetLeavesByIndexResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLeavesByIndexResponse) XXX_DiscardUnknown()

func (*GetLeavesByIndexResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetLeavesByIndexResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLeavesByIndexResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetLeavesByIndexResponse) XXX_Merge(src proto.Message)

func (*GetLeavesByIndexResponse) XXX_Size ¶ added in v1.2.1

func (m *GetLeavesByIndexResponse) XXX_Size() int

func (*GetLeavesByIndexResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLeavesByIndexResponse) XXX_Unmarshal(b []byte) error

type GetLeavesByRangeRequest ¶ added in v1.0.6

type GetLeavesByRangeRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	StartIndex           int64     `protobuf:"varint,2,opt,name=start_index,json=startIndex,proto3" json:"start_index,omitempty"`
	Count                int64     `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,4,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*GetLeavesByRangeRequest) Descriptor ¶ added in v1.0.6

func (*GetLeavesByRangeRequest) Descriptor() ([]byte, []int)

func (*GetLeavesByRangeRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetLeavesByRangeRequest) GetChargeTo() *ChargeTo

func (*GetLeavesByRangeRequest) GetCount ¶ added in v1.0.6

func (m *GetLeavesByRangeRequest) GetCount() int64

func (*GetLeavesByRangeRequest) GetLogId ¶ added in v1.0.6

func (m *GetLeavesByRangeRequest) GetLogId() int64

func (*GetLeavesByRangeRequest) GetStartIndex ¶ added in v1.0.6

func (m *GetLeavesByRangeRequest) GetStartIndex() int64

func (*GetLeavesByRangeRequest) ProtoMessage ¶ added in v1.0.6

func (*GetLeavesByRangeRequest) ProtoMessage()

func (*GetLeavesByRangeRequest) Reset ¶ added in v1.0.6

func (m *GetLeavesByRangeRequest) Reset()

func (*GetLeavesByRangeRequest) String ¶ added in v1.0.6

func (m *GetLeavesByRangeRequest) String() string

func (*GetLeavesByRangeRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLeavesByRangeRequest) XXX_DiscardUnknown()

func (*GetLeavesByRangeRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetLeavesByRangeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLeavesByRangeRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetLeavesByRangeRequest) XXX_Merge(src proto.Message)

func (*GetLeavesByRangeRequest) XXX_Size ¶ added in v1.2.1

func (m *GetLeavesByRangeRequest) XXX_Size() int

func (*GetLeavesByRangeRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLeavesByRangeRequest) XXX_Unmarshal(b []byte) error

type GetLeavesByRangeResponse ¶ added in v1.0.6

type GetLeavesByRangeResponse struct {
	// Returned log leaves starting from the `start_index` of the request, in
	// order. There may be fewer than `request.count` leaves returned, if the
	// requested range extended beyond the size of the tree or if the server opted
	// to return fewer leaves than requested.
	Leaves               []*LogLeaf     `protobuf:"bytes,1,rep,name=leaves,proto3" json:"leaves,omitempty"`
	SignedLogRoot        *SignedLogRoot `protobuf:"bytes,2,opt,name=signed_log_root,json=signedLogRoot,proto3" json:"signed_log_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetLeavesByRangeResponse) Descriptor ¶ added in v1.0.6

func (*GetLeavesByRangeResponse) Descriptor() ([]byte, []int)

func (*GetLeavesByRangeResponse) GetLeaves ¶ added in v1.0.6

func (m *GetLeavesByRangeResponse) GetLeaves() []*LogLeaf

func (*GetLeavesByRangeResponse) GetSignedLogRoot ¶ added in v1.1.0

func (m *GetLeavesByRangeResponse) GetSignedLogRoot() *SignedLogRoot

func (*GetLeavesByRangeResponse) ProtoMessage ¶ added in v1.0.6

func (*GetLeavesByRangeResponse) ProtoMessage()

func (*GetLeavesByRangeResponse) Reset ¶ added in v1.0.6

func (m *GetLeavesByRangeResponse) Reset()

func (*GetLeavesByRangeResponse) String ¶ added in v1.0.6

func (m *GetLeavesByRangeResponse) String() string

func (*GetLeavesByRangeResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetLeavesByRangeResponse) XXX_DiscardUnknown()

func (*GetLeavesByRangeResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetLeavesByRangeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetLeavesByRangeResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetLeavesByRangeResponse) XXX_Merge(src proto.Message)

func (*GetLeavesByRangeResponse) XXX_Size ¶ added in v1.2.1

func (m *GetLeavesByRangeResponse) XXX_Size() int

func (*GetLeavesByRangeResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetLeavesByRangeResponse) XXX_Unmarshal(b []byte) error

type GetMapLeafByRevisionRequest ¶ added in v1.3.0

type GetMapLeafByRevisionRequest struct {
	MapId                int64    `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	Index                []byte   `protobuf:"bytes,2,opt,name=index,proto3" json:"index,omitempty"`
	Revision             int64    `protobuf:"varint,3,opt,name=revision,proto3" json:"revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetMapLeafByRevisionRequest) Descriptor ¶ added in v1.3.0

func (*GetMapLeafByRevisionRequest) Descriptor() ([]byte, []int)

func (*GetMapLeafByRevisionRequest) GetIndex ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) GetIndex() []byte

func (*GetMapLeafByRevisionRequest) GetMapId ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) GetMapId() int64

func (*GetMapLeafByRevisionRequest) GetRevision ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) GetRevision() int64

func (*GetMapLeafByRevisionRequest) ProtoMessage ¶ added in v1.3.0

func (*GetMapLeafByRevisionRequest) ProtoMessage()

func (*GetMapLeafByRevisionRequest) Reset ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) Reset()

func (*GetMapLeafByRevisionRequest) String ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) String() string

func (*GetMapLeafByRevisionRequest) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) XXX_DiscardUnknown()

func (*GetMapLeafByRevisionRequest) XXX_Marshal ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetMapLeafByRevisionRequest) XXX_Merge ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) XXX_Merge(src proto.Message)

func (*GetMapLeafByRevisionRequest) XXX_Size ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) XXX_Size() int

func (*GetMapLeafByRevisionRequest) XXX_Unmarshal ¶ added in v1.3.0

func (m *GetMapLeafByRevisionRequest) XXX_Unmarshal(b []byte) error

type GetMapLeafRequest ¶ added in v1.3.0

type GetMapLeafRequest struct {
	MapId                int64    `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	Index                []byte   `protobuf:"bytes,2,opt,name=index,proto3" json:"index,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetMapLeafRequest) Descriptor ¶ added in v1.3.0

func (*GetMapLeafRequest) Descriptor() ([]byte, []int)

func (*GetMapLeafRequest) GetIndex ¶ added in v1.3.0

func (m *GetMapLeafRequest) GetIndex() []byte

func (*GetMapLeafRequest) GetMapId ¶ added in v1.3.0

func (m *GetMapLeafRequest) GetMapId() int64

func (*GetMapLeafRequest) ProtoMessage ¶ added in v1.3.0

func (*GetMapLeafRequest) ProtoMessage()

func (*GetMapLeafRequest) Reset ¶ added in v1.3.0

func (m *GetMapLeafRequest) Reset()

func (*GetMapLeafRequest) String ¶ added in v1.3.0

func (m *GetMapLeafRequest) String() string

func (*GetMapLeafRequest) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *GetMapLeafRequest) XXX_DiscardUnknown()

func (*GetMapLeafRequest) XXX_Marshal ¶ added in v1.3.0

func (m *GetMapLeafRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetMapLeafRequest) XXX_Merge ¶ added in v1.3.0

func (m *GetMapLeafRequest) XXX_Merge(src proto.Message)

func (*GetMapLeafRequest) XXX_Size ¶ added in v1.3.0

func (m *GetMapLeafRequest) XXX_Size() int

func (*GetMapLeafRequest) XXX_Unmarshal ¶ added in v1.3.0

func (m *GetMapLeafRequest) XXX_Unmarshal(b []byte) error

type GetMapLeafResponse ¶ added in v1.3.0

type GetMapLeafResponse struct {
	MapLeafInclusion     *MapLeafInclusion `protobuf:"bytes,1,opt,name=map_leaf_inclusion,json=mapLeafInclusion,proto3" json:"map_leaf_inclusion,omitempty"`
	MapRoot              *SignedMapRoot    `protobuf:"bytes,2,opt,name=map_root,json=mapRoot,proto3" json:"map_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (*GetMapLeafResponse) Descriptor ¶ added in v1.3.0

func (*GetMapLeafResponse) Descriptor() ([]byte, []int)

func (*GetMapLeafResponse) GetMapLeafInclusion ¶ added in v1.3.0

func (m *GetMapLeafResponse) GetMapLeafInclusion() *MapLeafInclusion

func (*GetMapLeafResponse) GetMapRoot ¶ added in v1.3.0

func (m *GetMapLeafResponse) GetMapRoot() *SignedMapRoot

func (*GetMapLeafResponse) ProtoMessage ¶ added in v1.3.0

func (*GetMapLeafResponse) ProtoMessage()

func (*GetMapLeafResponse) Reset ¶ added in v1.3.0

func (m *GetMapLeafResponse) Reset()

func (*GetMapLeafResponse) String ¶ added in v1.3.0

func (m *GetMapLeafResponse) String() string

func (*GetMapLeafResponse) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *GetMapLeafResponse) XXX_DiscardUnknown()

func (*GetMapLeafResponse) XXX_Marshal ¶ added in v1.3.0

func (m *GetMapLeafResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetMapLeafResponse) XXX_Merge ¶ added in v1.3.0

func (m *GetMapLeafResponse) XXX_Merge(src proto.Message)

func (*GetMapLeafResponse) XXX_Size ¶ added in v1.3.0

func (m *GetMapLeafResponse) XXX_Size() int

func (*GetMapLeafResponse) XXX_Unmarshal ¶ added in v1.3.0

func (m *GetMapLeafResponse) XXX_Unmarshal(b []byte) error

type GetMapLeavesByRevisionRequest ¶ added in v1.0.5

type GetMapLeavesByRevisionRequest struct {
	MapId int64 `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	// index(es) to query.  It is an error to request the same index more than once.
	Index [][]byte `protobuf:"bytes,2,rep,name=index,proto3" json:"index,omitempty"`
	// revision >= 0.
	Revision             int64    `protobuf:"varint,3,opt,name=revision,proto3" json:"revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

This message replaces the current implementation of GetMapLeavesRequest with the difference that revision must be >=0.

func (*GetMapLeavesByRevisionRequest) Descriptor ¶ added in v1.0.5

func (*GetMapLeavesByRevisionRequest) Descriptor() ([]byte, []int)

func (*GetMapLeavesByRevisionRequest) GetIndex ¶ added in v1.0.5

func (m *GetMapLeavesByRevisionRequest) GetIndex() [][]byte

func (*GetMapLeavesByRevisionRequest) GetMapId ¶ added in v1.0.5

func (m *GetMapLeavesByRevisionRequest) GetMapId() int64

func (*GetMapLeavesByRevisionRequest) GetRevision ¶ added in v1.0.5

func (m *GetMapLeavesByRevisionRequest) GetRevision() int64

func (*GetMapLeavesByRevisionRequest) ProtoMessage ¶ added in v1.0.5

func (*GetMapLeavesByRevisionRequest) ProtoMessage()

func (*GetMapLeavesByRevisionRequest) Reset ¶ added in v1.0.5

func (m *GetMapLeavesByRevisionRequest) Reset()

func (*GetMapLeavesByRevisionRequest) String ¶ added in v1.0.5

func (*GetMapLeavesByRevisionRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetMapLeavesByRevisionRequest) XXX_DiscardUnknown()

func (*GetMapLeavesByRevisionRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetMapLeavesByRevisionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetMapLeavesByRevisionRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetMapLeavesByRevisionRequest) XXX_Merge(src proto.Message)

func (*GetMapLeavesByRevisionRequest) XXX_Size ¶ added in v1.2.1

func (m *GetMapLeavesByRevisionRequest) XXX_Size() int

func (*GetMapLeavesByRevisionRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetMapLeavesByRevisionRequest) XXX_Unmarshal(b []byte) error

type GetMapLeavesRequest ¶

type GetMapLeavesRequest struct {
	MapId                int64    `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	Index                [][]byte `protobuf:"bytes,2,rep,name=index,proto3" json:"index,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetMapLeavesRequest) Descriptor ¶

func (*GetMapLeavesRequest) Descriptor() ([]byte, []int)

func (*GetMapLeavesRequest) GetIndex ¶

func (m *GetMapLeavesRequest) GetIndex() [][]byte

func (*GetMapLeavesRequest) GetMapId ¶

func (m *GetMapLeavesRequest) GetMapId() int64

func (*GetMapLeavesRequest) ProtoMessage ¶

func (*GetMapLeavesRequest) ProtoMessage()

func (*GetMapLeavesRequest) Reset ¶

func (m *GetMapLeavesRequest) Reset()

func (*GetMapLeavesRequest) String ¶

func (m *GetMapLeavesRequest) String() string

func (*GetMapLeavesRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetMapLeavesRequest) XXX_DiscardUnknown()

func (*GetMapLeavesRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetMapLeavesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetMapLeavesRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetMapLeavesRequest) XXX_Merge(src proto.Message)

func (*GetMapLeavesRequest) XXX_Size ¶ added in v1.2.1

func (m *GetMapLeavesRequest) XXX_Size() int

func (*GetMapLeavesRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetMapLeavesRequest) XXX_Unmarshal(b []byte) error

type GetMapLeavesResponse ¶

type GetMapLeavesResponse struct {
	MapLeafInclusion     []*MapLeafInclusion `protobuf:"bytes,2,rep,name=map_leaf_inclusion,json=mapLeafInclusion,proto3" json:"map_leaf_inclusion,omitempty"`
	MapRoot              *SignedMapRoot      `protobuf:"bytes,3,opt,name=map_root,json=mapRoot,proto3" json:"map_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (*GetMapLeavesResponse) Descriptor ¶

func (*GetMapLeavesResponse) Descriptor() ([]byte, []int)

func (*GetMapLeavesResponse) GetMapLeafInclusion ¶

func (m *GetMapLeavesResponse) GetMapLeafInclusion() []*MapLeafInclusion

func (*GetMapLeavesResponse) GetMapRoot ¶

func (m *GetMapLeavesResponse) GetMapRoot() *SignedMapRoot

func (*GetMapLeavesResponse) ProtoMessage ¶

func (*GetMapLeavesResponse) ProtoMessage()

func (*GetMapLeavesResponse) Reset ¶

func (m *GetMapLeavesResponse) Reset()

func (*GetMapLeavesResponse) String ¶

func (m *GetMapLeavesResponse) String() string

func (*GetMapLeavesResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetMapLeavesResponse) XXX_DiscardUnknown()

func (*GetMapLeavesResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetMapLeavesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetMapLeavesResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetMapLeavesResponse) XXX_Merge(src proto.Message)

func (*GetMapLeavesResponse) XXX_Size ¶ added in v1.2.1

func (m *GetMapLeavesResponse) XXX_Size() int

func (*GetMapLeavesResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetMapLeavesResponse) XXX_Unmarshal(b []byte) error

type GetSequencedLeafCountRequest ¶

type GetSequencedLeafCountRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,2,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

DO NOT USE - FOR DEBUGGING/TEST ONLY

(Use GetLatestSignedLogRoot then de-serialize the Log Root and use use the tree size field within.)

func (*GetSequencedLeafCountRequest) Descriptor ¶

func (*GetSequencedLeafCountRequest) Descriptor() ([]byte, []int)

func (*GetSequencedLeafCountRequest) GetChargeTo ¶ added in v1.2.0

func (m *GetSequencedLeafCountRequest) GetChargeTo() *ChargeTo

func (*GetSequencedLeafCountRequest) GetLogId ¶

func (m *GetSequencedLeafCountRequest) GetLogId() int64

func (*GetSequencedLeafCountRequest) ProtoMessage ¶

func (*GetSequencedLeafCountRequest) ProtoMessage()

func (*GetSequencedLeafCountRequest) Reset ¶

func (m *GetSequencedLeafCountRequest) Reset()

func (*GetSequencedLeafCountRequest) String ¶

func (*GetSequencedLeafCountRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetSequencedLeafCountRequest) XXX_DiscardUnknown()

func (*GetSequencedLeafCountRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetSequencedLeafCountRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetSequencedLeafCountRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetSequencedLeafCountRequest) XXX_Merge(src proto.Message)

func (*GetSequencedLeafCountRequest) XXX_Size ¶ added in v1.2.1

func (m *GetSequencedLeafCountRequest) XXX_Size() int

func (*GetSequencedLeafCountRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetSequencedLeafCountRequest) XXX_Unmarshal(b []byte) error

type GetSequencedLeafCountResponse ¶

type GetSequencedLeafCountResponse struct {
	LeafCount            int64    `protobuf:"varint,2,opt,name=leaf_count,json=leafCount,proto3" json:"leaf_count,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetSequencedLeafCountResponse) Descriptor ¶

func (*GetSequencedLeafCountResponse) Descriptor() ([]byte, []int)

func (*GetSequencedLeafCountResponse) GetLeafCount ¶

func (m *GetSequencedLeafCountResponse) GetLeafCount() int64

func (*GetSequencedLeafCountResponse) ProtoMessage ¶

func (*GetSequencedLeafCountResponse) ProtoMessage()

func (*GetSequencedLeafCountResponse) Reset ¶

func (m *GetSequencedLeafCountResponse) Reset()

func (*GetSequencedLeafCountResponse) String ¶

func (*GetSequencedLeafCountResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetSequencedLeafCountResponse) XXX_DiscardUnknown()

func (*GetSequencedLeafCountResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetSequencedLeafCountResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetSequencedLeafCountResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetSequencedLeafCountResponse) XXX_Merge(src proto.Message)

func (*GetSequencedLeafCountResponse) XXX_Size ¶ added in v1.2.1

func (m *GetSequencedLeafCountResponse) XXX_Size() int

func (*GetSequencedLeafCountResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetSequencedLeafCountResponse) XXX_Unmarshal(b []byte) error

type GetSignedMapRootByRevisionRequest ¶

type GetSignedMapRootByRevisionRequest struct {
	MapId                int64    `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	Revision             int64    `protobuf:"varint,2,opt,name=revision,proto3" json:"revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetSignedMapRootByRevisionRequest) Descriptor ¶

func (*GetSignedMapRootByRevisionRequest) Descriptor() ([]byte, []int)

func (*GetSignedMapRootByRevisionRequest) GetMapId ¶

func (*GetSignedMapRootByRevisionRequest) GetRevision ¶

func (m *GetSignedMapRootByRevisionRequest) GetRevision() int64

func (*GetSignedMapRootByRevisionRequest) ProtoMessage ¶

func (*GetSignedMapRootByRevisionRequest) ProtoMessage()

func (*GetSignedMapRootByRevisionRequest) Reset ¶

func (*GetSignedMapRootByRevisionRequest) String ¶

func (*GetSignedMapRootByRevisionRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetSignedMapRootByRevisionRequest) XXX_DiscardUnknown()

func (*GetSignedMapRootByRevisionRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetSignedMapRootByRevisionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetSignedMapRootByRevisionRequest) XXX_Merge ¶ added in v1.2.1

func (*GetSignedMapRootByRevisionRequest) XXX_Size ¶ added in v1.2.1

func (m *GetSignedMapRootByRevisionRequest) XXX_Size() int

func (*GetSignedMapRootByRevisionRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetSignedMapRootByRevisionRequest) XXX_Unmarshal(b []byte) error

type GetSignedMapRootRequest ¶

type GetSignedMapRootRequest struct {
	MapId                int64    `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*GetSignedMapRootRequest) Descriptor ¶

func (*GetSignedMapRootRequest) Descriptor() ([]byte, []int)

func (*GetSignedMapRootRequest) GetMapId ¶

func (m *GetSignedMapRootRequest) GetMapId() int64

func (*GetSignedMapRootRequest) ProtoMessage ¶

func (*GetSignedMapRootRequest) ProtoMessage()

func (*GetSignedMapRootRequest) Reset ¶

func (m *GetSignedMapRootRequest) Reset()

func (*GetSignedMapRootRequest) String ¶

func (m *GetSignedMapRootRequest) String() string

func (*GetSignedMapRootRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetSignedMapRootRequest) XXX_DiscardUnknown()

func (*GetSignedMapRootRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetSignedMapRootRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetSignedMapRootRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetSignedMapRootRequest) XXX_Merge(src proto.Message)

func (*GetSignedMapRootRequest) XXX_Size ¶ added in v1.2.1

func (m *GetSignedMapRootRequest) XXX_Size() int

func (*GetSignedMapRootRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetSignedMapRootRequest) XXX_Unmarshal(b []byte) error

type GetSignedMapRootResponse ¶

type GetSignedMapRootResponse struct {
	MapRoot              *SignedMapRoot `protobuf:"bytes,2,opt,name=map_root,json=mapRoot,proto3" json:"map_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*GetSignedMapRootResponse) Descriptor ¶

func (*GetSignedMapRootResponse) Descriptor() ([]byte, []int)

func (*GetSignedMapRootResponse) GetMapRoot ¶

func (m *GetSignedMapRootResponse) GetMapRoot() *SignedMapRoot

func (*GetSignedMapRootResponse) ProtoMessage ¶

func (*GetSignedMapRootResponse) ProtoMessage()

func (*GetSignedMapRootResponse) Reset ¶

func (m *GetSignedMapRootResponse) Reset()

func (*GetSignedMapRootResponse) String ¶

func (m *GetSignedMapRootResponse) String() string

func (*GetSignedMapRootResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetSignedMapRootResponse) XXX_DiscardUnknown()

func (*GetSignedMapRootResponse) XXX_Marshal ¶ added in v1.2.1

func (m *GetSignedMapRootResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetSignedMapRootResponse) XXX_Merge ¶ added in v1.2.1

func (m *GetSignedMapRootResponse) XXX_Merge(src proto.Message)

func (*GetSignedMapRootResponse) XXX_Size ¶ added in v1.2.1

func (m *GetSignedMapRootResponse) XXX_Size() int

func (*GetSignedMapRootResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetSignedMapRootResponse) XXX_Unmarshal(b []byte) error

type GetTreeRequest ¶

type GetTreeRequest struct {
	// ID of the tree to retrieve.
	TreeId               int64    `protobuf:"varint,1,opt,name=tree_id,json=treeId,proto3" json:"tree_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

GetTree request.

func (*GetTreeRequest) Descriptor ¶

func (*GetTreeRequest) Descriptor() ([]byte, []int)

func (*GetTreeRequest) GetTreeId ¶

func (m *GetTreeRequest) GetTreeId() int64

func (*GetTreeRequest) ProtoMessage ¶

func (*GetTreeRequest) ProtoMessage()

func (*GetTreeRequest) Reset ¶

func (m *GetTreeRequest) Reset()

func (*GetTreeRequest) String ¶

func (m *GetTreeRequest) String() string

func (*GetTreeRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *GetTreeRequest) XXX_DiscardUnknown()

func (*GetTreeRequest) XXX_Marshal ¶ added in v1.2.1

func (m *GetTreeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GetTreeRequest) XXX_Merge ¶ added in v1.2.1

func (m *GetTreeRequest) XXX_Merge(src proto.Message)

func (*GetTreeRequest) XXX_Size ¶ added in v1.2.1

func (m *GetTreeRequest) XXX_Size() int

func (*GetTreeRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *GetTreeRequest) XXX_Unmarshal(b []byte) error

type HashStrategy ¶

type HashStrategy int32

Defines the way empty / node / leaf hashes are constructed incorporating preimage protection, which can be application specific.

const (
	// Hash strategy cannot be determined. Included to enable detection of
	// mismatched proto versions being used. Represents an invalid value.
	HashStrategy_UNKNOWN_HASH_STRATEGY HashStrategy = 0
	// Certificate Transparency strategy: leaf hash prefix = 0x00, node prefix =
	// 0x01, empty hash is digest([]byte{}), as defined in the specification.
	HashStrategy_RFC6962_SHA256 HashStrategy = 1
	// Sparse Merkle Tree strategy:  leaf hash prefix = 0x00, node prefix = 0x01,
	// empty branch is recursively computed from empty leaf nodes.
	// NOT secure in a multi tree environment. For testing only.
	HashStrategy_TEST_MAP_HASHER HashStrategy = 2
	// Append-only log strategy where leaf nodes are defined as the ObjectHash.
	// All other properties are equal to RFC6962_SHA256.
	HashStrategy_OBJECT_RFC6962_SHA256 HashStrategy = 3
	// The CONIKS sparse tree hasher with SHA512_256 as the hash algorithm.
	HashStrategy_CONIKS_SHA512_256 HashStrategy = 4
	// The CONIKS sparse tree hasher with SHA256 as the hash algorithm.
	HashStrategy_CONIKS_SHA256 HashStrategy = 5
)

func (HashStrategy) EnumDescriptor ¶

func (HashStrategy) EnumDescriptor() ([]byte, []int)

func (HashStrategy) String ¶

func (x HashStrategy) String() string

type InitLogRequest ¶ added in v1.0.7

type InitLogRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,2,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*InitLogRequest) Descriptor ¶ added in v1.0.7

func (*InitLogRequest) Descriptor() ([]byte, []int)

func (*InitLogRequest) GetChargeTo ¶ added in v1.2.0

func (m *InitLogRequest) GetChargeTo() *ChargeTo

func (*InitLogRequest) GetLogId ¶ added in v1.0.7

func (m *InitLogRequest) GetLogId() int64

func (*InitLogRequest) ProtoMessage ¶ added in v1.0.7

func (*InitLogRequest) ProtoMessage()

func (*InitLogRequest) Reset ¶ added in v1.0.7

func (m *InitLogRequest) Reset()

func (*InitLogRequest) String ¶ added in v1.0.7

func (m *InitLogRequest) String() string

func (*InitLogRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *InitLogRequest) XXX_DiscardUnknown()

func (*InitLogRequest) XXX_Marshal ¶ added in v1.2.1

func (m *InitLogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*InitLogRequest) XXX_Merge ¶ added in v1.2.1

func (m *InitLogRequest) XXX_Merge(src proto.Message)

func (*InitLogRequest) XXX_Size ¶ added in v1.2.1

func (m *InitLogRequest) XXX_Size() int

func (*InitLogRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *InitLogRequest) XXX_Unmarshal(b []byte) error

type InitLogResponse ¶ added in v1.0.7

type InitLogResponse struct {
	Created              *SignedLogRoot `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*InitLogResponse) Descriptor ¶ added in v1.0.7

func (*InitLogResponse) Descriptor() ([]byte, []int)

func (*InitLogResponse) GetCreated ¶ added in v1.0.7

func (m *InitLogResponse) GetCreated() *SignedLogRoot

func (*InitLogResponse) ProtoMessage ¶ added in v1.0.7

func (*InitLogResponse) ProtoMessage()

func (*InitLogResponse) Reset ¶ added in v1.0.7

func (m *InitLogResponse) Reset()

func (*InitLogResponse) String ¶ added in v1.0.7

func (m *InitLogResponse) String() string

func (*InitLogResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *InitLogResponse) XXX_DiscardUnknown()

func (*InitLogResponse) XXX_Marshal ¶ added in v1.2.1

func (m *InitLogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*InitLogResponse) XXX_Merge ¶ added in v1.2.1

func (m *InitLogResponse) XXX_Merge(src proto.Message)

func (*InitLogResponse) XXX_Size ¶ added in v1.2.1

func (m *InitLogResponse) XXX_Size() int

func (*InitLogResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *InitLogResponse) XXX_Unmarshal(b []byte) error

type InitMapRequest ¶ added in v1.0.7

type InitMapRequest struct {
	MapId                int64    `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*InitMapRequest) Descriptor ¶ added in v1.0.7

func (*InitMapRequest) Descriptor() ([]byte, []int)

func (*InitMapRequest) GetMapId ¶ added in v1.0.7

func (m *InitMapRequest) GetMapId() int64

func (*InitMapRequest) ProtoMessage ¶ added in v1.0.7

func (*InitMapRequest) ProtoMessage()

func (*InitMapRequest) Reset ¶ added in v1.0.7

func (m *InitMapRequest) Reset()

func (*InitMapRequest) String ¶ added in v1.0.7

func (m *InitMapRequest) String() string

func (*InitMapRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *InitMapRequest) XXX_DiscardUnknown()

func (*InitMapRequest) XXX_Marshal ¶ added in v1.2.1

func (m *InitMapRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*InitMapRequest) XXX_Merge ¶ added in v1.2.1

func (m *InitMapRequest) XXX_Merge(src proto.Message)

func (*InitMapRequest) XXX_Size ¶ added in v1.2.1

func (m *InitMapRequest) XXX_Size() int

func (*InitMapRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *InitMapRequest) XXX_Unmarshal(b []byte) error

type InitMapResponse ¶ added in v1.0.7

type InitMapResponse struct {
	Created              *SignedMapRoot `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*InitMapResponse) Descriptor ¶ added in v1.0.7

func (*InitMapResponse) Descriptor() ([]byte, []int)

func (*InitMapResponse) GetCreated ¶ added in v1.0.7

func (m *InitMapResponse) GetCreated() *SignedMapRoot

func (*InitMapResponse) ProtoMessage ¶ added in v1.0.7

func (*InitMapResponse) ProtoMessage()

func (*InitMapResponse) Reset ¶ added in v1.0.7

func (m *InitMapResponse) Reset()

func (*InitMapResponse) String ¶ added in v1.0.7

func (m *InitMapResponse) String() string

func (*InitMapResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *InitMapResponse) XXX_DiscardUnknown()

func (*InitMapResponse) XXX_Marshal ¶ added in v1.2.1

func (m *InitMapResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*InitMapResponse) XXX_Merge ¶ added in v1.2.1

func (m *InitMapResponse) XXX_Merge(src proto.Message)

func (*InitMapResponse) XXX_Size ¶ added in v1.2.1

func (m *InitMapResponse) XXX_Size() int

func (*InitMapResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *InitMapResponse) XXX_Unmarshal(b []byte) error

type ListTreesRequest ¶

type ListTreesRequest struct {
	// If true, deleted trees are included in the response.
	ShowDeleted          bool     `protobuf:"varint,1,opt,name=show_deleted,json=showDeleted,proto3" json:"show_deleted,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ListTrees request. No filters or pagination options are provided.

func (*ListTreesRequest) Descriptor ¶

func (*ListTreesRequest) Descriptor() ([]byte, []int)

func (*ListTreesRequest) GetShowDeleted ¶ added in v1.0.2

func (m *ListTreesRequest) GetShowDeleted() bool

func (*ListTreesRequest) ProtoMessage ¶

func (*ListTreesRequest) ProtoMessage()

func (*ListTreesRequest) Reset ¶

func (m *ListTreesRequest) Reset()

func (*ListTreesRequest) String ¶

func (m *ListTreesRequest) String() string

func (*ListTreesRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *ListTreesRequest) XXX_DiscardUnknown()

func (*ListTreesRequest) XXX_Marshal ¶ added in v1.2.1

func (m *ListTreesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListTreesRequest) XXX_Merge ¶ added in v1.2.1

func (m *ListTreesRequest) XXX_Merge(src proto.Message)

func (*ListTreesRequest) XXX_Size ¶ added in v1.2.1

func (m *ListTreesRequest) XXX_Size() int

func (*ListTreesRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *ListTreesRequest) XXX_Unmarshal(b []byte) error

type ListTreesResponse ¶

type ListTreesResponse struct {
	// Trees matching the list request filters.
	Tree                 []*Tree  `protobuf:"bytes,1,rep,name=tree,proto3" json:"tree,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ListTrees response. No pagination is provided, all trees the requester has access to are returned.

func (*ListTreesResponse) Descriptor ¶

func (*ListTreesResponse) Descriptor() ([]byte, []int)

func (*ListTreesResponse) GetTree ¶

func (m *ListTreesResponse) GetTree() []*Tree

func (*ListTreesResponse) ProtoMessage ¶

func (*ListTreesResponse) ProtoMessage()

func (*ListTreesResponse) Reset ¶

func (m *ListTreesResponse) Reset()

func (*ListTreesResponse) String ¶

func (m *ListTreesResponse) String() string

func (*ListTreesResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *ListTreesResponse) XXX_DiscardUnknown()

func (*ListTreesResponse) XXX_Marshal ¶ added in v1.2.1

func (m *ListTreesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ListTreesResponse) XXX_Merge ¶ added in v1.2.1

func (m *ListTreesResponse) XXX_Merge(src proto.Message)

func (*ListTreesResponse) XXX_Size ¶ added in v1.2.1

func (m *ListTreesResponse) XXX_Size() int

func (*ListTreesResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *ListTreesResponse) XXX_Unmarshal(b []byte) error

type LogLeaf ¶

type LogLeaf struct {
	// merkle_leaf_hash holds the Merkle leaf hash over leaf_value.  This is
	// calculated by the Trillian server when leaves are added to the tree, using
	// the defined hashing algorithm and strategy for the tree; as such, the client
	// does not need to set it on leaf submissions.
	MerkleLeafHash []byte `protobuf:"bytes,1,opt,name=merkle_leaf_hash,json=merkleLeafHash,proto3" json:"merkle_leaf_hash,omitempty"`
	// leaf_value holds the data that forms the value of the Merkle tree leaf.
	// The client should set this field on all leaf submissions, and is
	// responsible for ensuring its validity (the Trillian server treats it as an
	// opaque blob).
	LeafValue []byte `protobuf:"bytes,2,opt,name=leaf_value,json=leafValue,proto3" json:"leaf_value,omitempty"`
	// extra_data holds additional data associated with the Merkle tree leaf.
	// The client may set this data on leaf submissions, and the Trillian server
	// will return it on subsequent read operations. However, the contents of
	// this field are not covered by and do not affect the Merkle tree hash
	// calculations.
	ExtraData []byte `protobuf:"bytes,3,opt,name=extra_data,json=extraData,proto3" json:"extra_data,omitempty"`
	// leaf_index indicates the index of this leaf in the Merkle tree.
	// This field is returned on all read operations, but should only be
	// set for leaf submissions in PREORDERED_LOG mode (for a normal log
	// the leaf index is assigned by Trillian when the submitted leaf is
	// integrated into the Merkle tree).
	LeafIndex int64 `protobuf:"varint,4,opt,name=leaf_index,json=leafIndex,proto3" json:"leaf_index,omitempty"`
	// leaf_identity_hash provides a hash value that indicates the client's
	// concept of which leaf entries should be considered identical.
	//
	// This mechanism allows the client personality to indicate that two leaves
	// should be considered "duplicates" even though their `leaf_value`s differ.
	//
	// If this is not set on leaf submissions, the Trillian server will take its
	// value to be the same as merkle_leaf_hash (and thus only leaves with
	// identical leaf_value contents will be considered identical).
	//
	// For example, in Certificate Transparency each certificate submission is
	// associated with a submission timestamp, but subsequent submissions of the
	// same certificate should be considered identical.  This is achieved
	// by setting the leaf identity hash to a hash over (just) the certificate,
	// whereas the Merkle leaf hash encompasses both the certificate and its
	// submission time -- allowing duplicate certificates to be detected.
	//
	//
	// Continuing the CT example, for a CT mirror personality (which must allow
	// dupes since the source log could contain them), the part of the
	// personality which fetches and submits the entries might set
	// `leaf_identity_hash` to `H(leaf_index||cert)`.
	//
	// TODO(pavelkalinnikov): Consider instead using `H(cert)` and allowing
	// identity hash dupes in `PREORDERED_LOG` mode, for it can later be
	// upgraded to `LOG` which will need to correctly detect duplicates with
	// older entries when new ones get queued.
	LeafIdentityHash []byte `protobuf:"bytes,5,opt,name=leaf_identity_hash,json=leafIdentityHash,proto3" json:"leaf_identity_hash,omitempty"`
	// queue_timestamp holds the time at which this leaf was queued for
	// inclusion in the Log, or zero if the entry was submitted without
	// queuing. Clients should not set this field on submissions.
	QueueTimestamp *timestamp.Timestamp `protobuf:"bytes,6,opt,name=queue_timestamp,json=queueTimestamp,proto3" json:"queue_timestamp,omitempty"`
	// integrate_timestamp holds the time at which this leaf was integrated into
	// the tree.  Clients should not set this field on submissions.
	IntegrateTimestamp   *timestamp.Timestamp `protobuf:"bytes,7,opt,name=integrate_timestamp,json=integrateTimestamp,proto3" json:"integrate_timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

LogLeaf describes a leaf in the Log's Merkle tree, corresponding to a single log entry. Each leaf has a unique leaf index in the scope of this tree. Clients submitting new leaf entries should only set the following fields:

  • leaf_value
  • extra_data (optionally)
  • leaf_identity_hash (optionally)
  • leaf_index (iff the log is a PREORDERED_LOG)

func (*LogLeaf) Descriptor ¶

func (*LogLeaf) Descriptor() ([]byte, []int)

func (*LogLeaf) GetExtraData ¶

func (m *LogLeaf) GetExtraData() []byte

func (*LogLeaf) GetIntegrateTimestamp ¶ added in v1.0.5

func (m *LogLeaf) GetIntegrateTimestamp() *timestamp.Timestamp

func (*LogLeaf) GetLeafIdentityHash ¶

func (m *LogLeaf) GetLeafIdentityHash() []byte

func (*LogLeaf) GetLeafIndex ¶

func (m *LogLeaf) GetLeafIndex() int64

func (*LogLeaf) GetLeafValue ¶

func (m *LogLeaf) GetLeafValue() []byte

func (*LogLeaf) GetMerkleLeafHash ¶

func (m *LogLeaf) GetMerkleLeafHash() []byte

func (*LogLeaf) GetQueueTimestamp ¶ added in v1.0.5

func (m *LogLeaf) GetQueueTimestamp() *timestamp.Timestamp

func (*LogLeaf) ProtoMessage ¶

func (*LogLeaf) ProtoMessage()

func (*LogLeaf) Reset ¶

func (m *LogLeaf) Reset()

func (*LogLeaf) String ¶

func (m *LogLeaf) String() string

func (*LogLeaf) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *LogLeaf) XXX_DiscardUnknown()

func (*LogLeaf) XXX_Marshal ¶ added in v1.2.1

func (m *LogLeaf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*LogLeaf) XXX_Merge ¶ added in v1.2.1

func (m *LogLeaf) XXX_Merge(src proto.Message)

func (*LogLeaf) XXX_Size ¶ added in v1.2.1

func (m *LogLeaf) XXX_Size() int

func (*LogLeaf) XXX_Unmarshal ¶ added in v1.2.1

func (m *LogLeaf) XXX_Unmarshal(b []byte) error

type LogRootFormat ¶ added in v1.1.0

type LogRootFormat int32

LogRootFormat specifies the fields that are covered by the SignedLogRoot signature, as well as their ordering and formats.

const (
	LogRootFormat_LOG_ROOT_FORMAT_UNKNOWN LogRootFormat = 0
	LogRootFormat_LOG_ROOT_FORMAT_V1      LogRootFormat = 1
)

func (LogRootFormat) EnumDescriptor ¶ added in v1.1.0

func (LogRootFormat) EnumDescriptor() ([]byte, []int)

func (LogRootFormat) String ¶ added in v1.1.0

func (x LogRootFormat) String() string

type MapLeaf ¶

type MapLeaf struct {
	// index is the location of this leaf.
	// All indexes for a given Map must contain a constant number of bits.
	// These are not numeric indices. Note that this is typically derived using a
	// hash and thus the length of all indices in the map will match the number
	// of bits in the hash function.
	Index []byte `protobuf:"bytes,1,opt,name=index,proto3" json:"index,omitempty"`
	// leaf_hash is the tree hash of leaf_value.  This does not need to be set
	// on SetMapLeavesRequest; the server will fill it in.
	// For an empty leaf (len(leaf_value)==0), there may be two possible values
	// for this hash:
	//  - If the leaf has never been set, it counts as an empty subtree and
	//    a nil value is used.
	//  - If the leaf has been explicitly set to a zero-length entry, it no
	//    longer counts as empty and the value of hasher.HashLeaf(index, nil)
	//    will be used.
	LeafHash []byte `protobuf:"bytes,2,opt,name=leaf_hash,json=leafHash,proto3" json:"leaf_hash,omitempty"`
	// leaf_value is the data the tree commits to.
	LeafValue []byte `protobuf:"bytes,3,opt,name=leaf_value,json=leafValue,proto3" json:"leaf_value,omitempty"`
	// extra_data holds related contextual data, but is not covered by any hash.
	ExtraData            []byte   `protobuf:"bytes,4,opt,name=extra_data,json=extraData,proto3" json:"extra_data,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

MapLeaf represents the data behind Map leaves.

func (*MapLeaf) Descriptor ¶

func (*MapLeaf) Descriptor() ([]byte, []int)

func (*MapLeaf) GetExtraData ¶

func (m *MapLeaf) GetExtraData() []byte

func (*MapLeaf) GetIndex ¶

func (m *MapLeaf) GetIndex() []byte

func (*MapLeaf) GetLeafHash ¶

func (m *MapLeaf) GetLeafHash() []byte

func (*MapLeaf) GetLeafValue ¶

func (m *MapLeaf) GetLeafValue() []byte

func (*MapLeaf) ProtoMessage ¶

func (*MapLeaf) ProtoMessage()

func (*MapLeaf) Reset ¶

func (m *MapLeaf) Reset()

func (*MapLeaf) String ¶

func (m *MapLeaf) String() string

func (*MapLeaf) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *MapLeaf) XXX_DiscardUnknown()

func (*MapLeaf) XXX_Marshal ¶ added in v1.2.1

func (m *MapLeaf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MapLeaf) XXX_Merge ¶ added in v1.2.1

func (m *MapLeaf) XXX_Merge(src proto.Message)

func (*MapLeaf) XXX_Size ¶ added in v1.2.1

func (m *MapLeaf) XXX_Size() int

func (*MapLeaf) XXX_Unmarshal ¶ added in v1.2.1

func (m *MapLeaf) XXX_Unmarshal(b []byte) error

type MapLeafInclusion ¶

type MapLeafInclusion struct {
	Leaf *MapLeaf `protobuf:"bytes,1,opt,name=leaf,proto3" json:"leaf,omitempty"`
	// inclusion holds the inclusion proof for this leaf in the map root. It
	// holds one entry for each level of the tree; combining each of these in
	// turn with the leaf's hash (according to the tree's hash strategy)
	// reproduces the root hash.  A nil entry for a particular level indicates
	// that the node in question has an empty subtree beneath it (and so its
	// associated hash value is hasher.HashEmpty(index, height) rather than
	// hasher.HashChildren(l_hash, r_hash)).
	Inclusion            [][]byte `protobuf:"bytes,2,rep,name=inclusion,proto3" json:"inclusion,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*MapLeafInclusion) Descriptor ¶

func (*MapLeafInclusion) Descriptor() ([]byte, []int)

func (*MapLeafInclusion) GetInclusion ¶

func (m *MapLeafInclusion) GetInclusion() [][]byte

func (*MapLeafInclusion) GetLeaf ¶

func (m *MapLeafInclusion) GetLeaf() *MapLeaf

func (*MapLeafInclusion) ProtoMessage ¶

func (*MapLeafInclusion) ProtoMessage()

func (*MapLeafInclusion) Reset ¶

func (m *MapLeafInclusion) Reset()

func (*MapLeafInclusion) String ¶

func (m *MapLeafInclusion) String() string

func (*MapLeafInclusion) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *MapLeafInclusion) XXX_DiscardUnknown()

func (*MapLeafInclusion) XXX_Marshal ¶ added in v1.2.1

func (m *MapLeafInclusion) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MapLeafInclusion) XXX_Merge ¶ added in v1.2.1

func (m *MapLeafInclusion) XXX_Merge(src proto.Message)

func (*MapLeafInclusion) XXX_Size ¶ added in v1.2.1

func (m *MapLeafInclusion) XXX_Size() int

func (*MapLeafInclusion) XXX_Unmarshal ¶ added in v1.2.1

func (m *MapLeafInclusion) XXX_Unmarshal(b []byte) error

type MapLeaves ¶ added in v1.3.0

type MapLeaves struct {
	Leaves               []*MapLeaf `protobuf:"bytes,1,rep,name=leaves,proto3" json:"leaves,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (*MapLeaves) Descriptor ¶ added in v1.3.0

func (*MapLeaves) Descriptor() ([]byte, []int)

func (*MapLeaves) GetLeaves ¶ added in v1.3.0

func (m *MapLeaves) GetLeaves() []*MapLeaf

func (*MapLeaves) ProtoMessage ¶ added in v1.3.0

func (*MapLeaves) ProtoMessage()

func (*MapLeaves) Reset ¶ added in v1.3.0

func (m *MapLeaves) Reset()

func (*MapLeaves) String ¶ added in v1.3.0

func (m *MapLeaves) String() string

func (*MapLeaves) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *MapLeaves) XXX_DiscardUnknown()

func (*MapLeaves) XXX_Marshal ¶ added in v1.3.0

func (m *MapLeaves) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MapLeaves) XXX_Merge ¶ added in v1.3.0

func (m *MapLeaves) XXX_Merge(src proto.Message)

func (*MapLeaves) XXX_Size ¶ added in v1.3.0

func (m *MapLeaves) XXX_Size() int

func (*MapLeaves) XXX_Unmarshal ¶ added in v1.3.0

func (m *MapLeaves) XXX_Unmarshal(b []byte) error

type MapRootFormat ¶ added in v1.1.0

type MapRootFormat int32

MapRootFormat specifies the fields that are covered by the SignedMapRoot signature, as well as their ordering and formats.

const (
	MapRootFormat_MAP_ROOT_FORMAT_UNKNOWN MapRootFormat = 0
	MapRootFormat_MAP_ROOT_FORMAT_V1      MapRootFormat = 1
)

func (MapRootFormat) EnumDescriptor ¶ added in v1.1.0

func (MapRootFormat) EnumDescriptor() ([]byte, []int)

func (MapRootFormat) String ¶ added in v1.1.0

func (x MapRootFormat) String() string

type Proof ¶

type Proof struct {
	// leaf_index indicates the requested leaf index when this message is used for
	// a leaf inclusion proof.  This field is set to zero when this message is
	// used for a consistency proof.
	LeafIndex            int64    `protobuf:"varint,1,opt,name=leaf_index,json=leafIndex,proto3" json:"leaf_index,omitempty"`
	Hashes               [][]byte `protobuf:"bytes,3,rep,name=hashes,proto3" json:"hashes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Proof holds a consistency or inclusion proof for a Merkle tree, as returned by the API.

func (*Proof) Descriptor ¶

func (*Proof) Descriptor() ([]byte, []int)

func (*Proof) GetHashes ¶

func (m *Proof) GetHashes() [][]byte

func (*Proof) GetLeafIndex ¶

func (m *Proof) GetLeafIndex() int64

func (*Proof) ProtoMessage ¶

func (*Proof) ProtoMessage()

func (*Proof) Reset ¶

func (m *Proof) Reset()

func (*Proof) String ¶

func (m *Proof) String() string

func (*Proof) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *Proof) XXX_DiscardUnknown()

func (*Proof) XXX_Marshal ¶ added in v1.2.1

func (m *Proof) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Proof) XXX_Merge ¶ added in v1.2.1

func (m *Proof) XXX_Merge(src proto.Message)

func (*Proof) XXX_Size ¶ added in v1.2.1

func (m *Proof) XXX_Size() int

func (*Proof) XXX_Unmarshal ¶ added in v1.2.1

func (m *Proof) XXX_Unmarshal(b []byte) error

type QueueLeafRequest ¶

type QueueLeafRequest struct {
	LogId                int64     `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	Leaf                 *LogLeaf  `protobuf:"bytes,2,opt,name=leaf,proto3" json:"leaf,omitempty"`
	ChargeTo             *ChargeTo `protobuf:"bytes,3,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (*QueueLeafRequest) Descriptor ¶

func (*QueueLeafRequest) Descriptor() ([]byte, []int)

func (*QueueLeafRequest) GetChargeTo ¶ added in v1.2.0

func (m *QueueLeafRequest) GetChargeTo() *ChargeTo

func (*QueueLeafRequest) GetLeaf ¶

func (m *QueueLeafRequest) GetLeaf() *LogLeaf

func (*QueueLeafRequest) GetLogId ¶

func (m *QueueLeafRequest) GetLogId() int64

func (*QueueLeafRequest) ProtoMessage ¶

func (*QueueLeafRequest) ProtoMessage()

func (*QueueLeafRequest) Reset ¶

func (m *QueueLeafRequest) Reset()

func (*QueueLeafRequest) String ¶

func (m *QueueLeafRequest) String() string

func (*QueueLeafRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *QueueLeafRequest) XXX_DiscardUnknown()

func (*QueueLeafRequest) XXX_Marshal ¶ added in v1.2.1

func (m *QueueLeafRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*QueueLeafRequest) XXX_Merge ¶ added in v1.2.1

func (m *QueueLeafRequest) XXX_Merge(src proto.Message)

func (*QueueLeafRequest) XXX_Size ¶ added in v1.2.1

func (m *QueueLeafRequest) XXX_Size() int

func (*QueueLeafRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *QueueLeafRequest) XXX_Unmarshal(b []byte) error

type QueueLeafResponse ¶

type QueueLeafResponse struct {
	// queued_leaf describes the leaf which is or will be incorporated into the
	// Log.  If the submitted leaf was already present in the Log (as indicated by
	// its leaf identity hash), then the returned leaf will be the pre-existing
	// leaf entry rather than the submitted leaf.
	QueuedLeaf           *QueuedLogLeaf `protobuf:"bytes,2,opt,name=queued_leaf,json=queuedLeaf,proto3" json:"queued_leaf,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*QueueLeafResponse) Descriptor ¶

func (*QueueLeafResponse) Descriptor() ([]byte, []int)

func (*QueueLeafResponse) GetQueuedLeaf ¶

func (m *QueueLeafResponse) GetQueuedLeaf() *QueuedLogLeaf

func (*QueueLeafResponse) ProtoMessage ¶

func (*QueueLeafResponse) ProtoMessage()

func (*QueueLeafResponse) Reset ¶

func (m *QueueLeafResponse) Reset()

func (*QueueLeafResponse) String ¶

func (m *QueueLeafResponse) String() string

func (*QueueLeafResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *QueueLeafResponse) XXX_DiscardUnknown()

func (*QueueLeafResponse) XXX_Marshal ¶ added in v1.2.1

func (m *QueueLeafResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*QueueLeafResponse) XXX_Merge ¶ added in v1.2.1

func (m *QueueLeafResponse) XXX_Merge(src proto.Message)

func (*QueueLeafResponse) XXX_Size ¶ added in v1.2.1

func (m *QueueLeafResponse) XXX_Size() int

func (*QueueLeafResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *QueueLeafResponse) XXX_Unmarshal(b []byte) error

type QueueLeavesRequest ¶

type QueueLeavesRequest struct {
	LogId                int64      `protobuf:"varint,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	Leaves               []*LogLeaf `protobuf:"bytes,2,rep,name=leaves,proto3" json:"leaves,omitempty"`
	ChargeTo             *ChargeTo  `protobuf:"bytes,3,opt,name=charge_to,json=chargeTo,proto3" json:"charge_to,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (*QueueLeavesRequest) Descriptor ¶

func (*QueueLeavesRequest) Descriptor() ([]byte, []int)

func (*QueueLeavesRequest) GetChargeTo ¶ added in v1.2.0

func (m *QueueLeavesRequest) GetChargeTo() *ChargeTo

func (*QueueLeavesRequest) GetLeaves ¶

func (m *QueueLeavesRequest) GetLeaves() []*LogLeaf

func (*QueueLeavesRequest) GetLogId ¶

func (m *QueueLeavesRequest) GetLogId() int64

func (*QueueLeavesRequest) ProtoMessage ¶

func (*QueueLeavesRequest) ProtoMessage()

func (*QueueLeavesRequest) Reset ¶

func (m *QueueLeavesRequest) Reset()

func (*QueueLeavesRequest) String ¶

func (m *QueueLeavesRequest) String() string

func (*QueueLeavesRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *QueueLeavesRequest) XXX_DiscardUnknown()

func (*QueueLeavesRequest) XXX_Marshal ¶ added in v1.2.1

func (m *QueueLeavesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*QueueLeavesRequest) XXX_Merge ¶ added in v1.2.1

func (m *QueueLeavesRequest) XXX_Merge(src proto.Message)

func (*QueueLeavesRequest) XXX_Size ¶ added in v1.2.1

func (m *QueueLeavesRequest) XXX_Size() int

func (*QueueLeavesRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *QueueLeavesRequest) XXX_Unmarshal(b []byte) error

type QueueLeavesResponse ¶

type QueueLeavesResponse struct {
	// Same number and order as in the corresponding request.
	QueuedLeaves         []*QueuedLogLeaf `protobuf:"bytes,2,rep,name=queued_leaves,json=queuedLeaves,proto3" json:"queued_leaves,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (*QueueLeavesResponse) Descriptor ¶

func (*QueueLeavesResponse) Descriptor() ([]byte, []int)

func (*QueueLeavesResponse) GetQueuedLeaves ¶

func (m *QueueLeavesResponse) GetQueuedLeaves() []*QueuedLogLeaf

func (*QueueLeavesResponse) ProtoMessage ¶

func (*QueueLeavesResponse) ProtoMessage()

func (*QueueLeavesResponse) Reset ¶

func (m *QueueLeavesResponse) Reset()

func (*QueueLeavesResponse) String ¶

func (m *QueueLeavesResponse) String() string

func (*QueueLeavesResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *QueueLeavesResponse) XXX_DiscardUnknown()

func (*QueueLeavesResponse) XXX_Marshal ¶ added in v1.2.1

func (m *QueueLeavesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*QueueLeavesResponse) XXX_Merge ¶ added in v1.2.1

func (m *QueueLeavesResponse) XXX_Merge(src proto.Message)

func (*QueueLeavesResponse) XXX_Size ¶ added in v1.2.1

func (m *QueueLeavesResponse) XXX_Size() int

func (*QueueLeavesResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *QueueLeavesResponse) XXX_Unmarshal(b []byte) error

type QueuedLogLeaf ¶

type QueuedLogLeaf struct {
	// The leaf as it was stored by Trillian. Empty unless `status.code` is:
	//  - `google.rpc.OK`: the `leaf` data is the same as in the request.
	//  - `google.rpc.ALREADY_EXISTS` or 'google.rpc.FAILED_PRECONDITION`: the
	//    `leaf` is the conflicting one already in the log.
	Leaf *LogLeaf `protobuf:"bytes,1,opt,name=leaf,proto3" json:"leaf,omitempty"`
	// The status of adding the leaf.
	//  - `google.rpc.OK`: successfully added.
	//  - `google.rpc.ALREADY_EXISTS`: the leaf is a duplicate of an already
	//    existing one. Either `leaf_identity_hash` is the same in the `LOG`
	//    mode, or `leaf_index` in the `PREORDERED_LOG`.
	//  - `google.rpc.FAILED_PRECONDITION`: A conflicting entry is already
	//    present in the log, e.g., same `leaf_index` but different `leaf_data`.
	Status               *status.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

QueuedLogLeaf provides the result of submitting an entry to the log. TODO(pavelkalinnikov): Consider renaming it to AddLogLeafResult or the like.

func (*QueuedLogLeaf) Descriptor ¶

func (*QueuedLogLeaf) Descriptor() ([]byte, []int)

func (*QueuedLogLeaf) GetLeaf ¶

func (m *QueuedLogLeaf) GetLeaf() *LogLeaf

func (*QueuedLogLeaf) GetStatus ¶

func (m *QueuedLogLeaf) GetStatus() *status.Status

func (*QueuedLogLeaf) ProtoMessage ¶

func (*QueuedLogLeaf) ProtoMessage()

func (*QueuedLogLeaf) Reset ¶

func (m *QueuedLogLeaf) Reset()

func (*QueuedLogLeaf) String ¶

func (m *QueuedLogLeaf) String() string

func (*QueuedLogLeaf) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *QueuedLogLeaf) XXX_DiscardUnknown()

func (*QueuedLogLeaf) XXX_Marshal ¶ added in v1.2.1

func (m *QueuedLogLeaf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*QueuedLogLeaf) XXX_Merge ¶ added in v1.2.1

func (m *QueuedLogLeaf) XXX_Merge(src proto.Message)

func (*QueuedLogLeaf) XXX_Size ¶ added in v1.2.1

func (m *QueuedLogLeaf) XXX_Size() int

func (*QueuedLogLeaf) XXX_Unmarshal ¶ added in v1.2.1

func (m *QueuedLogLeaf) XXX_Unmarshal(b []byte) error

type SetMapLeavesRequest ¶

type SetMapLeavesRequest struct {
	MapId int64 `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	// The leaves being set must have unique Index values within the request.
	Leaves   []*MapLeaf `protobuf:"bytes,2,rep,name=leaves,proto3" json:"leaves,omitempty"`
	Metadata []byte     `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"`
	// The map revision to associate the leaves with. The request will fail if
	// this revision already exists, does not match the current write revision, or
	// is not positive. Note that revision = 0 is reserved for the empty tree.
	Revision             int64    `protobuf:"varint,6,opt,name=revision,proto3" json:"revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*SetMapLeavesRequest) Descriptor ¶

func (*SetMapLeavesRequest) Descriptor() ([]byte, []int)

func (*SetMapLeavesRequest) GetLeaves ¶

func (m *SetMapLeavesRequest) GetLeaves() []*MapLeaf

func (*SetMapLeavesRequest) GetMapId ¶

func (m *SetMapLeavesRequest) GetMapId() int64

func (*SetMapLeavesRequest) GetMetadata ¶ added in v1.0.2

func (m *SetMapLeavesRequest) GetMetadata() []byte

func (*SetMapLeavesRequest) GetRevision ¶ added in v1.3.0

func (m *SetMapLeavesRequest) GetRevision() int64

func (*SetMapLeavesRequest) ProtoMessage ¶

func (*SetMapLeavesRequest) ProtoMessage()

func (*SetMapLeavesRequest) Reset ¶

func (m *SetMapLeavesRequest) Reset()

func (*SetMapLeavesRequest) String ¶

func (m *SetMapLeavesRequest) String() string

func (*SetMapLeavesRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *SetMapLeavesRequest) XXX_DiscardUnknown()

func (*SetMapLeavesRequest) XXX_Marshal ¶ added in v1.2.1

func (m *SetMapLeavesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SetMapLeavesRequest) XXX_Merge ¶ added in v1.2.1

func (m *SetMapLeavesRequest) XXX_Merge(src proto.Message)

func (*SetMapLeavesRequest) XXX_Size ¶ added in v1.2.1

func (m *SetMapLeavesRequest) XXX_Size() int

func (*SetMapLeavesRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *SetMapLeavesRequest) XXX_Unmarshal(b []byte) error

type SetMapLeavesResponse ¶

type SetMapLeavesResponse struct {
	MapRoot              *SignedMapRoot `protobuf:"bytes,2,opt,name=map_root,json=mapRoot,proto3" json:"map_root,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*SetMapLeavesResponse) Descriptor ¶

func (*SetMapLeavesResponse) Descriptor() ([]byte, []int)

func (*SetMapLeavesResponse) GetMapRoot ¶

func (m *SetMapLeavesResponse) GetMapRoot() *SignedMapRoot

func (*SetMapLeavesResponse) ProtoMessage ¶

func (*SetMapLeavesResponse) ProtoMessage()

func (*SetMapLeavesResponse) Reset ¶

func (m *SetMapLeavesResponse) Reset()

func (*SetMapLeavesResponse) String ¶

func (m *SetMapLeavesResponse) String() string

func (*SetMapLeavesResponse) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *SetMapLeavesResponse) XXX_DiscardUnknown()

func (*SetMapLeavesResponse) XXX_Marshal ¶ added in v1.2.1

func (m *SetMapLeavesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SetMapLeavesResponse) XXX_Merge ¶ added in v1.2.1

func (m *SetMapLeavesResponse) XXX_Merge(src proto.Message)

func (*SetMapLeavesResponse) XXX_Size ¶ added in v1.2.1

func (m *SetMapLeavesResponse) XXX_Size() int

func (*SetMapLeavesResponse) XXX_Unmarshal ¶ added in v1.2.1

func (m *SetMapLeavesResponse) XXX_Unmarshal(b []byte) error

type SignedEntryTimestamp ¶

type SignedEntryTimestamp struct {
	TimestampNanos       int64                  `protobuf:"varint,1,opt,name=timestamp_nanos,json=timestampNanos,proto3" json:"timestamp_nanos,omitempty"`
	LogId                int64                  `protobuf:"varint,2,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"`
	Signature            *sigpb.DigitallySigned `protobuf:"bytes,3,opt,name=signature,proto3" json:"signature,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (*SignedEntryTimestamp) Descriptor ¶

func (*SignedEntryTimestamp) Descriptor() ([]byte, []int)

func (*SignedEntryTimestamp) GetLogId ¶

func (m *SignedEntryTimestamp) GetLogId() int64

func (*SignedEntryTimestamp) GetSignature ¶

func (m *SignedEntryTimestamp) GetSignature() *sigpb.DigitallySigned

func (*SignedEntryTimestamp) GetTimestampNanos ¶

func (m *SignedEntryTimestamp) GetTimestampNanos() int64

func (*SignedEntryTimestamp) ProtoMessage ¶

func (*SignedEntryTimestamp) ProtoMessage()

func (*SignedEntryTimestamp) Reset ¶

func (m *SignedEntryTimestamp) Reset()

func (*SignedEntryTimestamp) String ¶

func (m *SignedEntryTimestamp) String() string

func (*SignedEntryTimestamp) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *SignedEntryTimestamp) XXX_DiscardUnknown()

func (*SignedEntryTimestamp) XXX_Marshal ¶ added in v1.2.1

func (m *SignedEntryTimestamp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SignedEntryTimestamp) XXX_Merge ¶ added in v1.2.1

func (m *SignedEntryTimestamp) XXX_Merge(src proto.Message)

func (*SignedEntryTimestamp) XXX_Size ¶ added in v1.2.1

func (m *SignedEntryTimestamp) XXX_Size() int

func (*SignedEntryTimestamp) XXX_Unmarshal ¶ added in v1.2.1

func (m *SignedEntryTimestamp) XXX_Unmarshal(b []byte) error

type SignedLogRoot ¶

type SignedLogRoot struct {
	// key_hint is a hint to identify the public key for signature verification.
	// key_hint is not authenticated and may be incorrect or missing, in which
	// case all known public keys may be used to verify the signature.
	// When directly communicating with a Trillian gRPC server, the key_hint will
	// typically contain the LogID encoded as a big-endian 64-bit integer;
	// however, in other contexts the key_hint is likely to have different
	// contents (e.g. it could be a GUID, a URL + TreeID, or it could be
	// derived from the public key itself).
	KeyHint []byte `protobuf:"bytes,7,opt,name=key_hint,json=keyHint,proto3" json:"key_hint,omitempty"`
	// log_root holds the TLS-serialization of the following structure (described
	// in RFC5246 notation): Clients should validate log_root_signature with
	// VerifySignedLogRoot before deserializing log_root.
	// enum { v1(1), (65535)} Version;
	// struct {
	//   uint64 tree_size;
	//   opaque root_hash<0..128>;
	//   uint64 timestamp_nanos;
	//   uint64 revision;
	//   opaque metadata<0..65535>;
	// } LogRootV1;
	// struct {
	//   Version version;
	//   select(version) {
	//     case v1: LogRootV1;
	//   }
	// } LogRoot;
	//
	// A serialized v1 log root will therefore be laid out as:
	//
	// +---+---+---+---+---+---+---+---+---+---+---+---+---+---+-....--+
	// | ver=1 |          tree_size            |len|    root_hashlen   |
	// +---+---+---+---+---+---+---+---+---+---+---+---+---+---+-....--+
	//
	// +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	// |        timestamp_nanos        |      revision                 |
	// +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
	//
	// +---+---+---+---+---+-....---+
	// |  len  |    metadata        |
	// +---+---+---+---+---+-....---+
	//
	// (with all integers encoded big-endian).
	LogRoot []byte `protobuf:"bytes,8,opt,name=log_root,json=logRoot,proto3" json:"log_root,omitempty"`
	// log_root_signature is the raw signature over log_root.
	LogRootSignature     []byte   `protobuf:"bytes,9,opt,name=log_root_signature,json=logRootSignature,proto3" json:"log_root_signature,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SignedLogRoot represents a commitment by a Log to a particular tree.

func (*SignedLogRoot) Descriptor ¶

func (*SignedLogRoot) Descriptor() ([]byte, []int)

func (*SignedLogRoot) GetKeyHint ¶ added in v1.1.0

func (m *SignedLogRoot) GetKeyHint() []byte

func (*SignedLogRoot) GetLogRoot ¶ added in v1.1.0

func (m *SignedLogRoot) GetLogRoot() []byte

func (*SignedLogRoot) GetLogRootSignature ¶ added in v1.1.0

func (m *SignedLogRoot) GetLogRootSignature() []byte

func (*SignedLogRoot) ProtoMessage ¶

func (*SignedLogRoot) ProtoMessage()

func (*SignedLogRoot) Reset ¶

func (m *SignedLogRoot) Reset()

func (*SignedLogRoot) String ¶

func (m *SignedLogRoot) String() string

func (*SignedLogRoot) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *SignedLogRoot) XXX_DiscardUnknown()

func (*SignedLogRoot) XXX_Marshal ¶ added in v1.2.1

func (m *SignedLogRoot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SignedLogRoot) XXX_Merge ¶ added in v1.2.1

func (m *SignedLogRoot) XXX_Merge(src proto.Message)

func (*SignedLogRoot) XXX_Size ¶ added in v1.2.1

func (m *SignedLogRoot) XXX_Size() int

func (*SignedLogRoot) XXX_Unmarshal ¶ added in v1.2.1

func (m *SignedLogRoot) XXX_Unmarshal(b []byte) error

type SignedMapRoot ¶

type SignedMapRoot struct {
	// map_root holds the TLS-serialization of the following structure (described
	// in RFC5246 notation): Clients should validate signature with
	// VerifySignedMapRoot before deserializing map_root.
	// enum { v1(1), (65535)} Version;
	// struct {
	//   opaque root_hash<0..128>;
	//   uint64 timestamp_nanos;
	//   uint64 revision;
	//   opaque metadata<0..65535>;
	// } MapRootV1;
	// struct {
	//   Version version;
	//   select(version) {
	//     case v1: MapRootV1;
	//   }
	// } MapRoot;
	MapRoot []byte `protobuf:"bytes,9,opt,name=map_root,json=mapRoot,proto3" json:"map_root,omitempty"`
	// Signature is the raw signature over MapRoot.
	Signature            []byte   `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SignedMapRoot represents a commitment by a Map to a particular tree.

func (*SignedMapRoot) Descriptor ¶

func (*SignedMapRoot) Descriptor() ([]byte, []int)

func (*SignedMapRoot) GetMapRoot ¶ added in v1.1.0

func (m *SignedMapRoot) GetMapRoot() []byte

func (*SignedMapRoot) GetSignature ¶

func (m *SignedMapRoot) GetSignature() []byte

func (*SignedMapRoot) ProtoMessage ¶

func (*SignedMapRoot) ProtoMessage()

func (*SignedMapRoot) Reset ¶

func (m *SignedMapRoot) Reset()

func (*SignedMapRoot) String ¶

func (m *SignedMapRoot) String() string

func (*SignedMapRoot) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *SignedMapRoot) XXX_DiscardUnknown()

func (*SignedMapRoot) XXX_Marshal ¶ added in v1.2.1

func (m *SignedMapRoot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SignedMapRoot) XXX_Merge ¶ added in v1.2.1

func (m *SignedMapRoot) XXX_Merge(src proto.Message)

func (*SignedMapRoot) XXX_Size ¶ added in v1.2.1

func (m *SignedMapRoot) XXX_Size() int

func (*SignedMapRoot) XXX_Unmarshal ¶ added in v1.2.1

func (m *SignedMapRoot) XXX_Unmarshal(b []byte) error

type Tree ¶

type Tree struct {
	// ID of the tree.
	// Readonly.
	TreeId int64 `protobuf:"varint,1,opt,name=tree_id,json=treeId,proto3" json:"tree_id,omitempty"`
	// State of the tree.
	// Trees are ACTIVE after creation. At any point the tree may transition
	// between ACTIVE, DRAINING and FROZEN states.
	TreeState TreeState `protobuf:"varint,2,opt,name=tree_state,json=treeState,proto3,enum=trillian.TreeState" json:"tree_state,omitempty"`
	// Type of the tree.
	// Readonly after Tree creation. Exception: Can be switched from
	// PREORDERED_LOG to LOG if the Tree is and remains in the FROZEN state.
	TreeType TreeType `protobuf:"varint,3,opt,name=tree_type,json=treeType,proto3,enum=trillian.TreeType" json:"tree_type,omitempty"`
	// Hash strategy to be used by the tree.
	// Readonly.
	HashStrategy HashStrategy `protobuf:"varint,4,opt,name=hash_strategy,json=hashStrategy,proto3,enum=trillian.HashStrategy" json:"hash_strategy,omitempty"`
	// Hash algorithm to be used by the tree.
	// Readonly.
	HashAlgorithm sigpb.DigitallySigned_HashAlgorithm `` /* 142-byte string literal not displayed */
	// Signature algorithm to be used by the tree.
	// Readonly.
	SignatureAlgorithm sigpb.DigitallySigned_SignatureAlgorithm `` /* 162-byte string literal not displayed */
	// Display name of the tree.
	// Optional.
	DisplayName string `protobuf:"bytes,8,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Description of the tree,
	// Optional.
	Description string `protobuf:"bytes,9,opt,name=description,proto3" json:"description,omitempty"`
	// Identifies the private key used for signing tree heads and entry
	// timestamps.
	// This can be any type of message to accommodate different key management
	// systems, e.g. PEM files, HSMs, etc.
	// Private keys are write-only: they're never returned by RPCs.
	// The private_key message can be changed after a tree is created, but the
	// underlying key must remain the same - this is to enable migrating a key
	// from one provider to another.
	PrivateKey *any.Any `protobuf:"bytes,12,opt,name=private_key,json=privateKey,proto3" json:"private_key,omitempty"`
	// Storage-specific settings.
	// Varies according to the storage implementation backing Trillian.
	StorageSettings *any.Any `protobuf:"bytes,13,opt,name=storage_settings,json=storageSettings,proto3" json:"storage_settings,omitempty"`
	// The public key used for verifying tree heads and entry timestamps.
	// Readonly.
	PublicKey *keyspb.PublicKey `protobuf:"bytes,14,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
	// Interval after which a new signed root is produced even if there have been
	// no submission.  If zero, this behavior is disabled.
	MaxRootDuration *duration.Duration `protobuf:"bytes,15,opt,name=max_root_duration,json=maxRootDuration,proto3" json:"max_root_duration,omitempty"`
	// Time of tree creation.
	// Readonly.
	CreateTime *timestamp.Timestamp `protobuf:"bytes,16,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Time of last tree update.
	// Readonly (automatically assigned on updates).
	UpdateTime *timestamp.Timestamp `protobuf:"bytes,17,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// If true, the tree has been deleted.
	// Deleted trees may be undeleted during a certain time window, after which
	// they're permanently deleted (and unrecoverable).
	// Readonly.
	Deleted bool `protobuf:"varint,19,opt,name=deleted,proto3" json:"deleted,omitempty"`
	// Time of tree deletion, if any.
	// Readonly.
	DeleteTime           *timestamp.Timestamp `protobuf:"bytes,20,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

Represents a tree, which may be either a verifiable log or map. Readonly attributes are assigned at tree creation, after which they may not be modified.

Note: Many APIs within the rest of the code require these objects to be provided. For safety they should be obtained via Admin API calls and not created dynamically.

func (*Tree) Descriptor ¶

func (*Tree) Descriptor() ([]byte, []int)

func (*Tree) GetCreateTime ¶

func (m *Tree) GetCreateTime() *timestamp.Timestamp

func (*Tree) GetDeleteTime ¶

func (m *Tree) GetDeleteTime() *timestamp.Timestamp

func (*Tree) GetDeleted ¶

func (m *Tree) GetDeleted() bool

func (*Tree) GetDescription ¶

func (m *Tree) GetDescription() string

func (*Tree) GetDisplayName ¶

func (m *Tree) GetDisplayName() string

func (*Tree) GetHashAlgorithm ¶

func (m *Tree) GetHashAlgorithm() sigpb.DigitallySigned_HashAlgorithm

func (*Tree) GetHashStrategy ¶

func (m *Tree) GetHashStrategy() HashStrategy

func (*Tree) GetMaxRootDuration ¶

func (m *Tree) GetMaxRootDuration() *duration.Duration

func (*Tree) GetPrivateKey ¶

func (m *Tree) GetPrivateKey() *any.Any

func (*Tree) GetPublicKey ¶

func (m *Tree) GetPublicKey() *keyspb.PublicKey

func (*Tree) GetSignatureAlgorithm ¶

func (m *Tree) GetSignatureAlgorithm() sigpb.DigitallySigned_SignatureAlgorithm

func (*Tree) GetStorageSettings ¶

func (m *Tree) GetStorageSettings() *any.Any

func (*Tree) GetTreeId ¶

func (m *Tree) GetTreeId() int64

func (*Tree) GetTreeState ¶

func (m *Tree) GetTreeState() TreeState

func (*Tree) GetTreeType ¶

func (m *Tree) GetTreeType() TreeType

func (*Tree) GetUpdateTime ¶

func (m *Tree) GetUpdateTime() *timestamp.Timestamp

func (*Tree) ProtoMessage ¶

func (*Tree) ProtoMessage()

func (*Tree) Reset ¶

func (m *Tree) Reset()

func (*Tree) String ¶

func (m *Tree) String() string

func (*Tree) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *Tree) XXX_DiscardUnknown()

func (*Tree) XXX_Marshal ¶ added in v1.2.1

func (m *Tree) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Tree) XXX_Merge ¶ added in v1.2.1

func (m *Tree) XXX_Merge(src proto.Message)

func (*Tree) XXX_Size ¶ added in v1.2.1

func (m *Tree) XXX_Size() int

func (*Tree) XXX_Unmarshal ¶ added in v1.2.1

func (m *Tree) XXX_Unmarshal(b []byte) error

type TreeState ¶

type TreeState int32

State of the tree.

const (
	// Tree state cannot be determined. Included to enable detection of
	// mismatched proto versions being used. Represents an invalid value.
	TreeState_UNKNOWN_TREE_STATE TreeState = 0
	// Active trees are able to respond to both read and write requests.
	TreeState_ACTIVE TreeState = 1
	// Frozen trees are only able to respond to read requests, writing to a frozen
	// tree is forbidden. Trees should not be frozen when there are entries
	// in the queue that have not yet been integrated. See the DRAINING
	// state for this case.
	TreeState_FROZEN TreeState = 2
	// Deprecated: now tracked in Tree.deleted.
	TreeState_DEPRECATED_SOFT_DELETED TreeState = 3 // Deprecated: Do not use.
	// Deprecated: now tracked in Tree.deleted.
	TreeState_DEPRECATED_HARD_DELETED TreeState = 4 // Deprecated: Do not use.
	// A tree that is draining will continue to integrate queued entries.
	// No new entries should be accepted.
	TreeState_DRAINING TreeState = 5
)

func (TreeState) EnumDescriptor ¶

func (TreeState) EnumDescriptor() ([]byte, []int)

func (TreeState) String ¶

func (x TreeState) String() string

type TreeType ¶

type TreeType int32

Type of the tree.

const (
	// Tree type cannot be determined. Included to enable detection of mismatched
	// proto versions being used. Represents an invalid value.
	TreeType_UNKNOWN_TREE_TYPE TreeType = 0
	// Tree represents a verifiable log.
	TreeType_LOG TreeType = 1
	// Tree represents a verifiable map.
	TreeType_MAP TreeType = 2
	// Tree represents a verifiable pre-ordered log, i.e., a log whose entries are
	// placed according to sequence numbers assigned outside of Trillian.
	TreeType_PREORDERED_LOG TreeType = 3
)

func (TreeType) EnumDescriptor ¶

func (TreeType) EnumDescriptor() ([]byte, []int)

func (TreeType) String ¶

func (x TreeType) String() string

type TrillianAdminClient ¶

type TrillianAdminClient interface {
	// Lists all trees the requester has access to.
	ListTrees(ctx context.Context, in *ListTreesRequest, opts ...grpc.CallOption) (*ListTreesResponse, error)
	// Retrieves a tree by ID.
	GetTree(ctx context.Context, in *GetTreeRequest, opts ...grpc.CallOption) (*Tree, error)
	// Creates a new tree.
	// System-generated fields are not required and will be ignored if present,
	// e.g.: tree_id, create_time and update_time.
	// Returns the created tree, with all system-generated fields assigned.
	CreateTree(ctx context.Context, in *CreateTreeRequest, opts ...grpc.CallOption) (*Tree, error)
	// Updates a tree.
	// See Tree for details. Readonly fields cannot be updated.
	UpdateTree(ctx context.Context, in *UpdateTreeRequest, opts ...grpc.CallOption) (*Tree, error)
	// Soft-deletes a tree.
	// A soft-deleted tree may be undeleted for a certain period, after which
	// it'll be permanently deleted.
	DeleteTree(ctx context.Context, in *DeleteTreeRequest, opts ...grpc.CallOption) (*Tree, error)
	// Undeletes a soft-deleted a tree.
	// A soft-deleted tree may be undeleted for a certain period, after which
	// it'll be permanently deleted.
	UndeleteTree(ctx context.Context, in *UndeleteTreeRequest, opts ...grpc.CallOption) (*Tree, error)
}

TrillianAdminClient is the client API for TrillianAdmin service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewTrillianAdminClient ¶

func NewTrillianAdminClient(cc *grpc.ClientConn) TrillianAdminClient

type TrillianAdminServer ¶

type TrillianAdminServer interface {
	// Lists all trees the requester has access to.
	ListTrees(context.Context, *ListTreesRequest) (*ListTreesResponse, error)
	// Retrieves a tree by ID.
	GetTree(context.Context, *GetTreeRequest) (*Tree, error)
	// Creates a new tree.
	// System-generated fields are not required and will be ignored if present,
	// e.g.: tree_id, create_time and update_time.
	// Returns the created tree, with all system-generated fields assigned.
	CreateTree(context.Context, *CreateTreeRequest) (*Tree, error)
	// Updates a tree.
	// See Tree for details. Readonly fields cannot be updated.
	UpdateTree(context.Context, *UpdateTreeRequest) (*Tree, error)
	// Soft-deletes a tree.
	// A soft-deleted tree may be undeleted for a certain period, after which
	// it'll be permanently deleted.
	DeleteTree(context.Context, *DeleteTreeRequest) (*Tree, error)
	// Undeletes a soft-deleted a tree.
	// A soft-deleted tree may be undeleted for a certain period, after which
	// it'll be permanently deleted.
	UndeleteTree(context.Context, *UndeleteTreeRequest) (*Tree, error)
}

TrillianAdminServer is the server API for TrillianAdmin service.

type TrillianLogClient ¶

type TrillianLogClient interface {
	// QueueLeaf adds a single leaf to the queue of pending leaves for a normal
	// log.
	QueueLeaf(ctx context.Context, in *QueueLeafRequest, opts ...grpc.CallOption) (*QueueLeafResponse, error)
	// AddSequencedLeaf adds a single leaf with an assigned sequence number to a
	// pre-ordered log.
	AddSequencedLeaf(ctx context.Context, in *AddSequencedLeafRequest, opts ...grpc.CallOption) (*AddSequencedLeafResponse, error)
	// GetInclusionProof returns an inclusion proof for a leaf with a given index
	// in a particular tree.
	//
	// If the requested tree_size is larger than the server is aware of, the
	// response will include the latest known log root and an empty proof.
	GetInclusionProof(ctx context.Context, in *GetInclusionProofRequest, opts ...grpc.CallOption) (*GetInclusionProofResponse, error)
	// GetInclusionProofByHash returns an inclusion proof for any leaves that have
	// the given Merkle hash in a particular tree.
	//
	// If any of the leaves that match the given Merkle has have a leaf index that
	// is beyond the requested tree size, the corresponding proof entry will be empty.
	GetInclusionProofByHash(ctx context.Context, in *GetInclusionProofByHashRequest, opts ...grpc.CallOption) (*GetInclusionProofByHashResponse, error)
	// GetConsistencyProof returns a consistency proof between different sizes of
	// a particular tree.
	//
	// If the requested tree size is larger than the server is aware of,
	// the response will include the latest known log root and an empty proof.
	GetConsistencyProof(ctx context.Context, in *GetConsistencyProofRequest, opts ...grpc.CallOption) (*GetConsistencyProofResponse, error)
	// GetLatestSignedLogRoot returns the latest signed log root for a given tree,
	// and optionally also includes a consistency proof from an earlier tree size
	// to the new size of the tree.
	//
	// If the earlier tree size is larger than the server is aware of,
	// an InvalidArgument error is returned.
	GetLatestSignedLogRoot(ctx context.Context, in *GetLatestSignedLogRootRequest, opts ...grpc.CallOption) (*GetLatestSignedLogRootResponse, error)
	// GetSequencedLeafCount returns the total number of leaves that have been
	// integrated into the given tree.
	//
	// DO NOT USE - FOR DEBUGGING/TEST ONLY
	//
	// (Use GetLatestSignedLogRoot then de-serialize the Log Root and use
	// use the tree size field within.)
	GetSequencedLeafCount(ctx context.Context, in *GetSequencedLeafCountRequest, opts ...grpc.CallOption) (*GetSequencedLeafCountResponse, error)
	// GetEntryAndProof returns a log leaf and the corresponding inclusion proof
	// to a specified tree size, for a given leaf index in a particular tree.
	//
	// If the requested tree size is unavailable but the leaf is
	// in scope for the current tree, the returned proof will be for the
	// current tree size rather than the requested tree size.
	GetEntryAndProof(ctx context.Context, in *GetEntryAndProofRequest, opts ...grpc.CallOption) (*GetEntryAndProofResponse, error)
	// InitLog initializes a particular tree, creating the initial signed log
	// root (which will be of size 0).
	InitLog(ctx context.Context, in *InitLogRequest, opts ...grpc.CallOption) (*InitLogResponse, error)
	// QueueLeaf adds a batch of leaves to the queue of pending leaves for a
	// normal log.
	QueueLeaves(ctx context.Context, in *QueueLeavesRequest, opts ...grpc.CallOption) (*QueueLeavesResponse, error)
	// AddSequencedLeaves adds a batch of leaves with assigned sequence numbers
	// to a pre-ordered log.  The indices of the provided leaves must be contiguous.
	AddSequencedLeaves(ctx context.Context, in *AddSequencedLeavesRequest, opts ...grpc.CallOption) (*AddSequencedLeavesResponse, error)
	// GetLeavesByIndex returns a batch of leaves whose leaf indices are provided
	// in the request.
	GetLeavesByIndex(ctx context.Context, in *GetLeavesByIndexRequest, opts ...grpc.CallOption) (*GetLeavesByIndexResponse, error)
	// GetLeavesByRange returns a batch of leaves whose leaf indices are in a
	// sequential range.
	GetLeavesByRange(ctx context.Context, in *GetLeavesByRangeRequest, opts ...grpc.CallOption) (*GetLeavesByRangeResponse, error)
	// GetLeavesByHash returns a batch of leaves which are identified by their
	// Merkle leaf hash values.
	GetLeavesByHash(ctx context.Context, in *GetLeavesByHashRequest, opts ...grpc.CallOption) (*GetLeavesByHashResponse, error)
}

TrillianLogClient is the client API for TrillianLog service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewTrillianLogClient ¶

func NewTrillianLogClient(cc *grpc.ClientConn) TrillianLogClient

type TrillianLogSequencerClient ¶ added in v1.2.1

type TrillianLogSequencerClient interface {
}

TrillianLogSequencerClient is the client API for TrillianLogSequencer service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewTrillianLogSequencerClient ¶ added in v1.2.1

func NewTrillianLogSequencerClient(cc *grpc.ClientConn) TrillianLogSequencerClient

type TrillianLogSequencerServer ¶ added in v1.2.1

type TrillianLogSequencerServer interface {
}

TrillianLogSequencerServer is the server API for TrillianLogSequencer service.

type TrillianLogServer ¶

type TrillianLogServer interface {
	// QueueLeaf adds a single leaf to the queue of pending leaves for a normal
	// log.
	QueueLeaf(context.Context, *QueueLeafRequest) (*QueueLeafResponse, error)
	// AddSequencedLeaf adds a single leaf with an assigned sequence number to a
	// pre-ordered log.
	AddSequencedLeaf(context.Context, *AddSequencedLeafRequest) (*AddSequencedLeafResponse, error)
	// GetInclusionProof returns an inclusion proof for a leaf with a given index
	// in a particular tree.
	//
	// If the requested tree_size is larger than the server is aware of, the
	// response will include the latest known log root and an empty proof.
	GetInclusionProof(context.Context, *GetInclusionProofRequest) (*GetInclusionProofResponse, error)
	// GetInclusionProofByHash returns an inclusion proof for any leaves that have
	// the given Merkle hash in a particular tree.
	//
	// If any of the leaves that match the given Merkle has have a leaf index that
	// is beyond the requested tree size, the corresponding proof entry will be empty.
	GetInclusionProofByHash(context.Context, *GetInclusionProofByHashRequest) (*GetInclusionProofByHashResponse, error)
	// GetConsistencyProof returns a consistency proof between different sizes of
	// a particular tree.
	//
	// If the requested tree size is larger than the server is aware of,
	// the response will include the latest known log root and an empty proof.
	GetConsistencyProof(context.Context, *GetConsistencyProofRequest) (*GetConsistencyProofResponse, error)
	// GetLatestSignedLogRoot returns the latest signed log root for a given tree,
	// and optionally also includes a consistency proof from an earlier tree size
	// to the new size of the tree.
	//
	// If the earlier tree size is larger than the server is aware of,
	// an InvalidArgument error is returned.
	GetLatestSignedLogRoot(context.Context, *GetLatestSignedLogRootRequest) (*GetLatestSignedLogRootResponse, error)
	// GetSequencedLeafCount returns the total number of leaves that have been
	// integrated into the given tree.
	//
	// DO NOT USE - FOR DEBUGGING/TEST ONLY
	//
	// (Use GetLatestSignedLogRoot then de-serialize the Log Root and use
	// use the tree size field within.)
	GetSequencedLeafCount(context.Context, *GetSequencedLeafCountRequest) (*GetSequencedLeafCountResponse, error)
	// GetEntryAndProof returns a log leaf and the corresponding inclusion proof
	// to a specified tree size, for a given leaf index in a particular tree.
	//
	// If the requested tree size is unavailable but the leaf is
	// in scope for the current tree, the returned proof will be for the
	// current tree size rather than the requested tree size.
	GetEntryAndProof(context.Context, *GetEntryAndProofRequest) (*GetEntryAndProofResponse, error)
	// InitLog initializes a particular tree, creating the initial signed log
	// root (which will be of size 0).
	InitLog(context.Context, *InitLogRequest) (*InitLogResponse, error)
	// QueueLeaf adds a batch of leaves to the queue of pending leaves for a
	// normal log.
	QueueLeaves(context.Context, *QueueLeavesRequest) (*QueueLeavesResponse, error)
	// AddSequencedLeaves adds a batch of leaves with assigned sequence numbers
	// to a pre-ordered log.  The indices of the provided leaves must be contiguous.
	AddSequencedLeaves(context.Context, *AddSequencedLeavesRequest) (*AddSequencedLeavesResponse, error)
	// GetLeavesByIndex returns a batch of leaves whose leaf indices are provided
	// in the request.
	GetLeavesByIndex(context.Context, *GetLeavesByIndexRequest) (*GetLeavesByIndexResponse, error)
	// GetLeavesByRange returns a batch of leaves whose leaf indices are in a
	// sequential range.
	GetLeavesByRange(context.Context, *GetLeavesByRangeRequest) (*GetLeavesByRangeResponse, error)
	// GetLeavesByHash returns a batch of leaves which are identified by their
	// Merkle leaf hash values.
	GetLeavesByHash(context.Context, *GetLeavesByHashRequest) (*GetLeavesByHashResponse, error)
}

TrillianLogServer is the server API for TrillianLog service.

type TrillianMapClient ¶

type TrillianMapClient interface {
	// GetLeaves returns an inclusion proof for each index requested.
	// For indexes that do not exist, the inclusion proof will use nil for the
	// empty leaf value.
	GetLeaf(ctx context.Context, in *GetMapLeafRequest, opts ...grpc.CallOption) (*GetMapLeafResponse, error)
	GetLeafByRevision(ctx context.Context, in *GetMapLeafByRevisionRequest, opts ...grpc.CallOption) (*GetMapLeafResponse, error)
	GetLeaves(ctx context.Context, in *GetMapLeavesRequest, opts ...grpc.CallOption) (*GetMapLeavesResponse, error)
	GetLeavesByRevision(ctx context.Context, in *GetMapLeavesByRevisionRequest, opts ...grpc.CallOption) (*GetMapLeavesResponse, error)
	// Deprecated: this should only be used by writers, which should migrate
	// to TrillianMapWrite#GetLeavesByRevision
	GetLeavesByRevisionNoProof(ctx context.Context, in *GetMapLeavesByRevisionRequest, opts ...grpc.CallOption) (*MapLeaves, error)
	// GetLastInRangeByRevision returns the last leaf in a requested range.
	GetLastInRangeByRevision(ctx context.Context, in *GetLastInRangeByRevisionRequest, opts ...grpc.CallOption) (*MapLeaf, error)
	// Deprecated: this should only be used by writers, which should migrate
	// to TrillianMapWrite#WriteLeaves
	SetLeaves(ctx context.Context, in *SetMapLeavesRequest, opts ...grpc.CallOption) (*SetMapLeavesResponse, error)
	GetSignedMapRoot(ctx context.Context, in *GetSignedMapRootRequest, opts ...grpc.CallOption) (*GetSignedMapRootResponse, error)
	GetSignedMapRootByRevision(ctx context.Context, in *GetSignedMapRootByRevisionRequest, opts ...grpc.CallOption) (*GetSignedMapRootResponse, error)
	InitMap(ctx context.Context, in *InitMapRequest, opts ...grpc.CallOption) (*InitMapResponse, error)
}

TrillianMapClient is the client API for TrillianMap service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewTrillianMapClient ¶

func NewTrillianMapClient(cc *grpc.ClientConn) TrillianMapClient

type TrillianMapServer ¶

type TrillianMapServer interface {
	// GetLeaves returns an inclusion proof for each index requested.
	// For indexes that do not exist, the inclusion proof will use nil for the
	// empty leaf value.
	GetLeaf(context.Context, *GetMapLeafRequest) (*GetMapLeafResponse, error)
	GetLeafByRevision(context.Context, *GetMapLeafByRevisionRequest) (*GetMapLeafResponse, error)
	GetLeaves(context.Context, *GetMapLeavesRequest) (*GetMapLeavesResponse, error)
	GetLeavesByRevision(context.Context, *GetMapLeavesByRevisionRequest) (*GetMapLeavesResponse, error)
	// Deprecated: this should only be used by writers, which should migrate
	// to TrillianMapWrite#GetLeavesByRevision
	GetLeavesByRevisionNoProof(context.Context, *GetMapLeavesByRevisionRequest) (*MapLeaves, error)
	// GetLastInRangeByRevision returns the last leaf in a requested range.
	GetLastInRangeByRevision(context.Context, *GetLastInRangeByRevisionRequest) (*MapLeaf, error)
	// Deprecated: this should only be used by writers, which should migrate
	// to TrillianMapWrite#WriteLeaves
	SetLeaves(context.Context, *SetMapLeavesRequest) (*SetMapLeavesResponse, error)
	GetSignedMapRoot(context.Context, *GetSignedMapRootRequest) (*GetSignedMapRootResponse, error)
	GetSignedMapRootByRevision(context.Context, *GetSignedMapRootByRevisionRequest) (*GetSignedMapRootResponse, error)
	InitMap(context.Context, *InitMapRequest) (*InitMapResponse, error)
}

TrillianMapServer is the server API for TrillianMap service.

type TrillianMapWriteClient ¶ added in v1.3.0

type TrillianMapWriteClient interface {
	// GetLeavesByRevision returns the requested map leaves without inclusion proofs.
	// This API is designed for internal use where verification is not needed.
	GetLeavesByRevision(ctx context.Context, in *GetMapLeavesByRevisionRequest, opts ...grpc.CallOption) (*MapLeaves, error)
	// WriteLeaves sets the values for the provided leaves, and returns the new map
	// revision if successful.
	WriteLeaves(ctx context.Context, in *WriteMapLeavesRequest, opts ...grpc.CallOption) (*WriteMapLeavesResponse, error)
}

TrillianMapWriteClient is the client API for TrillianMapWrite service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewTrillianMapWriteClient ¶ added in v1.3.0

func NewTrillianMapWriteClient(cc *grpc.ClientConn) TrillianMapWriteClient

type TrillianMapWriteServer ¶ added in v1.3.0

type TrillianMapWriteServer interface {
	// GetLeavesByRevision returns the requested map leaves without inclusion proofs.
	// This API is designed for internal use where verification is not needed.
	GetLeavesByRevision(context.Context, *GetMapLeavesByRevisionRequest) (*MapLeaves, error)
	// WriteLeaves sets the values for the provided leaves, and returns the new map
	// revision if successful.
	WriteLeaves(context.Context, *WriteMapLeavesRequest) (*WriteMapLeavesResponse, error)
}

TrillianMapWriteServer is the server API for TrillianMapWrite service.

type UndeleteTreeRequest ¶ added in v1.0.2

type UndeleteTreeRequest struct {
	// ID of the tree to undelete.
	TreeId               int64    `protobuf:"varint,1,opt,name=tree_id,json=treeId,proto3" json:"tree_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

UndeleteTree request.

func (*UndeleteTreeRequest) Descriptor ¶ added in v1.0.2

func (*UndeleteTreeRequest) Descriptor() ([]byte, []int)

func (*UndeleteTreeRequest) GetTreeId ¶ added in v1.0.2

func (m *UndeleteTreeRequest) GetTreeId() int64

func (*UndeleteTreeRequest) ProtoMessage ¶ added in v1.0.2

func (*UndeleteTreeRequest) ProtoMessage()

func (*UndeleteTreeRequest) Reset ¶ added in v1.0.2

func (m *UndeleteTreeRequest) Reset()

func (*UndeleteTreeRequest) String ¶ added in v1.0.2

func (m *UndeleteTreeRequest) String() string

func (*UndeleteTreeRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *UndeleteTreeRequest) XXX_DiscardUnknown()

func (*UndeleteTreeRequest) XXX_Marshal ¶ added in v1.2.1

func (m *UndeleteTreeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UndeleteTreeRequest) XXX_Merge ¶ added in v1.2.1

func (m *UndeleteTreeRequest) XXX_Merge(src proto.Message)

func (*UndeleteTreeRequest) XXX_Size ¶ added in v1.2.1

func (m *UndeleteTreeRequest) XXX_Size() int

func (*UndeleteTreeRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *UndeleteTreeRequest) XXX_Unmarshal(b []byte) error

type UnimplementedTrillianAdminServer ¶ added in v1.3.0

type UnimplementedTrillianAdminServer struct {
}

UnimplementedTrillianAdminServer can be embedded to have forward compatible implementations.

func (*UnimplementedTrillianAdminServer) CreateTree ¶ added in v1.3.0

func (*UnimplementedTrillianAdminServer) DeleteTree ¶ added in v1.3.0

func (*UnimplementedTrillianAdminServer) GetTree ¶ added in v1.3.0

func (*UnimplementedTrillianAdminServer) ListTrees ¶ added in v1.3.0

func (*UnimplementedTrillianAdminServer) UndeleteTree ¶ added in v1.3.0

func (*UnimplementedTrillianAdminServer) UpdateTree ¶ added in v1.3.0

type UnimplementedTrillianLogSequencerServer ¶ added in v1.3.0

type UnimplementedTrillianLogSequencerServer struct {
}

UnimplementedTrillianLogSequencerServer can be embedded to have forward compatible implementations.

type UnimplementedTrillianLogServer ¶ added in v1.3.0

type UnimplementedTrillianLogServer struct {
}

UnimplementedTrillianLogServer can be embedded to have forward compatible implementations.

func (*UnimplementedTrillianLogServer) AddSequencedLeaf ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) AddSequencedLeaves ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetConsistencyProof ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetEntryAndProof ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetInclusionProof ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetInclusionProofByHash ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetLatestSignedLogRoot ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetLeavesByHash ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetLeavesByIndex ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetLeavesByRange ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) GetSequencedLeafCount ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) InitLog ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) QueueLeaf ¶ added in v1.3.0

func (*UnimplementedTrillianLogServer) QueueLeaves ¶ added in v1.3.0

type UnimplementedTrillianMapServer ¶ added in v1.3.0

type UnimplementedTrillianMapServer struct {
}

UnimplementedTrillianMapServer can be embedded to have forward compatible implementations.

func (*UnimplementedTrillianMapServer) GetLastInRangeByRevision ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetLeaf ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetLeafByRevision ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetLeaves ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetLeavesByRevision ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetLeavesByRevisionNoProof ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetSignedMapRoot ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) GetSignedMapRootByRevision ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) InitMap ¶ added in v1.3.0

func (*UnimplementedTrillianMapServer) SetLeaves ¶ added in v1.3.0

type UnimplementedTrillianMapWriteServer ¶ added in v1.3.0

type UnimplementedTrillianMapWriteServer struct {
}

UnimplementedTrillianMapWriteServer can be embedded to have forward compatible implementations.

func (*UnimplementedTrillianMapWriteServer) GetLeavesByRevision ¶ added in v1.3.0

func (*UnimplementedTrillianMapWriteServer) WriteLeaves ¶ added in v1.3.0

type UpdateTreeRequest ¶

type UpdateTreeRequest struct {
	// Tree to be updated.
	Tree *Tree `protobuf:"bytes,1,opt,name=tree,proto3" json:"tree,omitempty"`
	// Fields modified by the update request.
	// For example: "tree_state", "display_name", "description".
	UpdateMask           *field_mask.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

UpdateTree request.

func (*UpdateTreeRequest) Descriptor ¶

func (*UpdateTreeRequest) Descriptor() ([]byte, []int)

func (*UpdateTreeRequest) GetTree ¶

func (m *UpdateTreeRequest) GetTree() *Tree

func (*UpdateTreeRequest) GetUpdateMask ¶

func (m *UpdateTreeRequest) GetUpdateMask() *field_mask.FieldMask

func (*UpdateTreeRequest) ProtoMessage ¶

func (*UpdateTreeRequest) ProtoMessage()

func (*UpdateTreeRequest) Reset ¶

func (m *UpdateTreeRequest) Reset()

func (*UpdateTreeRequest) String ¶

func (m *UpdateTreeRequest) String() string

func (*UpdateTreeRequest) XXX_DiscardUnknown ¶ added in v1.2.1

func (m *UpdateTreeRequest) XXX_DiscardUnknown()

func (*UpdateTreeRequest) XXX_Marshal ¶ added in v1.2.1

func (m *UpdateTreeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UpdateTreeRequest) XXX_Merge ¶ added in v1.2.1

func (m *UpdateTreeRequest) XXX_Merge(src proto.Message)

func (*UpdateTreeRequest) XXX_Size ¶ added in v1.2.1

func (m *UpdateTreeRequest) XXX_Size() int

func (*UpdateTreeRequest) XXX_Unmarshal ¶ added in v1.2.1

func (m *UpdateTreeRequest) XXX_Unmarshal(b []byte) error

type WriteMapLeavesRequest ¶ added in v1.3.0

type WriteMapLeavesRequest struct {
	MapId int64 `protobuf:"varint,1,opt,name=map_id,json=mapId,proto3" json:"map_id,omitempty"`
	// The leaves being set must have unique Index values within the request.
	Leaves []*MapLeaf `protobuf:"bytes,2,rep,name=leaves,proto3" json:"leaves,omitempty"`
	// Metadata that the Map should associate with the new Map root after
	// incorporating the leaf changes.  The metadata will be reflected in the
	// Map Root published for this revision.
	// Map personalities should use metadata to persist any state needed later
	// to continue mapping from an external data source.
	Metadata []byte `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"`
	// The map revision to associate the leaves with. The request will fail if
	// this revision already exists, does not match the current write revision, or
	// is not positive. Note that revision = 0 is reserved for the empty tree.
	ExpectRevision       int64    `protobuf:"varint,4,opt,name=expect_revision,json=expectRevision,proto3" json:"expect_revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*WriteMapLeavesRequest) Descriptor ¶ added in v1.3.0

func (*WriteMapLeavesRequest) Descriptor() ([]byte, []int)

func (*WriteMapLeavesRequest) GetExpectRevision ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) GetExpectRevision() int64

func (*WriteMapLeavesRequest) GetLeaves ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) GetLeaves() []*MapLeaf

func (*WriteMapLeavesRequest) GetMapId ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) GetMapId() int64

func (*WriteMapLeavesRequest) GetMetadata ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) GetMetadata() []byte

func (*WriteMapLeavesRequest) ProtoMessage ¶ added in v1.3.0

func (*WriteMapLeavesRequest) ProtoMessage()

func (*WriteMapLeavesRequest) Reset ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) Reset()

func (*WriteMapLeavesRequest) String ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) String() string

func (*WriteMapLeavesRequest) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) XXX_DiscardUnknown()

func (*WriteMapLeavesRequest) XXX_Marshal ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*WriteMapLeavesRequest) XXX_Merge ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) XXX_Merge(src proto.Message)

func (*WriteMapLeavesRequest) XXX_Size ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) XXX_Size() int

func (*WriteMapLeavesRequest) XXX_Unmarshal ¶ added in v1.3.0

func (m *WriteMapLeavesRequest) XXX_Unmarshal(b []byte) error

type WriteMapLeavesResponse ¶ added in v1.3.0

type WriteMapLeavesResponse struct {
	// The map revision that the leaves will be published at.
	// This may be accompanied by a proof that the write request has been included
	// in an input log in the future.
	Revision             int64    `protobuf:"varint,1,opt,name=revision,proto3" json:"revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (*WriteMapLeavesResponse) Descriptor ¶ added in v1.3.0

func (*WriteMapLeavesResponse) Descriptor() ([]byte, []int)

func (*WriteMapLeavesResponse) GetRevision ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) GetRevision() int64

func (*WriteMapLeavesResponse) ProtoMessage ¶ added in v1.3.0

func (*WriteMapLeavesResponse) ProtoMessage()

func (*WriteMapLeavesResponse) Reset ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) Reset()

func (*WriteMapLeavesResponse) String ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) String() string

func (*WriteMapLeavesResponse) XXX_DiscardUnknown ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) XXX_DiscardUnknown()

func (*WriteMapLeavesResponse) XXX_Marshal ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*WriteMapLeavesResponse) XXX_Merge ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) XXX_Merge(src proto.Message)

func (*WriteMapLeavesResponse) XXX_Size ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) XXX_Size() int

func (*WriteMapLeavesResponse) XXX_Unmarshal ¶ added in v1.3.0

func (m *WriteMapLeavesResponse) XXX_Unmarshal(b []byte) error

Directories ¶

Path Synopsis
Package client verifies responses from the Trillian log.
Package client verifies responses from the Trillian log.
backoff
Package backoff allows retrying an operation with backoff.
Package backoff allows retrying an operation with backoff.
timeout
Package timeout enforces a maximum timeout on all outgoing rpcs.
Package timeout enforces a maximum timeout on all outgoing rpcs.
cmd
createtree
Package main contains the implementation and entry point for the createtree command.
Package main contains the implementation and entry point for the createtree command.
deletetree
Package main contains the implementation and entry point for the deletetree command.
Package main contains the implementation and entry point for the deletetree command.
get_tree_public_key
Package main contains the implementation and entry point for the get_tree_public_key command.
Package main contains the implementation and entry point for the get_tree_public_key command.
updatetree
Package main contains the implementation and entry point for the updatetree command.
Package main contains the implementation and entry point for the updatetree command.
Package crypto provides signing functionality for Trillian.
Package crypto provides signing functionality for Trillian.
keys
Package keys provides access to public and private keys for signing and verification of signatures.
Package keys provides access to public and private keys for signing and verification of signatures.
keys/der/proto
Package proto registers a DER keys.ProtoHandler using keys.RegisterHandler.
Package proto registers a DER keys.ProtoHandler using keys.RegisterHandler.
keys/pem/proto
Package proto registers a PEM keys.ProtoHandler using keys.RegisterHandler.
Package proto registers a PEM keys.ProtoHandler using keys.RegisterHandler.
keys/pkcs11
Package pkcs11 provides access to private keys using a PKCS#11 interface.
Package pkcs11 provides access to private keys using a PKCS#11 interface.
keys/pkcs11/proto
Package proto registers a PKCS#11 keys.ProtoHandler using keys.RegisterHandler.
Package proto registers a PKCS#11 keys.ProtoHandler using keys.RegisterHandler.
keys/testonly
Package testonly contains code and data that should only be used by tests.
Package testonly contains code and data that should only be used by tests.
docs
merkletree/treetex
A binary to produce LaTeX documents representing Merkle trees.
A binary to produce LaTeX documents representing Merkle trees.
storage/commit_log
The commit_log binary runs a simulation of the design for a commit-log based signer, with a simulated Kafka-like interface and a simulated master election package (which can be triggered to incorrectly report multiple masters), and with the core algorithm in the signer code.
The commit_log binary runs a simulation of the design for a commit-log based signer, with a simulated Kafka-like interface and a simulated master election package (which can be triggered to incorrectly report multiple masters), and with the core algorithm in the signer code.
storage/commit_log/signer
Package signer is a sample implementation of a commit-log based signer.
Package signer is a sample implementation of a commit-log based signer.
storage/commit_log/simelection
Package simelection simulates a master election.
Package simelection simulates a master election.
storage/commit_log/simkafka
Package simkafka is a toy simulation of a Kafka commit log.
Package simkafka is a toy simulation of a Kafka commit log.
examples
ct/ctmapper
Package ctmapper maps from a verifiable log to verifiable map.
Package ctmapper maps from a verifiable log to verifiable map.
ct/ctmapper/lookup
The lookup binary looks up a specific ID in a map.
The lookup binary looks up a specific ID in a map.
ct/ctmapper/mapper
The mapper binary performs log->map mapping.
The mapper binary performs log->map mapping.
Package extension provides an extension mechanism for Trillian code to access fork-specific functionality.
Package extension provides an extension mechanism for Trillian code to access fork-specific functionality.
Package integration contains some integration tests which are intended to serve as a way of checking that various top-level binaries work as intended, as well as providing a simple example of how to run and use the various servers.
Package integration contains some integration tests which are intended to serve as a way of checking that various top-level binaries work as intended, as well as providing a simple example of how to run and use the various servers.
admin
Package admin contains integration tests for the Admin server.
Package admin contains integration tests for the Admin server.
quota
Package quota contains quota-related integration tests.
Package quota contains quota-related integration tests.
storagetest
Package storagetest verifies that storage interfaces behave correctly
Package storagetest verifies that storage interfaces behave correctly
Package log holds the code that is specific to Trillian logs core operation, particularly the code for sequencing.
Package log holds the code that is specific to Trillian logs core operation, particularly the code for sequencing.
Package merkle provides Merkle tree manipulation functions.
Package merkle provides Merkle tree manipulation functions.
compact
Package compact provides compact Merkle tree data structures.
Package compact provides compact Merkle tree data structures.
coniks
Package coniks provides hashing for maps.
Package coniks provides hashing for maps.
maphasher
Package maphasher provides hashing for maps.
Package maphasher provides hashing for maps.
rfc6962
Package rfc6962 provides hashing functionality according to RFC6962.
Package rfc6962 provides hashing functionality according to RFC6962.
smt
Package smt contains the implementation of the sparse Merkle tree logic.
Package smt contains the implementation of the sparse Merkle tree logic.
testonly
Package testonly contains code and data for testing Merkle trees.
Package testonly contains code and data for testing Merkle trees.
Package monitoring provides monitoring functionality.
Package monitoring provides monitoring functionality.
prometheus
Package prometheus provides a Prometheus-based implementation of the MetricFactory abstraction.
Package prometheus provides a Prometheus-based implementation of the MetricFactory abstraction.
prometheus/etcdiscover
The etcdiscover binary monitors etcd to track the set of instances that support a gRPC service, and updates a file so that Prometheus can track those instances.
The etcdiscover binary monitors etcd to track the set of instances that support a gRPC service, and updates a file so that Prometheus can track those instances.
Package quota defines Trillian's Quota Management service.
Package quota defines Trillian's Quota Management service.
cacheqm
Package cacheqm contains a caching quota.Manager implementation.
Package cacheqm contains a caching quota.Manager implementation.
etcd/etcdqm
Package etcdqm contains an etcd-based quota.Manager implementation.
Package etcdqm contains an etcd-based quota.Manager implementation.
etcd/quotaapi
Package quotaapi provides a Quota admin server implementation.
Package quotaapi provides a Quota admin server implementation.
etcd/quotapb
Package quotapb contains definitions for quota API protos and RPC service.
Package quotapb contains definitions for quota API protos and RPC service.
etcd/storage
Package storage contains storage classes for etcd-based quotas.
Package storage contains storage classes for etcd-based quotas.
mysqlqm
Package mysqlqm defines a MySQL-based quota.Manager implementation.
Package mysqlqm defines a MySQL-based quota.Manager implementation.
scripts
Package server holds code for running Trillian servers.
Package server holds code for running Trillian servers.
admin
Package admin contains the TrillianAdminServer implementation.
Package admin contains the TrillianAdminServer implementation.
errors
Package errors contains utilities to translate TrillianErrors to gRPC errors.
Package errors contains utilities to translate TrillianErrors to gRPC errors.
interceptor
Package interceptor defines gRPC interceptors for Trillian.
Package interceptor defines gRPC interceptors for Trillian.
trillian_log_server
The trillian_log_server binary runs the Trillian log server, and also provides an admin server.
The trillian_log_server binary runs the Trillian log server, and also provides an admin server.
trillian_log_signer
The trillian_log_signer binary runs the log signing code.
The trillian_log_signer binary runs the log signing code.
skylog
core
Package core contains code for a scalable Merkle tree construction.
Package core contains code for a scalable Merkle tree construction.
storage
Package storage contains Skylog storage API and helpers.
Package storage contains Skylog storage API and helpers.
storage/gcp/cloudspanner
Package cloudspanner provides implementation of the Skylog storage API in Cloud Spanner.
Package cloudspanner provides implementation of the Skylog storage API in Cloud Spanner.
storage/gcp/gcppb
Package gcppb contains proto messages for GCP-based Skylog storage.
Package gcppb contains proto messages for GCP-based Skylog storage.
storage/gcp/pubsub
Package contains a binary that sends Merkle tree building jobs to a collection of workers through a GCP Pub/Sub topic.
Package contains a binary that sends Merkle tree building jobs to a collection of workers through a GCP Pub/Sub topic.
Package storage provides general interfaces to Trillian storage layers.
Package storage provides general interfaces to Trillian storage layers.
cache
Package cache provides subtree caching functionality.
Package cache provides subtree caching functionality.
memory
Package memory provides a simple in-process implementation of the tree- and log-storage interfaces.
Package memory provides a simple in-process implementation of the tree- and log-storage interfaces.
mysql
Package mysql provides a MySQL-based storage layer implementation.
Package mysql provides a MySQL-based storage layer implementation.
postgres/testdb
Package testdb creates new databases for tests.
Package testdb creates new databases for tests.
testdb
Package testdb creates new databases for tests.
Package testdb creates new databases for tests.
testonly
Package testonly holds test-specific code for Trillian storage layers.
Package testonly holds test-specific code for Trillian storage layers.
tools/dump_tree
The dump_tree program uses the in memory storage implementation to create a sequenced log tree of a particular size using known leaf data and then dumps out the resulting SubTree protos for examination and debugging.
The dump_tree program uses the in memory storage implementation to create a sequenced log tree of a particular size using known leaf data and then dumps out the resulting SubTree protos for examination and debugging.
tools/hasher
The hasher program provides a simple CLI for producing Merkle tree hashes.
The hasher program provides a simple CLI for producing Merkle tree hashes.
tools/log_client
The log_client binary retrieves leaves from a log.
The log_client binary retrieves leaves from a log.
tree
Package tree defines types that help navigating a tree in storage.
Package tree defines types that help navigating a tree in storage.
Package testonly contains code and data that should only be used by tests.
Package testonly contains code and data that should only be used by tests.
flagsaver
Package flagsaver provides a simple way to save and restore flag values.
Package flagsaver provides a simple way to save and restore flag values.
hammer/maphammer
maphammer is a stress/load test for a Trillian Map.
maphammer is a stress/load test for a Trillian Map.
hammer/mapreplay
mapreplay replays a log of Trillian Map requests.
mapreplay replays a log of Trillian Map requests.
integration
Package integration provides test-only code for performing integrated tests of Trillian functionality.
Package integration provides test-only code for performing integrated tests of Trillian functionality.
matchers
Package matchers contains additional gomock matchers.
Package matchers contains additional gomock matchers.
mdm
Package mdm provides test-only code for checking the merge delay of a Trillian log.
Package mdm provides test-only code for checking the merge delay of a Trillian log.
mdm/mdmtest
The mdmtest binary runs merge delay tests against a Trillian Log.
The mdmtest binary runs merge delay tests against a Trillian Log.
tmock
Package tmock is a generated GoMock package.
Package tmock is a generated GoMock package.
Package trees contains utility method for retrieving trees and acquiring objects (hashers, signers) associated with them.
Package trees contains utility method for retrieving trees and acquiring objects (hashers, signers) associated with them.
Package types defines serialization and parsing functions for SignedLogRoot and SignedMapRoot fields.
Package types defines serialization and parsing functions for SignedLogRoot and SignedMapRoot fields.
Package util holds various utility functions used throughout the Trillian codebase.
Package util holds various utility functions used throughout the Trillian codebase.
clock
Package clock contains time utilities, and types that allow mocking system time in tests.
Package clock contains time utilities, and types that allow mocking system time in tests.
election2
Package election2 provides master election tools, and interfaces for plugging in a custom underlying mechanism.
Package election2 provides master election tools, and interfaces for plugging in a custom underlying mechanism.
election2/etcd
Package etcd provides an implementation of master election based on etcd.
Package etcd provides an implementation of master election based on etcd.
election2/testonly
Package testonly contains an Election implementation for testing.
Package testonly contains an Election implementation for testing.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL