Versions in this module Expand all Collapse all v0 v0.1.5 Aug 30, 2021 Changes in this version + func IsWebsocketURL(url string) bool + func NewContractCallerFromConfig(config Config) (contract.Caller, error) + type Batch struct + BatchIndex uint64 + DecryptedBatchHash []byte + DecryptedTransactions [][]byte + DecryptionSignatureHash []byte + DecryptionSignatureIndex int + IsEmpty bool + VerifiedSignatures map[common.Address][]byte + func (batch *Batch) AddSignature(sender common.Address, signature []byte) + func (batch *Batch) VerifySignature(sender common.Address, signature []byte) bool + type Config struct + BatcherContractAddress common.Address + ConfigContractAddress common.Address + DBDir string + DKGPhaseLength uint64 + DepositContractAddress common.Address + EncryptionKey *ecies.PrivateKey + EthereumURL string + ExecutionStaggering uint64 + ExecutorContractAddress common.Address + GasPriceMultiplier float64 + KeyBroadcastContractAddress common.Address + KeyperSlasherAddress common.Address + MainChainFollowDistance uint64 + ShuttermintURL string + SigningKey *ecdsa.PrivateKey + ValidatorKey ed25519.PrivateKey + func (config *Config) Address() common.Address + func (config *Config) GenerateNewKeys() error + func (config *Config) Unmarshal(v *viper.Viper) error + func (config *Config) WriteTOML(w io.Writer) error + type DKG struct + Eon uint64 + Keypers []common.Address + OutgoingPolyEvalMsgs []puredkg.PolyEvalMsg + PhaseLength PhaseLength + Pure *puredkg.PureDKG + StartBatchIndex uint64 + func (dkg *DKG) IsFinalized() bool + func (dkg *DKG) ShortInfo() string + type Decider struct + Actions []fx.IAction + Config Config + MainChain *observe.MainChain + PhaseLength PhaseLength + Shutter *observe.Shutter + State *State + func NewDecider(kpr *Keyper) Decider + func (dcdr *Decider) Decide() + type EKG struct + Eon uint64 + EpochKG *epochkg.EpochKG + Keypers []common.Address + type Keyper struct + Config Config + ContractCaller contract.Caller + MessageSender fx.MessageSender + State *State + func NewKeyper(kc Config) Keyper + func (kpr *Keyper) CurrentWorld() observe.World + func (kpr *Keyper) LoadState() error + func (kpr *Keyper) Run(ctx context.Context) error + func (kpr *Keyper) ShortInfo() string + type PhaseLength struct + Accusing int64 + Apologizing int64 + Dealing int64 + Off int64 + func NewConstantPhaseLength(l int64) PhaseLength + type State struct + ActionCounter uint64 + Actions []fx.IAction + Batches map[uint64]*Batch + CheckInMessageSent bool + DKGs []DKG + EKGs []*EKG + HalfStepsChecked uint64 + LastEonStarted uint64 + LastSentBatchConfigIndex uint64 + NextEpochSecretShare uint64 + PendingAppeals map[uint64]struct{} + PendingHalfStep *uint64 + SyncHeight int64 + func NewState() *State + func (st *State) FindEKGByEon(eon uint64) (*EKG, error) + func (st *State) GetShutterFilter(mainChain *observe.MainChain) observe.ShutterFilter