anchor

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2020 License: AGPL-3.0 Imports: 8 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Anchor_Status_name = map[int32]string{
	0: "ERROR",
	1: "STOPPED",
	2: "RUNNING",
}
View Source
var Anchor_Status_value = map[string]int32{
	"ERROR":   0,
	"STOPPED": 1,
	"RUNNING": 2,
}
View Source
var Anchor_Type_name = map[int32]string{
	0: "ETH",
	3: "ETH_MAINNET",
	4: "ETH_ELASTOS",
	9: "ETH_GOCHAIN",
	1: "BTC",
	5: "BTC_MAINNET",
	2: "CHP",
	6: "HEDERA",
	7: "HEDERA_MAINNET",
	8: "HYPERLEDGER",
}
View Source
var Anchor_Type_value = map[string]int32{
	"ETH":            0,
	"ETH_MAINNET":    3,
	"ETH_ELASTOS":    4,
	"ETH_GOCHAIN":    9,
	"BTC":            1,
	"BTC_MAINNET":    5,
	"CHP":            2,
	"HEDERA":         6,
	"HEDERA_MAINNET": 7,
	"HYPERLEDGER":    8,
}
View Source
var Batch_Status_name = map[int32]string{
	0: "ERROR",
	1: "BATCHING",
	2: "QUEUING",
	3: "PROCESSING",
	4: "PENDING",
	5: "CONFIRMED",
}
View Source
var Batch_Status_value = map[string]int32{
	"ERROR":      0,
	"BATCHING":   1,
	"QUEUING":    2,
	"PROCESSING": 3,
	"PENDING":    4,
	"CONFIRMED":  5,
}
View Source
var Proof_Format_name = map[int32]string{
	0: "CHP_PATH",
	1: "ETH_TRIE",
	2: "CHP_PATH_SIGNED",
	3: "ETH_TRIE_SIGNED",
}
View Source
var Proof_Format_value = map[string]int32{
	"CHP_PATH":        0,
	"ETH_TRIE":        1,
	"CHP_PATH_SIGNED": 2,
	"ETH_TRIE_SIGNED": 3,
}

Functions

func GetBlockNumberString

func GetBlockNumberString(
	anchorType string,
	blockTime,
	blockTimeNano,
	blockNumber uint64) string

GetBlockNumberString gets the string representation of the block number concept. For Hedera, it is `blockTime.blockTimeNano`; for the rest, it is `blockNumber`

func RegisterAnchorServiceServer

func RegisterAnchorServiceServer(s *grpc.Server, srv AnchorServiceServer)

Types

type Anchor

