types

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jul 13, 2025 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

The Licensed Work is (c) 2022 Sygma SPDX-License-Identifier: LGPL-3.0-only

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MarshalStartMessage

func MarshalStartMessage(params []byte) ([]byte, error)

func MarshalTssMessage

func MarshalTssMessage(tssMsg *TssMessage) ([]byte, error)

func MarshalTssResharingMessage

func MarshalTssResharingMessage(
	msgBytes []byte,
	isToOldCommittee bool,
	isBroadcast bool,
	isToOldAndNewCommittees bool,
	from *tss.PartyID,
	to []*tss.PartyID,
) ([]byte, error)

Types

type GenerateKeyMessage

type GenerateKeyMessage struct {
	WalletID  string `json:"wallet_id"`
	Signature []byte `json:"signature"`
}

func (*GenerateKeyMessage) InitiatorID

func (m *GenerateKeyMessage) InitiatorID() string

func (*GenerateKeyMessage) Raw

func (m *GenerateKeyMessage) Raw() ([]byte, error)

func (*GenerateKeyMessage) Sig

func (m *GenerateKeyMessage) Sig() []byte

type InitiatorMessage

type InitiatorMessage interface {
	// Raw returns the canonical byte‐slice that was signed.
	Raw() ([]byte, error)
	// Sig returns the signature over Raw().
	Sig() []byte
	// InitiatorID returns the ID whose public key we have to look up.
	InitiatorID() string
}

InitiatorMessage is anything that carries a payload to verify and its signature.

type KeyType

type KeyType string
const (
	KeyTypeSecp256k1 KeyType = "secp256k1"
	KeyTypeEd25519   KeyType = "ed25519"
)

type ResharingMessage added in v0.3.0

type ResharingMessage struct {
	SessionID    string   `json:"session_id"`
	NodeIDs      []string `json:"node_ids"` // new peer IDs
	NewThreshold int      `json:"new_threshold"`
	KeyType      KeyType  `json:"key_type"`
	WalletID     string   `json:"wallet_id"`
	Signature    []byte   `json:"signature,omitempty"`
}

func (*ResharingMessage) InitiatorID added in v0.3.0

func (m *ResharingMessage) InitiatorID() string

func (*ResharingMessage) Raw added in v0.3.0

func (m *ResharingMessage) Raw() ([]byte, error)

func (*ResharingMessage) Sig added in v0.3.0

func (m *ResharingMessage) Sig() []byte

type SignTxMessage

type SignTxMessage struct {
	KeyType             KeyType `json:"key_type"`
	WalletID            string  `json:"wallet_id"`
	NetworkInternalCode string  `json:"network_internal_code"`
	TxID                string  `json:"tx_id"`
	Tx                  []byte  `json:"tx"`
	Signature           []byte  `json:"signature"`
}

func (*SignTxMessage) InitiatorID

func (m *SignTxMessage) InitiatorID() string

func (*SignTxMessage) Raw

func (m *SignTxMessage) Raw() ([]byte, error)

func (*SignTxMessage) Sig

func (m *SignTxMessage) Sig() []byte

type StartMessage

type StartMessage struct {
	Params []byte `json:"params"`
}

func UnmarshalStartMessage

func UnmarshalStartMessage(msgBytes []byte) (*StartMessage, error)

type TssMessage

type TssMessage struct {
	WalletID    string         `json:"sessionID"`
	MsgBytes    []byte         `json:"msgBytes"`
	IsBroadcast bool           `json:"isBroadcast"`
	From        *tss.PartyID   `json:"from"`
	To          []*tss.PartyID `json:"to"`

	IsToOldCommittee        bool `json:"isToOldCommittee"`
	IsToOldAndNewCommittees bool `json:"isToOldAndNewCommittees"`

	Signature []byte `json:"signature"`
}

func NewTssMessage

func NewTssMessage(
	walletID string,
	msgBytes []byte,
	isBroadcast bool,
	from *tss.PartyID,
	to []*tss.PartyID,
) TssMessage

func UnmarshalTssMessage

func UnmarshalTssMessage(msgBytes []byte) (*TssMessage, error)

func (*TssMessage) MarshalForSigning

func (msg *TssMessage) MarshalForSigning() ([]byte, error)

MarshalForSigning returns the deterministic JSON bytes for signing

Jump to

Keyboard shortcuts

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