tss

package
v0.5.12 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2025 License: LGPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Coordinator

type Coordinator struct {
	CoordinatorTimeout time.Duration
	InitiatePeriod     time.Duration
	// contains filtered or unexported fields
}

func NewCoordinator

func NewCoordinator(
	host host.Host,
	communication comm.Communication,
	electorFactory *elector.CoordinatorElectorFactory,
) *Coordinator

func (*Coordinator) Execute

func (c *Coordinator) Execute(ctx context.Context, tssProcesses []TssProcess, resultChn chan interface{}, coordinator peer.ID) error

Execute calculates process leader and coordinates party readiness and start the tss processes. Array of processes can be passed if all the processes have to have the same peer subset and the result of all of them is needed. The processes should have an unique session ID for each one.

type SubsetError

type SubsetError struct {
	Peer peer.ID
}

func (*SubsetError) Error

func (se *SubsetError) Error() string

type TssProcess

type TssProcess interface {
	Run(ctx context.Context, coordinator bool, resultChn chan interface{}, params []byte) error
	Stop()
	Ready(readyPeers []peer.ID, excludedPeers []peer.ID) (bool, error)
	Retryable() bool
	StartParams(readyPeers []peer.ID) []byte
	SessionID() string
	ValidCoordinators() []peer.ID
	Timeout() time.Duration
}

Directories

Path Synopsis
ecdsa
common/mock
Package mock_tss is a generated GoMock package.
Package mock_tss is a generated GoMock package.
Package mock_tss is a generated GoMock package.
Package mock_tss is a generated GoMock package.

Jump to

Keyboard shortcuts

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