type Anchor struct {
	// Type is the anchor type
	Type Anchor_Type `protobuf:"varint,1,opt,name=type,proto3,enum=anchor.Anchor_Type" json:"type,omitempty"`
	// Status is the anchor status
	Status Anchor_Status `protobuf:"varint,2,opt,name=status,proto3,enum=anchor.Anchor_Status" json:"status,omitempty"`
	// Error is the error message when the anchor status is ERROR
	Error string `protobuf:"bytes,3,opt,name=error,proto3" json:"error,omitempty"`
	// SupportedFormats are the supported proof formats of the anchor
	SupportedFormats     []Proof_Format `` /* 142-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

Anchor represents an anchor of a blockchain, through which a hash can be anchored to that blockchain

func (*Anchor) Descriptor

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

func (*Anchor) GetError

func (m *Anchor) GetError() string

func (*Anchor) GetStatus

func (m *Anchor) GetStatus() Anchor_Status

func (*Anchor) GetSupportedFormats

func (m *Anchor) GetSupportedFormats() []Proof_Format

func (*Anchor) GetType

func (m *Anchor) GetType() Anchor_Type

func (*Anchor) ProtoMessage

func (*Anchor) ProtoMessage()

func (*Anchor) Reset

func (m *Anchor) Reset()

func (*Anchor) String

func (m *Anchor) String() string

func (*Anchor) XXX_DiscardUnknown

func (m *Anchor) XXX_DiscardUnknown()

func (*Anchor) XXX_Marshal

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

func (*Anchor) XXX_Merge

func (dst *Anchor) XXX_Merge(src proto.Message)

func (*Anchor) XXX_Size

func (m *Anchor) XXX_Size() int

func (*Anchor) XXX_Unmarshal

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

type AnchorRequest

type AnchorRequest struct {
	// Type is the anchor type
	Type                 Anchor_Type `protobuf:"varint,1,opt,name=type,proto3,enum=anchor.Anchor_Type" json:"type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

AnchorRequest represents a request to get information for the given anchor type

func (*AnchorRequest) Descriptor

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

func (*AnchorRequest) GetType

func (m *AnchorRequest) GetType() Anchor_Type

func (*AnchorRequest) ProtoMessage

func (*AnchorRequest) ProtoMessage()

func (*AnchorRequest) Reset

func (m *AnchorRequest) Reset()

func (*AnchorRequest) String

func (m *AnchorRequest) String() string

func (*AnchorRequest) XXX_DiscardUnknown

func (m *AnchorRequest) XXX_DiscardUnknown()

func (*AnchorRequest) XXX_Marshal

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

func (*AnchorRequest) XXX_Merge

func (dst *AnchorRequest) XXX_Merge(src proto.Message)

func (*AnchorRequest) XXX_Size

func (m *AnchorRequest) XXX_Size() int

func (*AnchorRequest) XXX_Unmarshal

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

type AnchorServiceClient

type AnchorServiceClient interface {
	// GetAnchors gets all anchors
	GetAnchors(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (AnchorService_GetAnchorsClient, error)
	// GetAnchor gets an anchor
	GetAnchor(ctx context.Context, in *AnchorRequest, opts ...grpc.CallOption) (*Anchor, error)
	// GetProof gets a proof
	GetProof(ctx context.Context, in *ProofRequest, opts ...grpc.CallOption) (*Proof, error)
	// SubmitProof submits a proof for the given hash
	SubmitProof(ctx context.Context, in *SubmitProofRequest, opts ...grpc.CallOption) (*Proof, error)
	// VerifyProof verifies the given proof. When the proof is unverifiable, an
	// exception is thrown
	VerifyProof(ctx context.Context, in *VerifyProofRequest, opts ...grpc.CallOption) (*VerifyProofReply, error)
	// GetBatch gets a batch
	GetBatch(ctx context.Context, in *BatchRequest, opts ...grpc.CallOption) (*Batch, error)
	// SubscribeBatches subscribes to batch status updates
	SubscribeBatches(ctx context.Context, in *SubscribeBatchesRequest, opts ...grpc.CallOption) (AnchorService_SubscribeBatchesClient, error)
}

AnchorServiceClient is the client API for AnchorService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewAnchorServiceClient

func NewAnchorServiceClient(cc *grpc.ClientConn) AnchorServiceClient

type AnchorServiceServer

type AnchorServiceServer interface {
	// GetAnchors gets all anchors
	GetAnchors(*empty.Empty, AnchorService_GetAnchorsServer) error
	// GetAnchor gets an anchor
	GetAnchor(context.Context, *AnchorRequest) (*Anchor, error)
	// GetProof gets a proof
	GetProof(context.Context, *ProofRequest) (*Proof, error)
	// SubmitProof submits a proof for the given hash
	SubmitProof(context.Context, *SubmitProofRequest) (*Proof, error)
	// VerifyProof verifies the given proof. When the proof is unverifiable, an
	// exception is thrown
	VerifyProof(context.Context, *VerifyProofRequest) (*VerifyProofReply, error)
	// GetBatch gets a batch
	GetBatch(context.Context, *BatchRequest) (*Batch, error)
	// SubscribeBatches subscribes to batch status updates
	SubscribeBatches(*SubscribeBatchesRequest, AnchorService_SubscribeBatchesServer) error
}

AnchorServiceServer is the server API for AnchorService service.

type AnchorService_GetAnchorsClient

type AnchorService_GetAnchorsClient interface {
	Recv() (*Anchor, error)
	grpc.ClientStream
}

type AnchorService_GetAnchorsServer

type AnchorService_GetAnchorsServer interface {
	Send(*Anchor) error
	grpc.ServerStream
}

type AnchorService_SubscribeBatchesClient

type AnchorService_SubscribeBatchesClient interface {
	Recv() (*Batch, error)
	grpc.ClientStream
}

type AnchorService_SubscribeBatchesServer

type AnchorService_SubscribeBatchesServer interface {
	Send(*Batch) error
	grpc.ServerStream
}

type Anchor_Status

type Anchor_Status int32

Status represents an anchor's status

const (
	// Error means the anchor has an error
	Anchor_ERROR Anchor_Status = 0
	// STOPPED means the anchor is stopped
	Anchor_STOPPED Anchor_Status = 1
	// RUNNING means the anchor is running
	Anchor_RUNNING Anchor_Status = 2
)

func (Anchor_Status) EnumDescriptor

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

func (Anchor_Status) String

func (x Anchor_Status) String() string

type Anchor_Type

type Anchor_Type int32

Type represents an anchor type. Please refer to this [list](https://docs.proofable.io/concepts/anchor_types.html) for all available anchor types

const (
	// [Ethereum](https://ethereum.org/) Rinkeby Testnet
	Anchor_ETH Anchor_Type = 0
	// Ethereum Mainnet. [Ethereum](https://ethereum.org/) is the second-largest
	// cryptocurrency
	Anchor_ETH_MAINNET Anchor_Type = 3
	// [Elastos](https://www.elastos.org/), which employs a "main
	// chain-sidechain architecture"
	Anchor_ETH_ELASTOS Anchor_Type = 4
	// [GoChain](https://gochain.io/), which is scalable, low cost and energy
	// efficient
	Anchor_ETH_GOCHAIN Anchor_Type = 9
	// [Bitcoin](https://bitcoin.org/) Testnet
	Anchor_BTC Anchor_Type = 1
	// Bitcoin Mainnet. [Bitcoin](https://bitcoin.org/) is the largest
	// cryptocurrency
	Anchor_BTC_MAINNET Anchor_Type = 5
	// [Chainpoint](https://chainpoint.org/)
	Anchor_CHP Anchor_Type = 2
	// Hedera Testnet
	Anchor_HEDERA Anchor_Type = 6
	// Hedera Mainnet. [Hedera](https://www.hedera.com/) is a DAG based
	// blockchain that provides much better TPS than tranditional blockchains
	Anchor_HEDERA_MAINNET Anchor_Type = 7
	// [Hyperledger Fabric](https://www.hyperledger.org/use/fabric), which is a
	// modular blockchain framework for private enterprises
	Anchor_HYPERLEDGER Anchor_Type = 8
)

func (Anchor_Type) EnumDescriptor

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

func (Anchor_Type) String

func (x Anchor_Type) String() string

type Batch

type Batch struct {
	// Id is the batch ID
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// AnchorType is the batch's anchor type
	AnchorType Anchor_Type `protobuf:"varint,2,opt,name=anchor_type,json=anchorType,proto3,enum=anchor.Anchor_Type" json:"anchor_type,omitempty"`
	// ProofFormat is the batch's proof format, which determines how the merkle
	// tree is constructed for the batch.
	ProofFormat Proof_Format `protobuf:"varint,3,opt,name=proof_format,json=proofFormat,proto3,enum=anchor.Proof_Format" json:"proof_format,omitempty"`
	// Status is the batch status. FLOW: created_at -> BATCHING -> flushed_at ->
	// QUEUING -> started_at -> PROCESSING -> submitted_at -> PENDING ->
	// finalized_at -> CONFIRMED / ERROR; * -> ERROR; if a batch has not yet
	// reached PENDING and its anchor has restarted, the batch will be put back to
	// QUEUING
	Status Batch_Status `protobuf:"varint,4,opt,name=status,proto3,enum=anchor.Batch_Status" json:"status,omitempty"`
	// Error is the error message when status is ERROR
	Error string `protobuf:"bytes,5,opt,name=error,proto3" json:"error,omitempty"`
	// Size is the number of hashes contained in the batch
	Size int64 `protobuf:"varint,6,opt,name=size,proto3" json:"size,omitempty"`
	// CreateAt is the batch's created at timestamp. FLOW: created_at -> BATCHING
	CreatedAt *timestamp.Timestamp `protobuf:"bytes,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	// FlushedAt is the batch's flushed at timestamp. FLOW: BATCHING -> flushed_at
	// -> QUEUING
	FlushedAt *timestamp.Timestamp `protobuf:"bytes,8,opt,name=flushed_at,json=flushedAt,proto3" json:"flushed_at,omitempty"`
	// StartedAt is the batch's started at timestamp. FLOW: QUEUING -> started_at
	// -> PROCESSING
	StartedAt *timestamp.Timestamp `protobuf:"bytes,9,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"`
	// SubmittedAt is the batch's submitted at timestamp. FLOW: PROCESSING ->
	// submitted_at -> PENDING
	SubmittedAt *timestamp.Timestamp `protobuf:"bytes,10,opt,name=submitted_at,json=submittedAt,proto3" json:"submitted_at,omitempty"`
	// FinalizedAt is the batch's finalized at timestamp. FLOW: * -> finalized_at
	// -> CONFIRMED / ERROR. NOTE: this is not the real block confirmed time, use
	// the timestamp in the batch data instead
	FinalizedAt *timestamp.Timestamp `protobuf:"bytes,11,opt,name=finalized_at,json=finalizedAt,proto3" json:"finalized_at,omitempty"`
	// Hash is the batch's root hash
	Hash string `protobuf:"bytes,12,opt,name=hash,proto3" json:"hash,omitempty"`
	// Data is the batch data in JSON
	Data                 string   `protobuf:"bytes,13,opt,name=data,proto3" json:"data,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Batch represents a batch of hashes. When hash stream comes in, Anchor Service will try to process them in batches, just like blockchain processes transactions in blocks. This makes utilization of expensive resources, such as making Bitcoin transaction, more economic. Each batch's root hash will be embedded in a transaction made to the blockchain

func (*Batch) Descriptor

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

func (*Batch) GetAnchorType

func (m *Batch) GetAnchorType() Anchor_Type

func (*Batch) GetCreatedAt

func (m *Batch) GetCreatedAt() *timestamp.Timestamp

func (*Batch) GetData

func (m *Batch) GetData() string

func (*Batch) GetError

func (m *Batch) GetError() string

func (*Batch) GetFinalizedAt

func (m *Batch) GetFinalizedAt() *timestamp.Timestamp

func (*Batch) GetFlushedAt

func (m *Batch) GetFlushedAt() *timestamp.Timestamp

func (*Batch) GetHash

func (m *Batch) GetHash() string

func (*Batch) GetId

func (m *Batch) GetId() string

func (*Batch) GetProofFormat

func (m *Batch) GetProofFormat() Proof_Format

func (*Batch) GetSize

func (m *Batch) GetSize() int64

func (*Batch) GetStartedAt

func (m *Batch) GetStartedAt() *timestamp.Timestamp

func (*Batch) GetStatus

func (m *Batch) GetStatus() Batch_Status

func (*Batch) GetSubmittedAt

func (m *Batch) GetSubmittedAt() *timestamp.Timestamp

func (*Batch) ProtoMessage

func (*Batch) ProtoMessage()

func (*Batch) Reset

func (m *Batch) Reset()

func (*Batch) String

func (m *Batch) String() string

func (*Batch) XXX_DiscardUnknown

func (m *Batch) XXX_DiscardUnknown()

func (*Batch) XXX_Marshal

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

func (*Batch) XXX_Merge

func (dst *Batch) XXX_Merge(src proto.Message)

func (*Batch) XXX_Size

func (m *Batch) XXX_Size() int

func (*Batch) XXX_Unmarshal

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

type BatchRequest

type BatchRequest struct {
	// BatchId is the batch ID
	BatchId string `protobuf:"bytes,1,opt,name=batch_id,json=batchId,proto3" json:"batch_id,omitempty"`
	// AnchorType is the batch's anchor type
	AnchorType           Anchor_Type `protobuf:"varint,2,opt,name=anchor_type,json=anchorType,proto3,enum=anchor.Anchor_Type" json:"anchor_type,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

BatchRequest represents a batch request

func (*BatchRequest) Descriptor

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

func (*BatchRequest) GetAnchorType

func (m *BatchRequest) GetAnchorType() Anchor_Type

func (*BatchRequest) GetBatchId

func (m *BatchRequest) GetBatchId() string

func (*BatchRequest) ProtoMessage

func (*BatchRequest) ProtoMessage()

func (*BatchRequest) Reset

func (m *BatchRequest) Reset()

func (*BatchRequest) String

func (m *BatchRequest) String() string

func (*BatchRequest) XXX_DiscardUnknown

func (m *BatchRequest) XXX_DiscardUnknown()

func (*BatchRequest) XXX_Marshal

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

func (*BatchRequest) XXX_Merge

func (dst *BatchRequest) XXX_Merge(src proto.Message)

func (*BatchRequest) XXX_Size

func (m *BatchRequest) XXX_Size() int

func (*BatchRequest) XXX_Unmarshal

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

type Batch_Status

type Batch_Status int32

Status represents a batch's status

const (
	// ERROR means the batch has an error. FLOW: * -> ERROR
	Batch_ERROR Batch_Status = 0
	// BATCHING means the batch is batching for more hashes. FLOW: created_at ->
	// BATCHING -> flushed_at
	Batch_BATCHING Batch_Status = 1
	// QUEUING means the batch is queuing to be processed. FLOW: flushed_at ->
	// QUEUING -> started_at
	Batch_QUEUING Batch_Status = 2
	// PROCESSING means the batch is constructing merkle roots and submitting
	// hashes. FLOW: started_at -> PROCESSING -> submitted_at
	Batch_PROCESSING Batch_Status = 3
	// PENDING means the batch's root hash is pending to be confirmed. FLOW:
	// submitted_at -> PENDING -> finalized_at
	Batch_PENDING Batch_Status = 4
	// CONFIRMED means the batch's root hash is confirmed by the anchor's
	// blockchain. FLOW: finalized_at -> CONFIRMED
	Batch_CONFIRMED Batch_Status = 5
)

func (Batch_Status) EnumDescriptor

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

func (Batch_Status) String

func (x Batch_Status) String() string

type Proof

type Proof struct {
	// Hash is the hash the proof is proving for
	Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
	// BatchId is the proof's batch ID
	BatchId string `protobuf:"bytes,2,opt,name=batch_id,json=batchId,proto3" json:"batch_id,omitempty"`
	// AnchorType is the proof's anchor type
	AnchorType Anchor_Type `protobuf:"varint,3,opt,name=anchor_type,json=anchorType,proto3,enum=anchor.Anchor_Type" json:"anchor_type,omitempty"`
	// BatchStatus is the proof's batch status
	BatchStatus Batch_Status `protobuf:"varint,4,opt,name=batch_status,json=batchStatus,proto3,enum=anchor.Batch_Status" json:"batch_status,omitempty"`
	// Format is the proof format
	Format Proof_Format `protobuf:"varint,5,opt,name=format,proto3,enum=anchor.Proof_Format" json:"format,omitempty"`
	// Data is the proof data in base64
	Data string `protobuf:"bytes,6,opt,name=data,proto3" json:"data,omitempty"`
	// Batch is the proof's batch detail
	Batch                *Batch   `protobuf:"bytes,7,opt,name=batch,proto3" json:"batch,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Proof represents a blockchain proof of a hash, which is a Merkle path from the hash to the root hash of the proof's batch

func (*Proof) Descriptor

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

func (*Proof) GetAnchorType

func (m *Proof) GetAnchorType() Anchor_Type

func (*Proof) GetBatch

func (m *Proof) GetBatch() *Batch

func (*Proof) GetBatchId

func (m *Proof) GetBatchId() string

func (*Proof) GetBatchStatus

func (m *Proof) GetBatchStatus() Batch_Status

func (*Proof) GetData

func (m *Proof) GetData() string

func (*Proof) GetFormat

func (m *Proof) GetFormat() Proof_Format

func (*Proof) GetHash

func (m *Proof) GetHash() string

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

func (m *Proof) XXX_DiscardUnknown()

func (*Proof) XXX_Marshal

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

func (*Proof) XXX_Merge

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

func (*Proof) XXX_Size

func (m *Proof) XXX_Size() int

func (*Proof) XXX_Unmarshal

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

type ProofRequest

type ProofRequest struct {
	// Hash is the hash the proof is proving for
	Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
	// BatchId is the proof's batch ID
	BatchId string `protobuf:"bytes,2,opt,name=batch_id,json=batchId,proto3" json:"batch_id,omitempty"`
	// AnchorType is the proof's anchor type
	AnchorType Anchor_Type `protobuf:"varint,3,opt,name=anchor_type,json=anchorType,proto3,enum=anchor.Anchor_Type" json:"anchor_type,omitempty"`
	// WithBatch indicates whether to include the proof's batch detail
	WithBatch            bool     `protobuf:"varint,4,opt,name=with_batch,json=withBatch,proto3" json:"with_batch,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ProofRequest represents a proof request

func (*ProofRequest) Descriptor

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

func (*ProofRequest) GetAnchorType

func (m *ProofRequest) GetAnchorType() Anchor_Type

func (*ProofRequest) GetBatchId

func (m *ProofRequest) GetBatchId() string

func (*ProofRequest) GetHash

func (m *ProofRequest) GetHash() string

func (*ProofRequest) GetWithBatch

func (m *ProofRequest) GetWithBatch() bool

func (*ProofRequest) ProtoMessage

func (*ProofRequest) ProtoMessage()

func (*ProofRequest) Reset

func (m *ProofRequest) Reset()

func (*ProofRequest) String

func (m *ProofRequest) String() string

func (*ProofRequest) XXX_DiscardUnknown

func (m *ProofRequest) XXX_DiscardUnknown()

func (*ProofRequest) XXX_Marshal

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

func (*ProofRequest) XXX_Merge

func (dst *ProofRequest) XXX_Merge(src proto.Message)

func (*ProofRequest) XXX_Size

func (m *ProofRequest) XXX_Size() int

func (*ProofRequest) XXX_Unmarshal

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

type Proof_Format

type Proof_Format int32

Format represents a proof format

const (
	// CHP_PATH means Chainpoint Path format, which is the format used by
	// Chainpoint
	Proof_CHP_PATH Proof_Format = 0
	// ETH_TRIE means Ethereum Trie format
	Proof_ETH_TRIE Proof_Format = 1
	// CHP_PATH_SIGNED means signed Chainpoint Path format
	Proof_CHP_PATH_SIGNED Proof_Format = 2
	// ETH_TRIE_SIGNED means signed Ethereum Trie format
	Proof_ETH_TRIE_SIGNED Proof_Format = 3
)

func (Proof_Format) EnumDescriptor

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

func (Proof_Format) String

func (x Proof_Format) String() string

type SubmitProofRequest

type SubmitProofRequest struct {
	// Hash is the hash to be submitted
	Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
	// AnchorType is the anchor type to be used
	AnchorType Anchor_Type `protobuf:"varint,2,opt,name=anchor_type,json=anchorType,proto3,enum=anchor.Anchor_Type" json:"anchor_type,omitempty"`
	// Format is the proof format to be used
	Format Proof_Format `protobuf:"varint,3,opt,name=format,proto3,enum=anchor.Proof_Format" json:"format,omitempty"`
	// SkipBatching indicates whether to skip batching and submit a proof for the
	// hash directly
	SkipBatching bool `protobuf:"varint,4,opt,name=skip_batching,json=skipBatching,proto3" json:"skip_batching,omitempty"`
	// WithBatch indicates whether to include the batch detail in the reply
	WithBatch            bool     `protobuf:"varint,5,opt,name=with_batch,json=withBatch,proto3" json:"with_batch,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SubmitProofRequest represents a submit proof request

func (*SubmitProofRequest) Descriptor

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

func (*SubmitProofRequest) GetAnchorType

func (m *SubmitProofRequest) GetAnchorType() Anchor_Type

func (*SubmitProofRequest) GetFormat

func (m *SubmitProofRequest) GetFormat() Proof_Format

func (*SubmitProofRequest) GetHash

func (m *SubmitProofRequest) GetHash() string

func (*SubmitProofRequest) GetSkipBatching

func (m *SubmitProofRequest) GetSkipBatching() bool

func (*SubmitProofRequest) GetWithBatch

func (m *SubmitProofRequest) GetWithBatch() bool

func (*SubmitProofRequest) ProtoMessage

func (*SubmitProofRequest) ProtoMessage()

func (*SubmitProofRequest) Reset

func (m *SubmitProofRequest) Reset()

func (*SubmitProofRequest) String

func (m *SubmitProofRequest) String() string

func (*SubmitProofRequest) XXX_DiscardUnknown

func (m *SubmitProofRequest) XXX_DiscardUnknown()

func (*SubmitProofRequest) XXX_Marshal

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

func (*SubmitProofRequest) XXX_Merge

func (dst *SubmitProofRequest) XXX_Merge(src proto.Message)

func (*SubmitProofRequest) XXX_Size

func (m *SubmitProofRequest) XXX_Size() int

func (*SubmitProofRequest) XXX_Unmarshal

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

type SubscribeBatchesRequest

type SubscribeBatchesRequest struct {
	// Filter is the batch filter. When nil, all batches of all anchors will be
	// subscribed; otherwise, only the batches of the given anchor will be
	// subscribed; if batch_id is non-empty, only the matched batch will be
	// subscribed
	Filter               *BatchRequest `protobuf:"bytes,1,opt,name=filter,proto3" json:"filter,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

SubscribeBatchesRequest represents a subscription request for batch information

func (*SubscribeBatchesRequest) Descriptor

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

func (*SubscribeBatchesRequest) GetFilter

func (m *SubscribeBatchesRequest) GetFilter() *BatchRequest

func (*SubscribeBatchesRequest) ProtoMessage

func (*SubscribeBatchesRequest) ProtoMessage()

func (*SubscribeBatchesRequest) Reset

func (m *SubscribeBatchesRequest) Reset()

func (*SubscribeBatchesRequest) String

func (m *SubscribeBatchesRequest) String() string

func (*SubscribeBatchesRequest) XXX_DiscardUnknown

func (m *SubscribeBatchesRequest) XXX_DiscardUnknown()

func (*SubscribeBatchesRequest) XXX_Marshal

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

func (*SubscribeBatchesRequest) XXX_Merge

func (dst *SubscribeBatchesRequest) XXX_Merge(src proto.Message)

func (*SubscribeBatchesRequest) XXX_Size

func (m *SubscribeBatchesRequest) XXX_Size() int

func (*SubscribeBatchesRequest) XXX_Unmarshal

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

type VerifyProofReply

type VerifyProofReply struct {
	// Verified indicates whether the proof is verified
	Verified bool `protobuf:"varint,1,opt,name=verified,proto3" json:"verified,omitempty"`
	// Erorr is the error message when the proof is falsified
	Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
	// ProvenHash is the hash the proof is proving for
	ProvenHash           string   `protobuf:"bytes,3,opt,name=provenHash,proto3" json:"provenHash,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

VerifyProofReply represents a verify proof reply

func (*VerifyProofReply) Descriptor

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

func (*VerifyProofReply) GetError

func (m *VerifyProofReply) GetError() string

func (*VerifyProofReply) GetProvenHash

func (m *VerifyProofReply) GetProvenHash() string

func (*VerifyProofReply) GetVerified

func (m *VerifyProofReply) GetVerified() bool

func (*VerifyProofReply) ProtoMessage

func (*VerifyProofReply) ProtoMessage()

func (*VerifyProofReply) Reset

func (m *VerifyProofReply) Reset()

func (*VerifyProofReply) String

func (m *VerifyProofReply) String() string

func (*VerifyProofReply) XXX_DiscardUnknown

func (m *VerifyProofReply) XXX_DiscardUnknown()

func (*VerifyProofReply) XXX_Marshal

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

func (*VerifyProofReply) XXX_Merge

func (dst *VerifyProofReply) XXX_Merge(src proto.Message)

func (*VerifyProofReply) XXX_Size

func (m *VerifyProofReply) XXX_Size() int

func (*VerifyProofReply) XXX_Unmarshal

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

type VerifyProofRequest

type VerifyProofRequest struct {
	// AnchorType is the proof's anchor type
	AnchorType Anchor_Type `protobuf:"varint,1,opt,name=anchor_type,json=anchorType,proto3,enum=anchor.Anchor_Type" json:"anchor_type,omitempty"`
	// Format is the proof format. If skipping the signature checking is desired,
	// please use the corresponding non-signed format, eg. use CHP_PATH instead of
	// CHP_PATH_SIGNED in request
	Format Proof_Format `protobuf:"varint,2,opt,name=format,proto3,enum=anchor.Proof_Format" json:"format,omitempty"`
	// Data is the proof data in base64
	Data                 string   `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

VerifyProofRequest represents a verify proof request

func (*VerifyProofRequest) Descriptor

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

func (*VerifyProofRequest) GetAnchorType

func (m *VerifyProofRequest) GetAnchorType() Anchor_Type

func (*VerifyProofRequest) GetData

func (m *VerifyProofRequest) GetData() string

func (*VerifyProofRequest) GetFormat

func (m *VerifyProofRequest) GetFormat() Proof_Format

func (*VerifyProofRequest) ProtoMessage

func (*VerifyProofRequest) ProtoMessage()

func (*VerifyProofRequest) Reset

func (m *VerifyProofRequest) Reset()

func (*VerifyProofRequest) String

func (m *VerifyProofRequest) String() string

func (*VerifyProofRequest) XXX_DiscardUnknown

func (m *VerifyProofRequest) XXX_DiscardUnknown()

func (*VerifyProofRequest) XXX_Marshal

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

func (*VerifyProofRequest) XXX_Merge

func (dst *VerifyProofRequest) XXX_Merge(src proto.Message)

func (*VerifyProofRequest) XXX_Size

func (m *VerifyProofRequest) XXX_Size() int

func (*VerifyProofRequest) XXX_Unmarshal

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL