Documentation ¶
Index ¶
- Constants
- Variables
- func ComputeCosmosChainSalt(chainID string, prefix []byte) common.Hash
- func ComputeEIP712CosmosUpdateOperators(chainID string, prefix []byte, clientID string, nonce uint64, ...) ([]byte, error)
- func ComputeEIP712RegisterEnclaveKey(report string) ([]byte, error)
- func ComputeEIP712RegisterEnclaveKeyHash(report string) (common.Hash, error)
- func ComputeEIP712UpdateOperators(chainId int64, verifyingContract common.Address, salt common.Hash, ...) ([]byte, error)
- func EthABIEncodeCommitmentProofs(p *CommitmentProofs) ([]byte, error)
- func GetProcessedHeight(clientStore storetypes.KVStore, height exported.Height) (exported.Height, bool)
- func GetProcessedTime(clientStore storetypes.KVStore, height exported.Height) (uint64, bool)
- func GetRegisterEnclaveKeyTypedData(avr string) apitypes.TypedData
- func GetUpdateOperatorsTypedData(chainId int64, verifyingContract common.Address, salt common.Hash, ...) apitypes.TypedData
- func LCPClientDomain(chainId int64, verifyingContract common.Address, salt common.Hash) apitypes.TypedDataDomain
- func ProcessedHeightKey(height exported.Height) []byte
- func ProcessedTimeKey(height exported.Height) []byte
- func RecoverAddress(commitment [32]byte, signature []byte) (common.Address, error)
- func RegisterInterfaces(registry codectypes.InterfaceRegistry)
- func SetProcessedHeight(clientStore storetypes.KVStore, consHeight, processedHeight exported.Height)
- func SetProcessedTime(clientStore storetypes.KVStore, height exported.Height, timeNs uint64)
- func ValidateClientID(clientID string) error
- func VerifySignature(signBytes []byte, signature []byte) (common.Address, error)
- type ChainType
- type ClientState
- func (cs ClientState) CheckForMisbehaviour(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, ...) bool
- func (cs ClientState) CheckSubstituteAndUpdateState(ctx sdk.Context, cdc codec.BinaryCodec, ...) error
- func (cs ClientState) ClientType() string
- func (cs ClientState) Contains(clientStore storetypes.KVStore, ek common.Address) bool
- func (*ClientState) Descriptor() ([]byte, []int)
- func (cs ClientState) ExportMetadata(_ storetypes.KVStore) []exported.GenesisMetadata
- func (cs ClientState) GetEKInfo(clientStore storetypes.KVStore, ek common.Address) (*EKInfo, error)
- func (cs ClientState) GetLatestHeight() exported.Height
- func (cs ClientState) GetOperators() []common.Address
- func (cs ClientState) GetTimestampAtHeight(ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec, ...) (uint64, error)
- func (cs ClientState) Initialize(_ sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, ...) error
- func (m *ClientState) Marshal() (dAtA []byte, err error)
- func (m *ClientState) MarshalTo(dAtA []byte) (int, error)
- func (m *ClientState) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*ClientState) ProtoMessage()
- func (m *ClientState) Reset()
- func (cs ClientState) SetEKInfo(clientStore storetypes.KVStore, ek, operator common.Address, ...) error
- func (m *ClientState) Size() (n int)
- func (cs ClientState) Status(ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec) exported.Status
- func (m *ClientState) String() string
- func (m *ClientState) Unmarshal(dAtA []byte) error
- func (cs ClientState) UpdateState(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, ...) []exported.Height
- func (cs ClientState) UpdateStateOnMisbehaviour(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, ...)
- func (cs ClientState) Validate() error
- func (cs ClientState) VerifyClientMessage(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, ...) error
- func (cs ClientState) VerifyMembership(ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec, ...) error
- func (cs ClientState) VerifyNonMembership(ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec, ...) error
- func (cs ClientState) VerifySignatures(ctx sdk.Context, clientStore storetypes.KVStore, commitment [32]byte, ...) error
- func (cs ClientState) VerifyUpgradeAndUpdateState(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, ...) error
- func (m *ClientState) XXX_DiscardUnknown()
- func (m *ClientState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ClientState) XXX_Merge(src proto.Message)
- func (m *ClientState) XXX_Size() int
- func (m *ClientState) XXX_Unmarshal(b []byte) error
- func (cs ClientState) ZeroCustomFields() exported.ClientState
- type CommitmentProofs
- type ConsensusState
- func (cs ConsensusState) ClientType() string
- func (*ConsensusState) Descriptor() ([]byte, []int)
- func (cs ConsensusState) GetTimestamp() uint64
- func (m *ConsensusState) Marshal() (dAtA []byte, err error)
- func (m *ConsensusState) MarshalTo(dAtA []byte) (int, error)
- func (m *ConsensusState) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*ConsensusState) ProtoMessage()
- func (m *ConsensusState) Reset()
- func (m *ConsensusState) Size() (n int)
- func (m *ConsensusState) String() string
- func (m *ConsensusState) Unmarshal(dAtA []byte) error
- func (cs ConsensusState) ValidateBasic() error
- func (m *ConsensusState) XXX_DiscardUnknown()
- func (m *ConsensusState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ConsensusState) XXX_Merge(src proto.Message)
- func (m *ConsensusState) XXX_Size() int
- func (m *ConsensusState) XXX_Unmarshal(b []byte) error
- type EKInfo
- type ELCVerifyMembershipMessage
- type EmittedState
- type EmptyValidationContext
- type HeaderedProxyMessage
- type MisbehaviourProxyMessage
- type ProxyMessage
- type RegisterEnclaveKeyMessage
- func (RegisterEnclaveKeyMessage) ClientType() string
- func (*RegisterEnclaveKeyMessage) Descriptor() ([]byte, []int)
- func (m *RegisterEnclaveKeyMessage) Marshal() (dAtA []byte, err error)
- func (m *RegisterEnclaveKeyMessage) MarshalTo(dAtA []byte) (int, error)
- func (m *RegisterEnclaveKeyMessage) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*RegisterEnclaveKeyMessage) ProtoMessage()
- func (m *RegisterEnclaveKeyMessage) Reset()
- func (m *RegisterEnclaveKeyMessage) Size() (n int)
- func (m *RegisterEnclaveKeyMessage) String() string
- func (m *RegisterEnclaveKeyMessage) Unmarshal(dAtA []byte) error
- func (RegisterEnclaveKeyMessage) ValidateBasic() error
- func (m *RegisterEnclaveKeyMessage) XXX_DiscardUnknown()
- func (m *RegisterEnclaveKeyMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *RegisterEnclaveKeyMessage) XXX_Merge(src proto.Message)
- func (m *RegisterEnclaveKeyMessage) XXX_Size() int
- func (m *RegisterEnclaveKeyMessage) XXX_Unmarshal(b []byte) error
- type StateID
- type TrustingPeriodValidationContext
- type UpdateClientMessage
- func (UpdateClientMessage) ClientType() string
- func (*UpdateClientMessage) Descriptor() ([]byte, []int)
- func (ucm UpdateClientMessage) GetHeight() exported.Height
- func (ucm UpdateClientMessage) GetProxyMessage() (ProxyMessage, error)
- func (m *UpdateClientMessage) Marshal() (dAtA []byte, err error)
- func (m *UpdateClientMessage) MarshalTo(dAtA []byte) (int, error)
- func (m *UpdateClientMessage) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*UpdateClientMessage) ProtoMessage()
- func (m *UpdateClientMessage) Reset()
- func (m *UpdateClientMessage) Size() (n int)
- func (m *UpdateClientMessage) String() string
- func (m *UpdateClientMessage) Unmarshal(dAtA []byte) error
- func (ucm UpdateClientMessage) ValidateBasic() error
- func (m *UpdateClientMessage) XXX_DiscardUnknown()
- func (m *UpdateClientMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *UpdateClientMessage) XXX_Merge(src proto.Message)
- func (m *UpdateClientMessage) XXX_Size() int
- func (m *UpdateClientMessage) XXX_Unmarshal(b []byte) error
- type UpdateOperatorsMessage
- func (UpdateOperatorsMessage) ClientType() string
- func (*UpdateOperatorsMessage) Descriptor() ([]byte, []int)
- func (m UpdateOperatorsMessage) GetNewOperators() ([]common.Address, error)
- func (m *UpdateOperatorsMessage) Marshal() (dAtA []byte, err error)
- func (m *UpdateOperatorsMessage) MarshalTo(dAtA []byte) (int, error)
- func (m *UpdateOperatorsMessage) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*UpdateOperatorsMessage) ProtoMessage()
- func (m *UpdateOperatorsMessage) Reset()
- func (m *UpdateOperatorsMessage) Size() (n int)
- func (m *UpdateOperatorsMessage) String() string
- func (m *UpdateOperatorsMessage) Unmarshal(dAtA []byte) error
- func (m UpdateOperatorsMessage) ValidateBasic() error
- func (m *UpdateOperatorsMessage) XXX_DiscardUnknown()
- func (m *UpdateOperatorsMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *UpdateOperatorsMessage) XXX_Merge(src proto.Message)
- func (m *UpdateOperatorsMessage) XXX_Size() int
- func (m *UpdateOperatorsMessage) XXX_Unmarshal(b []byte) error
- type UpdateStateProxyMessage
- type ValidationContext
Constants ¶
const ( ModuleName = "lcp" ClientTypeLCP = "lcp-client" MrenclaveSize = 32 )
const ( EventTypeRegisterEnclaveKey = "register_enclave_key" AttributeKeyEnclaveKey = "enclave_key" AttributeKeyExpiredAt = "expired_at" AttributeKeyOperator = "operator" EventTypeUpdateOperators = "update_operators" AttributeKeyNonce = "nonce" AttributeKeyNewOperators = "new_operators" AttributeKeyThresholdNumerator = "threshold_numerator" AttributeKeyThresholdDenominator = "threshold_denominator" )
const ( QuoteOK = "OK" QuoteSignatureInvalid = "SIGNATURE_INVALID" QuoteGroupRevoked = "GROUP_REVOKED" QuoteSignatureRevoked = "SIGNATURE_REVOKED" QuoteKeyRevoked = "KEY_REVOKED" QuoteSigRLVersionMismatch = "SIGRL_VERSION_MISMATCH" QuoteGroupOutOfDate = "GROUP_OUT_OF_DATE" QuoteConfigurationNeeded = "CONFIGURATION_NEEDED" QuoteSwHardeningNeeded = "SW_HARDENING_NEEDED" QuoteConfigurationAndSwHardeningNeeded = "CONFIGURATION_AND_SW_HARDENING_NEEDED" ChainTypeEVM ChainType = 1 ChainTypeCosmos ChainType = 2 )
const ( LCPMessageVersion = 1 LCPMessageTypeUpdateState = 1 LCPMessageTypeState = 2 LCPMessageTypeMisbehaviour = 3 )
const ( LCPMessageContextTypeEmpty = 0 LCPMessageContextTypeTrustingPeriod = 1 )
Variables ¶
var ( ErrInvalidStateCommitment = errorsmod.Register(ModuleName, 1, "invalid state commitment") ErrInvalidStateCommitmentProof = errorsmod.Register(ModuleName, 2, "invalid state commitment proof") ErrExpiredEnclaveKey = errorsmod.Register(ModuleName, 3, "enclave key has expired") ErrProcessedTimeNotFound = errorsmod.Register(ModuleName, 4, "processed time not found") ErrProcessedHeightNotFound = errorsmod.Register(ModuleName, 5, "processed height not found") ErrDelayPeriodNotPassed = errorsmod.Register(ModuleName, 6, "packet-specified delay period has not been reached") ErrInvalidMisbehaviour = errorsmod.Register(ModuleName, 7, "invalid misbehaviour") ErrRetrieveClientID = errorsmod.Register(ModuleName, 8, "failed to retrieve client id") )
var ( RegisterEnclaveKeyTypes = apitypes.Types{ "EIP712Domain": []apitypes.Type{ {Name: "name", Type: "string"}, {Name: "version", Type: "string"}, {Name: "chainId", Type: "uint256"}, {Name: "verifyingContract", Type: "address"}, {Name: "salt", Type: "bytes32"}, }, "RegisterEnclaveKey": []apitypes.Type{ {Name: "avr", Type: "string"}, }, } UpdateOperatorsTypes = apitypes.Types{ "EIP712Domain": []apitypes.Type{ {Name: "name", Type: "string"}, {Name: "version", Type: "string"}, {Name: "chainId", Type: "uint256"}, {Name: "verifyingContract", Type: "address"}, {Name: "salt", Type: "bytes32"}, }, "UpdateOperators": []apitypes.Type{ {Name: "clientId", Type: "string"}, {Name: "nonce", Type: "uint64"}, {Name: "newOperators", Type: "address[]"}, {Name: "thresholdNumerator", Type: "uint64"}, {Name: "thresholdDenominator", Type: "uint64"}, }, } )
var ( ErrInvalidLengthLcp = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowLcp = fmt.Errorf("proto: integer overflow") ErrUnexpectedEndOfGroupLcp = fmt.Errorf("proto: unexpected end of group") )
var ( // KeyProcessedTime is appended to consensus state key to store the processed time KeyProcessedTime = []byte("/processedTime") // KeyProcessedHeight is appended to consensus state key to store the processed height KeyProcessedHeight = []byte("/processedHeight") )
Functions ¶
func ComputeCosmosChainSalt ¶ added in v0.2.5
func ComputeEIP712CosmosUpdateOperators ¶ added in v0.2.5
func ComputeEIP712RegisterEnclaveKey ¶ added in v0.2.6
func ComputeEIP712RegisterEnclaveKeyHash ¶ added in v0.2.6
func ComputeEIP712UpdateOperators ¶ added in v0.2.5
func EthABIEncodeCommitmentProofs ¶ added in v0.2.5
func EthABIEncodeCommitmentProofs(p *CommitmentProofs) ([]byte, error)
func GetProcessedHeight ¶
func GetProcessedHeight(clientStore storetypes.KVStore, height exported.Height) (exported.Height, bool)
GetProcessedHeight gets the height at which this chain received and processed a tendermint header. This is used to validate that a received packet has passed the block delay period.
func GetProcessedTime ¶
GetProcessedTime gets the time (in nanoseconds) at which this chain received and processed a tendermint header. This is used to validate that a received packet has passed the time delay period.
func GetRegisterEnclaveKeyTypedData ¶ added in v0.2.5
func GetUpdateOperatorsTypedData ¶ added in v0.2.5
func LCPClientDomain ¶ added in v0.2.5
func ProcessedHeightKey ¶
ProcessedHeightKey returns the key under which the processed height will be stored in the client store.
func ProcessedTimeKey ¶
ProcessedTimeKey returns the key under which the processed time will be stored in the client store.
func RecoverAddress ¶ added in v0.2.5
func RegisterInterfaces ¶
func RegisterInterfaces(registry codectypes.InterfaceRegistry)
RegisterInterfaces register the ibc channel submodule interfaces to protobuf Any.
func SetProcessedHeight ¶
func SetProcessedHeight(clientStore storetypes.KVStore, consHeight, processedHeight exported.Height)
SetProcessedHeight stores the height at which a header was processed and the corresponding consensus state was created. This is useful when validating whether a packet has reached the specified block delay period in the tendermint client's verification functions
func SetProcessedTime ¶
func SetProcessedTime(clientStore storetypes.KVStore, height exported.Height, timeNs uint64)
SetProcessedTime stores the time at which a header was processed and the corresponding consensus state was created. This is useful when validating whether a packet has reached the time specified delay period in the tendermint client's verification functions
func ValidateClientID ¶ added in v0.2.5
ValidateClientID validates the client identifier by ensuring that it conforms to the 02-client identifier format and that it is a lcp clientID.
Types ¶
type ClientState ¶
type ClientState struct { Mrenclave []byte `protobuf:"bytes,1,opt,name=mrenclave,proto3" json:"mrenclave,omitempty"` KeyExpiration uint64 `protobuf:"varint,2,opt,name=key_expiration,json=keyExpiration,proto3" json:"key_expiration,omitempty"` Frozen bool `protobuf:"varint,3,opt,name=frozen,proto3" json:"frozen,omitempty"` LatestHeight types.Height `protobuf:"bytes,4,opt,name=latest_height,json=latestHeight,proto3" json:"latest_height"` // e.g. SW_HARDENING_NEEDED, CONFIGURATION_AND_SW_HARDENING_NEEDED (except "OK") AllowedQuoteStatuses []string `protobuf:"bytes,5,rep,name=allowed_quote_statuses,json=allowedQuoteStatuses,proto3" json:"allowed_quote_statuses,omitempty"` // e.g. INTEL-SA-XXXXX AllowedAdvisoryIds []string `protobuf:"bytes,6,rep,name=allowed_advisory_ids,json=allowedAdvisoryIds,proto3" json:"allowed_advisory_ids,omitempty"` Operators [][]byte `protobuf:"bytes,7,rep,name=operators,proto3" json:"operators,omitempty"` OperatorsNonce uint64 `protobuf:"varint,8,opt,name=operators_nonce,json=operatorsNonce,proto3" json:"operators_nonce,omitempty"` OperatorsThresholdNumerator uint64 `` /* 145-byte string literal not displayed */ OperatorsThresholdDenominator uint64 `` /* 152-byte string literal not displayed */ }
func (ClientState) CheckForMisbehaviour ¶
func (cs ClientState) CheckForMisbehaviour(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, msg exported.ClientMessage) bool
func (ClientState) CheckSubstituteAndUpdateState ¶
func (cs ClientState) CheckSubstituteAndUpdateState( ctx sdk.Context, cdc codec.BinaryCodec, subjectClientStore, substituteClientStore storetypes.KVStore, substituteClient exported.ClientState, ) error
func (ClientState) ClientType ¶
func (cs ClientState) ClientType() string
func (ClientState) Contains ¶
func (cs ClientState) Contains(clientStore storetypes.KVStore, ek common.Address) bool
func (*ClientState) Descriptor ¶
func (*ClientState) Descriptor() ([]byte, []int)
func (ClientState) ExportMetadata ¶
func (cs ClientState) ExportMetadata(_ storetypes.KVStore) []exported.GenesisMetadata
Genesis function
func (ClientState) GetEKInfo ¶ added in v0.2.5
func (cs ClientState) GetEKInfo(clientStore storetypes.KVStore, ek common.Address) (*EKInfo, error)
func (ClientState) GetLatestHeight ¶
func (cs ClientState) GetLatestHeight() exported.Height
func (ClientState) GetOperators ¶ added in v0.2.5
func (cs ClientState) GetOperators() []common.Address
func (ClientState) GetTimestampAtHeight ¶
func (cs ClientState) GetTimestampAtHeight( ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec, height exported.Height, ) (uint64, error)
func (ClientState) Initialize ¶
func (cs ClientState) Initialize(_ sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, consensusState exported.ConsensusState) error
Initialization function Clients must validate the initial consensus state, and may store any client-specific metadata necessary for correct light client operation
func (*ClientState) Marshal ¶
func (m *ClientState) Marshal() (dAtA []byte, err error)
func (*ClientState) MarshalToSizedBuffer ¶
func (m *ClientState) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*ClientState) ProtoMessage ¶
func (*ClientState) ProtoMessage()
func (*ClientState) Reset ¶
func (m *ClientState) Reset()
func (ClientState) SetEKInfo ¶ added in v0.2.5
func (cs ClientState) SetEKInfo(clientStore storetypes.KVStore, ek, operator common.Address, expiredAt time.Time) error
func (*ClientState) Size ¶
func (m *ClientState) Size() (n int)
func (ClientState) Status ¶
func (cs ClientState) Status(ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec) exported.Status
Status function Clients must return their status. Only Active clients are allowed to process packets.
func (*ClientState) String ¶
func (m *ClientState) String() string
func (*ClientState) Unmarshal ¶
func (m *ClientState) Unmarshal(dAtA []byte) error
func (ClientState) UpdateState ¶
func (cs ClientState) UpdateState(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, clientMsg exported.ClientMessage) []exported.Height
func (ClientState) UpdateStateOnMisbehaviour ¶
func (cs ClientState) UpdateStateOnMisbehaviour(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, msg exported.ClientMessage)
func (ClientState) Validate ¶
func (cs ClientState) Validate() error
func (ClientState) VerifyClientMessage ¶
func (cs ClientState) VerifyClientMessage(ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, clientMsg exported.ClientMessage) error
func (ClientState) VerifyMembership ¶
func (ClientState) VerifyNonMembership ¶
func (cs ClientState) VerifyNonMembership( ctx sdk.Context, clientStore storetypes.KVStore, cdc codec.BinaryCodec, height exported.Height, delayTimePeriod uint64, delayBlockPeriod uint64, proof []byte, path exported.Path, ) error
VerifyNonMembership is a generic proof verification method which verifies the absence of a given CommitmentPath at a specified height. The caller is expected to construct the full CommitmentPath from a CommitmentPrefix and a standardized path (as defined in ICS 24).
func (ClientState) VerifySignatures ¶ added in v0.2.5
func (cs ClientState) VerifySignatures(ctx sdk.Context, clientStore storetypes.KVStore, commitment [32]byte, signatures [][]byte) error
func (ClientState) VerifyUpgradeAndUpdateState ¶
func (cs ClientState) VerifyUpgradeAndUpdateState( ctx sdk.Context, cdc codec.BinaryCodec, clientStore storetypes.KVStore, upgradedClient exported.ClientState, upgradedConsState exported.ConsensusState, proofUpgradeClient, proofUpgradeConsState []byte, ) error
func (*ClientState) XXX_DiscardUnknown ¶
func (m *ClientState) XXX_DiscardUnknown()
func (*ClientState) XXX_Marshal ¶
func (m *ClientState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ClientState) XXX_Merge ¶
func (m *ClientState) XXX_Merge(src proto.Message)
func (*ClientState) XXX_Size ¶
func (m *ClientState) XXX_Size() int
func (*ClientState) XXX_Unmarshal ¶
func (m *ClientState) XXX_Unmarshal(b []byte) error
func (ClientState) ZeroCustomFields ¶
func (cs ClientState) ZeroCustomFields() exported.ClientState
Utility function that zeroes out any client customizable fields in client state Ledger enforced fields are maintained while all custom fields are zero values Used to verify upgrades
type CommitmentProofs ¶ added in v0.2.5
func EthABIDecodeCommitmentProofs ¶ added in v0.2.5
func EthABIDecodeCommitmentProofs(bz []byte) (*CommitmentProofs, error)
func (CommitmentProofs) GetMessage ¶ added in v0.2.5
func (p CommitmentProofs) GetMessage() (*HeaderedProxyMessage, error)
type ConsensusState ¶
type ConsensusState struct { StateId []byte `protobuf:"bytes,1,opt,name=state_id,json=stateId,proto3" json:"state_id,omitempty"` // unix timestamp in seconds Timestamp uint64 `protobuf:"varint,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` }
func GetConsensusState ¶
func GetConsensusState(store storetypes.KVStore, cdc codec.BinaryCodec, height exported.Height) (*ConsensusState, error)
GetConsensusState retrieves the consensus state from the client prefixed store. An error is returned if the consensus state does not exist.
func (ConsensusState) ClientType ¶
func (cs ConsensusState) ClientType() string
func (*ConsensusState) Descriptor ¶
func (*ConsensusState) Descriptor() ([]byte, []int)
func (ConsensusState) GetTimestamp ¶
func (cs ConsensusState) GetTimestamp() uint64
GetTimestamp returns the timestamp (in nanoseconds) of the consensus state
func (*ConsensusState) Marshal ¶
func (m *ConsensusState) Marshal() (dAtA []byte, err error)
func (*ConsensusState) MarshalToSizedBuffer ¶
func (m *ConsensusState) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*ConsensusState) ProtoMessage ¶
func (*ConsensusState) ProtoMessage()
func (*ConsensusState) Reset ¶
func (m *ConsensusState) Reset()
func (*ConsensusState) Size ¶
func (m *ConsensusState) Size() (n int)
func (*ConsensusState) String ¶
func (m *ConsensusState) String() string
func (*ConsensusState) Unmarshal ¶
func (m *ConsensusState) Unmarshal(dAtA []byte) error
func (ConsensusState) ValidateBasic ¶
func (cs ConsensusState) ValidateBasic() error
func (*ConsensusState) XXX_DiscardUnknown ¶
func (m *ConsensusState) XXX_DiscardUnknown()
func (*ConsensusState) XXX_Marshal ¶
func (m *ConsensusState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ConsensusState) XXX_Merge ¶
func (m *ConsensusState) XXX_Merge(src proto.Message)
func (*ConsensusState) XXX_Size ¶
func (m *ConsensusState) XXX_Size() int
func (*ConsensusState) XXX_Unmarshal ¶
func (m *ConsensusState) XXX_Unmarshal(b []byte) error
type ELCVerifyMembershipMessage ¶ added in v0.1.11
type ELCVerifyMembershipMessage struct { Prefix []byte Path []byte Value [32]byte Height clienttypes.Height StateID StateID }
func EthABIDecodeVerifyMembershipProxyMessage ¶ added in v0.1.14
func EthABIDecodeVerifyMembershipProxyMessage(bz []byte) (*ELCVerifyMembershipMessage, error)
type EmittedState ¶ added in v0.1.11
type EmittedState struct { Height clienttypes.Height State codectypes.Any }
func (EmittedState) MarshalJSON ¶ added in v0.2.2
func (es EmittedState) MarshalJSON() ([]byte, error)
type EmptyValidationContext ¶ added in v0.1.11
type EmptyValidationContext struct{}
EmptyValidationContext is the validation context for a commitment that does not require any validation.
type HeaderedProxyMessage ¶ added in v0.1.14
func EthABIDecodeHeaderedProxyMessage ¶ added in v0.1.14
func EthABIDecodeHeaderedProxyMessage(bz []byte) (*HeaderedProxyMessage, error)
func (HeaderedProxyMessage) GetMisbehaviourProxyMessage ¶ added in v0.1.14
func (c HeaderedProxyMessage) GetMisbehaviourProxyMessage() (*MisbehaviourProxyMessage, error)
func (HeaderedProxyMessage) GetUpdateStateProxyMessage ¶ added in v0.1.14
func (c HeaderedProxyMessage) GetUpdateStateProxyMessage() (*UpdateStateProxyMessage, error)
func (HeaderedProxyMessage) GetVerifyMembershipProxyMessage ¶ added in v0.1.14
func (c HeaderedProxyMessage) GetVerifyMembershipProxyMessage() (*ELCVerifyMembershipMessage, error)
type MisbehaviourProxyMessage ¶ added in v0.1.14
type MisbehaviourProxyMessage struct { PrevStates []struct { Height clienttypes.Height StateID StateID } Context ValidationContext ClientMessage []byte }
func EthABIDecodeMisbehaviourProxyMessage ¶ added in v0.1.14
func EthABIDecodeMisbehaviourProxyMessage(bz []byte) (*MisbehaviourProxyMessage, error)
type ProxyMessage ¶ added in v0.1.14
type ProxyMessage interface{}
type RegisterEnclaveKeyMessage ¶
type RegisterEnclaveKeyMessage struct { Report []byte `protobuf:"bytes,1,opt,name=report,proto3" json:"report,omitempty"` Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` SigningCert []byte `protobuf:"bytes,3,opt,name=signing_cert,json=signingCert,proto3" json:"signing_cert,omitempty"` OperatorSignature []byte `protobuf:"bytes,4,opt,name=operator_signature,json=operatorSignature,proto3" json:"operator_signature,omitempty"` }
func (RegisterEnclaveKeyMessage) ClientType ¶
func (RegisterEnclaveKeyMessage) ClientType() string
func (*RegisterEnclaveKeyMessage) Descriptor ¶
func (*RegisterEnclaveKeyMessage) Descriptor() ([]byte, []int)
func (*RegisterEnclaveKeyMessage) Marshal ¶
func (m *RegisterEnclaveKeyMessage) Marshal() (dAtA []byte, err error)
func (*RegisterEnclaveKeyMessage) MarshalTo ¶
func (m *RegisterEnclaveKeyMessage) MarshalTo(dAtA []byte) (int, error)
func (*RegisterEnclaveKeyMessage) MarshalToSizedBuffer ¶
func (m *RegisterEnclaveKeyMessage) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*RegisterEnclaveKeyMessage) ProtoMessage ¶
func (*RegisterEnclaveKeyMessage) ProtoMessage()
func (*RegisterEnclaveKeyMessage) Reset ¶
func (m *RegisterEnclaveKeyMessage) Reset()
func (*RegisterEnclaveKeyMessage) Size ¶
func (m *RegisterEnclaveKeyMessage) Size() (n int)
func (*RegisterEnclaveKeyMessage) String ¶
func (m *RegisterEnclaveKeyMessage) String() string
func (*RegisterEnclaveKeyMessage) Unmarshal ¶
func (m *RegisterEnclaveKeyMessage) Unmarshal(dAtA []byte) error
func (RegisterEnclaveKeyMessage) ValidateBasic ¶
func (RegisterEnclaveKeyMessage) ValidateBasic() error
func (*RegisterEnclaveKeyMessage) XXX_DiscardUnknown ¶
func (m *RegisterEnclaveKeyMessage) XXX_DiscardUnknown()
func (*RegisterEnclaveKeyMessage) XXX_Marshal ¶
func (m *RegisterEnclaveKeyMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*RegisterEnclaveKeyMessage) XXX_Merge ¶
func (m *RegisterEnclaveKeyMessage) XXX_Merge(src proto.Message)
func (*RegisterEnclaveKeyMessage) XXX_Size ¶
func (m *RegisterEnclaveKeyMessage) XXX_Size() int
func (*RegisterEnclaveKeyMessage) XXX_Unmarshal ¶
func (m *RegisterEnclaveKeyMessage) XXX_Unmarshal(b []byte) error
type StateID ¶
type StateID [32]byte
func (StateID) EqualBytes ¶
func (StateID) MarshalJSON ¶ added in v0.2.2
type TrustingPeriodValidationContext ¶ added in v0.1.11
type TrustingPeriodValidationContext struct { UntrustedHeaderTimestamp time.Time `json:"untrusted_header_timestamp"` TrustedStateTimestamp time.Time `json:"trusted_state_timestamp"` TrustingPeriod big.Int `json:"trusting_period"` ClockDrift big.Int `json:"clock_drift"` }
TrustingPeriodValidationContext is the commitment context for a commitment that requires the current time to be within the trusting period.
func DecodeTrustingPeriodValidationContext ¶ added in v0.1.11
func DecodeTrustingPeriodValidationContext(timestamps, params [32]byte) *TrustingPeriodValidationContext
func EthABIDecodeTrustingPeriodValidationContext ¶ added in v0.1.11
func EthABIDecodeTrustingPeriodValidationContext(bz []byte) (*TrustingPeriodValidationContext, error)
func (TrustingPeriodValidationContext) MarshalJSON ¶ added in v0.2.2
func (c TrustingPeriodValidationContext) MarshalJSON() ([]byte, error)
type UpdateClientMessage ¶
type UpdateClientMessage struct { ProxyMessage []byte `protobuf:"bytes,1,opt,name=proxy_message,json=proxyMessage,proto3" json:"proxy_message,omitempty"` Signatures [][]byte `protobuf:"bytes,2,rep,name=signatures,proto3" json:"signatures,omitempty"` }
func (UpdateClientMessage) ClientType ¶
func (UpdateClientMessage) ClientType() string
func (*UpdateClientMessage) Descriptor ¶
func (*UpdateClientMessage) Descriptor() ([]byte, []int)
func (UpdateClientMessage) GetHeight ¶
func (ucm UpdateClientMessage) GetHeight() exported.Height
func (UpdateClientMessage) GetProxyMessage ¶ added in v0.1.14
func (ucm UpdateClientMessage) GetProxyMessage() (ProxyMessage, error)
func (*UpdateClientMessage) Marshal ¶
func (m *UpdateClientMessage) Marshal() (dAtA []byte, err error)
func (*UpdateClientMessage) MarshalTo ¶
func (m *UpdateClientMessage) MarshalTo(dAtA []byte) (int, error)
func (*UpdateClientMessage) MarshalToSizedBuffer ¶
func (m *UpdateClientMessage) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*UpdateClientMessage) ProtoMessage ¶
func (*UpdateClientMessage) ProtoMessage()
func (*UpdateClientMessage) Reset ¶
func (m *UpdateClientMessage) Reset()
func (*UpdateClientMessage) Size ¶
func (m *UpdateClientMessage) Size() (n int)
func (*UpdateClientMessage) String ¶
func (m *UpdateClientMessage) String() string
func (*UpdateClientMessage) Unmarshal ¶
func (m *UpdateClientMessage) Unmarshal(dAtA []byte) error
func (UpdateClientMessage) ValidateBasic ¶
func (ucm UpdateClientMessage) ValidateBasic() error
func (*UpdateClientMessage) XXX_DiscardUnknown ¶
func (m *UpdateClientMessage) XXX_DiscardUnknown()
func (*UpdateClientMessage) XXX_Marshal ¶
func (m *UpdateClientMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*UpdateClientMessage) XXX_Merge ¶
func (m *UpdateClientMessage) XXX_Merge(src proto.Message)
func (*UpdateClientMessage) XXX_Size ¶
func (m *UpdateClientMessage) XXX_Size() int
func (*UpdateClientMessage) XXX_Unmarshal ¶
func (m *UpdateClientMessage) XXX_Unmarshal(b []byte) error
type UpdateOperatorsMessage ¶ added in v0.2.5
type UpdateOperatorsMessage struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` NewOperators [][]byte `protobuf:"bytes,2,rep,name=new_operators,json=newOperators,proto3" json:"new_operators,omitempty"` NewOperatorsThresholdNumerator uint64 `` /* 156-byte string literal not displayed */ NewOperatorsThresholdDenominator uint64 `` /* 162-byte string literal not displayed */ Signatures [][]byte `protobuf:"bytes,5,rep,name=signatures,proto3" json:"signatures,omitempty"` }
func (UpdateOperatorsMessage) ClientType ¶ added in v0.2.5
func (UpdateOperatorsMessage) ClientType() string
func (*UpdateOperatorsMessage) Descriptor ¶ added in v0.2.5
func (*UpdateOperatorsMessage) Descriptor() ([]byte, []int)
func (UpdateOperatorsMessage) GetNewOperators ¶ added in v0.2.5
func (m UpdateOperatorsMessage) GetNewOperators() ([]common.Address, error)
func (*UpdateOperatorsMessage) Marshal ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) Marshal() (dAtA []byte, err error)
func (*UpdateOperatorsMessage) MarshalTo ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) MarshalTo(dAtA []byte) (int, error)
func (*UpdateOperatorsMessage) MarshalToSizedBuffer ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*UpdateOperatorsMessage) ProtoMessage ¶ added in v0.2.5
func (*UpdateOperatorsMessage) ProtoMessage()
func (*UpdateOperatorsMessage) Reset ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) Reset()
func (*UpdateOperatorsMessage) Size ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) Size() (n int)
func (*UpdateOperatorsMessage) String ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) String() string
func (*UpdateOperatorsMessage) Unmarshal ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) Unmarshal(dAtA []byte) error
func (UpdateOperatorsMessage) ValidateBasic ¶ added in v0.2.5
func (m UpdateOperatorsMessage) ValidateBasic() error
func (*UpdateOperatorsMessage) XXX_DiscardUnknown ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) XXX_DiscardUnknown()
func (*UpdateOperatorsMessage) XXX_Marshal ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*UpdateOperatorsMessage) XXX_Merge ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) XXX_Merge(src proto.Message)
func (*UpdateOperatorsMessage) XXX_Size ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) XXX_Size() int
func (*UpdateOperatorsMessage) XXX_Unmarshal ¶ added in v0.2.5
func (m *UpdateOperatorsMessage) XXX_Unmarshal(b []byte) error
type UpdateStateProxyMessage ¶ added in v0.1.14
type UpdateStateProxyMessage struct { PrevHeight *clienttypes.Height `json:"prev_height"` PrevStateID *StateID `json:"prev_state_id"` PostHeight clienttypes.Height `json:"post_height"` PostStateID StateID `json:"post_state_id"` Timestamp *big.Int `json:"timestamp"` Context ValidationContext `json:"context"` EmittedStates []EmittedState `json:"emitted_states"` }
func EthABIDecodeUpdateStateProxyMessage ¶ added in v0.1.14
func EthABIDecodeUpdateStateProxyMessage(bz []byte) (*UpdateStateProxyMessage, error)
type ValidationContext ¶ added in v0.1.11
ValidationContext is the interface of validation context.
func EthABIDecodeValidationContext ¶ added in v0.1.11
func EthABIDecodeValidationContext(bz []byte) (ValidationContext, error)