Documentation
¶
Index ¶
- Constants
- Variables
- func ComparePartyIDs(x, y *tss.PartyID) bool
- func ComposeReadyKey(nodeID string) string
- func IsReshareRound(roundMsg string) bool
- func NewECDSAReshareSession(walletID string, pubSub messaging.PubSub, direct messaging.DirectMessaging, ...) *ecdsaReshareSession
- func NewEDDSAReshareSession(walletID string, pubSub messaging.PubSub, direct messaging.DirectMessaging, ...) *eddsaReshareSession
- func NewRegistry(nodeID string, peerNodeIDs []string, consulKV infra.ConsulKV) *registry
- func PartyIDToRoutingDest(partyID *tss.PartyID) string
- type GetRoundFunc
- type ID
- type KeyComposerFn
- type KeyGenSession
- type KeyType
- type Node
- func (p *Node) Close()
- func (p *Node) CreateKeyGenSession(sessionType SessionType, walletID string, threshold int, ...) (KeyGenSession, error)
- func (p *Node) CreateReshareSession(sessionType SessionType, walletID string, oldThreshold int, newThreshold int, ...) (ReshareSession, error)
- func (p *Node) CreateSigningSession(sessionType SessionType, walletID string, txID string, ...) (SigningSession, error)
- func (p *Node) ID() string
- type PeerRegistry
- type ReshareSession
- type RoundInfo
- type Session
- type SessionType
- type SigningSession
- type TopicComposer
Constants ¶
View Source
const ( KEYGEN1 = "KGRound1Message" KEYGEN2aUnicast = "KGRound2Message1" KEYGEN2b = "KGRound2Message2" KEYGEN3 = "KGRound3Message" KEYSIGN1aUnicast = "SignRound1Message1" KEYSIGN1b = "SignRound1Message2" KEYSIGN2Unicast = "SignRound2Message" KEYSIGN3 = "SignRound3Message" KEYSIGN4 = "SignRound4Message" KEYSIGN5 = "SignRound5Message" KEYSIGN6 = "SignRound6Message" KEYSIGN7 = "SignRound7Message" KEYSIGN8 = "SignRound8Message" KEYSIGN9 = "SignRound9Message" KEYRESHARING1Unicast = "DGRound1Message" KEYRESHARING2aUnicast = "DGRound2Message1" KEYRESHARING2bUnicast = "DGRound2Message2" KEYRESHARING3aUnicast = "DGRound3Message1" KEYRESHARING3b = "DGRound3Message2" KEYRESHARING4a = "DGRound4Message1" KEYRESHARING4bUnicast = "DGRound4Message2" TSSKEYGENROUNDS = 4 TSSKEYSIGNROUNDS = 10 )
View Source
const ( EDDSA_KEYGEN1 = "KGRound1Message" EDDSA_KEYGEN2aUnicast = "KGRound2Message1" EDDSA_KEYGEN2b = "KGRound2Message2" EDDSA_KEYSIGN1 = "SignRound1Message" EDDSA_KEYSIGN2 = "SignRound2Message" EDDSA_KEYSIGN3 = "SignRound3Message" EDDSA_RESHARING1 = "DGRound1Message" EDDSA_RESHARING2 = "DGRound2Message" EDDSA_RESHARING3aUnicast = "DGRound3Message1" EDDSA_RESHARING3bUnicast = "DGRound3Message2" EDDSA_RESHARING4 = "DGRound4Message" EDDSA_TSSKEYGENROUNDS = 3 EDDSA_TSSKEYSIGNROUNDS = 3 EDDSA_RESHARINGROUNDS = 4 )
View Source
const ( PurposeKeygen string = "keygen" PurposeSign string = "sign" BackwardCompatibleVersion int = 0 DefaultVersion int = 1 )
View Source
const ( TypeGenerateWalletResultFmt = "mpc.mpc_keygen_result.%s" SessionTypeECDSA SessionType = "session_ecdsa" SessionTypeEDDSA SessionType = "session_eddsa" )
View Source
const (
ReadinessCheckPeriod = 1 * time.Second
)
Variables ¶
View Source
var ( ErrNotEnoughParticipants = errors.New("Not enough participants to sign") ErrNotInParticipantList = errors.New("Node is not in the participant list") )
Functions ¶
func ComparePartyIDs ¶
func ComposeReadyKey ¶
func IsReshareRound ¶ added in v0.3.0
func NewECDSAReshareSession ¶ added in v0.3.0
func NewECDSAReshareSession( walletID string, pubSub messaging.PubSub, direct messaging.DirectMessaging, participantPeerIDs []string, selfID *tss.PartyID, oldPartyIDs []*tss.PartyID, newPartyIDs []*tss.PartyID, threshold int, newThreshold int, preParams *keygen.LocalPreParams, kvstore kvstore.KVStore, keyinfoStore keyinfo.Store, resultQueue messaging.MessageQueue, identityStore identity.Store, newPeerIDs []string, isNewParty bool, version int, ) *ecdsaReshareSession
func NewEDDSAReshareSession ¶ added in v0.3.0
func NewEDDSAReshareSession( walletID string, pubSub messaging.PubSub, direct messaging.DirectMessaging, participantPeerIDs []string, selfID *tss.PartyID, oldPartyIDs []*tss.PartyID, newPartyIDs []*tss.PartyID, threshold int, newThreshold int, kvstore kvstore.KVStore, keyinfoStore keyinfo.Store, resultQueue messaging.MessageQueue, identityStore identity.Store, newPeerIDs []string, isNewParty bool, version int, ) *eddsaReshareSession
func NewRegistry ¶
func PartyIDToRoutingDest ¶ added in v0.3.0
Types ¶
type GetRoundFunc ¶
type KeyComposerFn ¶
type KeyGenSession ¶ added in v0.3.0
type Node ¶
type Node struct {
// contains filtered or unexported fields
}
func (*Node) CreateKeyGenSession ¶
func (p *Node) CreateKeyGenSession( sessionType SessionType, walletID string, threshold int, resultQueue messaging.MessageQueue, ) (KeyGenSession, error)
func (*Node) CreateReshareSession ¶ added in v0.3.0
func (p *Node) CreateReshareSession( sessionType SessionType, walletID string, oldThreshold int, newThreshold int, newPeerIDs []string, isNewPeer bool, resultQueue messaging.MessageQueue, ) (ReshareSession, error)
func (*Node) CreateSigningSession ¶
func (p *Node) CreateSigningSession( sessionType SessionType, walletID string, txID string, networkInternalCode string, resultQueue messaging.MessageQueue, ) (SigningSession, error)
type PeerRegistry ¶
type ReshareSession ¶ added in v0.3.0
type ReshareSession interface {
Session
}
type RoundInfo ¶
func GetEcdsaMsgRound ¶
type SessionType ¶
type SessionType string
type SigningSession ¶
type TopicComposer ¶
Click to show internal directories.
Click to hide internal directories.