dkg

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Apr 10, 2020 License: Apache-2.0 Imports: 16 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNotEnoughRanks = errors.New("not enough ranks")
)
View Source
var (
	// ErrTrivialPublicKey is returned the public key is the identity element
	ErrTrivialPublicKey = errors.New("the publickey is the identity element")
)
View Source
var Type_name = map[int32]string{
	0: "Peer",
	1: "Decommit",
	2: "Verify",
	3: "Result",
}
View Source
var Type_value = map[string]int32{
	"Peer":     0,
	"Decommit": 1,
	"Verify":   2,
	"Result":   3,
}

Functions

This section is empty.

Types

type BodyDecommit

type BodyDecommit struct {
	HashDecommitment     *commitment.HashDecommitmentMessage `protobuf:"bytes,1,opt,name=hashDecommitment,proto3" json:"hashDecommitment,omitempty"`
	PointCommitment      *commitment.PointCommitmentMessage  `protobuf:"bytes,2,opt,name=pointCommitment,proto3" json:"pointCommitment,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                            `json:"-"`
	XXX_unrecognized     []byte                              `json:"-"`
	XXX_sizecache        int32                               `json:"-"`
}

func (*BodyDecommit) Descriptor

func (*BodyDecommit) Descriptor() ([]byte, []int)

func (*BodyDecommit) GetHashDecommitment

func (m *BodyDecommit) GetHashDecommitment() *commitment.HashDecommitmentMessage

func (*BodyDecommit) GetPointCommitment

func (m *BodyDecommit) GetPointCommitment() *commitment.PointCommitmentMessage

func (*BodyDecommit) ProtoMessage

func (*BodyDecommit) ProtoMessage()

func (*BodyDecommit) Reset

func (m *BodyDecommit) Reset()

func (*BodyDecommit) String

func (m *BodyDecommit) String() string

func (*BodyDecommit) XXX_DiscardUnknown

func (m *BodyDecommit) XXX_DiscardUnknown()

func (*BodyDecommit) XXX_Marshal

func (m *BodyDecommit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BodyDecommit) XXX_Merge

func (m *BodyDecommit) XXX_Merge(src proto.Message)

func (*BodyDecommit) XXX_Size

func (m *BodyDecommit) XXX_Size() int

func (*BodyDecommit) XXX_Unmarshal

func (m *BodyDecommit) XXX_Unmarshal(b []byte) error

type BodyPeer

type BodyPeer struct {
	Bk                   *birkhoffinterpolation.BkParameterMessage `protobuf:"bytes,1,opt,name=bk,proto3" json:"bk,omitempty"`
	Commitment           *commitment.HashCommitmentMessage         `protobuf:"bytes,2,opt,name=commitment,proto3" json:"commitment,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                  `json:"-"`
	XXX_unrecognized     []byte                                    `json:"-"`
	XXX_sizecache        int32                                     `json:"-"`
}

func (*BodyPeer) Descriptor

func (*BodyPeer) Descriptor() ([]byte, []int)

func (*BodyPeer) GetBk

func (*BodyPeer) GetCommitment

func (m *BodyPeer) GetCommitment() *commitment.HashCommitmentMessage

func (*BodyPeer) ProtoMessage

func (*BodyPeer) ProtoMessage()

func (*BodyPeer) Reset

func (m *BodyPeer) Reset()

func (*BodyPeer) String

func (m *BodyPeer) String() string

func (*BodyPeer) XXX_DiscardUnknown

func (m *BodyPeer) XXX_DiscardUnknown()

func (*BodyPeer) XXX_Marshal

func (m *BodyPeer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BodyPeer) XXX_Merge

func (m *BodyPeer) XXX_Merge(src proto.Message)

func (*BodyPeer) XXX_Size

func (m *BodyPeer) XXX_Size() int

func (*BodyPeer) XXX_Unmarshal

func (m *BodyPeer) XXX_Unmarshal(b []byte) error

type BodyResult

type BodyResult struct {
	SiGProofMsg          *zkproof.SchnorrProofMessage `protobuf:"bytes,1,opt,name=siGProofMsg,proto3" json:"siGProofMsg,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

func (*BodyResult) Descriptor

func (*BodyResult) Descriptor() ([]byte, []int)

func (*BodyResult) GetSiGProofMsg

func (m *BodyResult) GetSiGProofMsg() *zkproof.SchnorrProofMessage

func (*BodyResult) ProtoMessage

func (*BodyResult) ProtoMessage()

func (*BodyResult) Reset

func (m *BodyResult) Reset()

func (*BodyResult) String

func (m *BodyResult) String() string

func (*BodyResult) XXX_DiscardUnknown

func (m *BodyResult) XXX_DiscardUnknown()

func (*BodyResult) XXX_Marshal

func (m *BodyResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BodyResult) XXX_Merge

func (m *BodyResult) XXX_Merge(src proto.Message)

func (*BodyResult) XXX_Size

func (m *BodyResult) XXX_Size() int

func (*BodyResult) XXX_Unmarshal

func (m *BodyResult) XXX_Unmarshal(b []byte) error

type BodyVerify

type BodyVerify struct {
	Verify               *commitment.FeldmanVerifyMessage `protobuf:"bytes,1,opt,name=verify,proto3" json:"verify,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
	XXX_unrecognized     []byte                           `json:"-"`
	XXX_sizecache        int32                            `json:"-"`
}

func (*BodyVerify) Descriptor

func (*BodyVerify) Descriptor() ([]byte, []int)

func (*BodyVerify) GetVerify

func (m *BodyVerify) GetVerify() *commitment.FeldmanVerifyMessage

func (*BodyVerify) ProtoMessage

func (*BodyVerify) ProtoMessage()

func (*BodyVerify) Reset

func (m *BodyVerify) Reset()

func (*BodyVerify) String

func (m *BodyVerify) String() string

func (*BodyVerify) XXX_DiscardUnknown

func (m *BodyVerify) XXX_DiscardUnknown()

func (*BodyVerify) XXX_Marshal

func (m *BodyVerify) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BodyVerify) XXX_Merge

func (m *BodyVerify) XXX_Merge(src proto.Message)

func (*BodyVerify) XXX_Size

func (m *BodyVerify) XXX_Size() int

func (*BodyVerify) XXX_Unmarshal

func (m *BodyVerify) XXX_Unmarshal(b []byte) error

type DKG

type DKG struct {
	*message.MsgMain
	// contains filtered or unexported fields
}

func NewDKG

func NewDKG(curve elliptic.Curve, peerManager types.PeerManager, threshold uint32, rank uint32, listener types.StateChangedListener) (*DKG, error)

func (*DKG) GetPeerMessage

func (d *DKG) GetPeerMessage() *Message

func (*DKG) GetResult

func (d *DKG) GetResult() (*Result, error)

GetResult returns the final result: public key, share, bks (including self bk)

type Message

type Message struct {
	Type Type   `protobuf:"varint,1,opt,name=type,proto3,enum=dkg.Type" json:"type,omitempty"`
	Id   string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	// Types that are valid to be assigned to Body:
	//	*Message_Peer
	//	*Message_Decommit
	//	*Message_Verify
	//	*Message_Result
	Body                 isMessage_Body `protobuf_oneof:"body"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

func (*Message) Descriptor

func (*Message) Descriptor() ([]byte, []int)

func (*Message) GetBody

func (m *Message) GetBody() isMessage_Body

func (*Message) GetDecommit

func (m *Message) GetDecommit() *BodyDecommit

func (*Message) GetId

func (m *Message) GetId() string

func (*Message) GetMessageType

func (m *Message) GetMessageType() types.MessageType

func (*Message) GetPeer

func (m *Message) GetPeer() *BodyPeer

func (*Message) GetResult

func (m *Message) GetResult() *BodyResult

func (*Message) GetType

func (m *Message) GetType() Type

func (*Message) GetVerify

func (m *Message) GetVerify() *BodyVerify

func (*Message) IsValid

func (m *Message) IsValid() bool

func (*Message) ProtoMessage

func (*Message) ProtoMessage()

func (*Message) Reset

func (m *Message) Reset()

func (*Message) String

func (m *Message) String() string

func (*Message) XXX_DiscardUnknown

func (m *Message) XXX_DiscardUnknown()

func (*Message) XXX_Marshal

func (m *Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Message) XXX_Merge

func (m *Message) XXX_Merge(src proto.Message)

func (*Message) XXX_OneofWrappers

func (*Message) XXX_OneofWrappers() []interface{}

XXX_OneofWrappers is for the internal use of the proto package.

func (*Message) XXX_Size

func (m *Message) XXX_Size() int

func (*Message) XXX_Unmarshal

func (m *Message) XXX_Unmarshal(b []byte) error

type Message_Decommit

type Message_Decommit struct {
	Decommit *BodyDecommit `protobuf:"bytes,4,opt,name=decommit,proto3,oneof"`
}

type Message_Peer

type Message_Peer struct {
	Peer *BodyPeer `protobuf:"bytes,3,opt,name=peer,proto3,oneof"`
}

type Message_Result

type Message_Result struct {
	Result *BodyResult `protobuf:"bytes,6,opt,name=result,proto3,oneof"`
}

type Message_Verify

type Message_Verify struct {
	Verify *BodyVerify `protobuf:"bytes,5,opt,name=verify,proto3,oneof"`
}

type Result

type Result struct {
	PublicKey *ecpointgrouplaw.ECPoint
	Share     *big.Int
	Bks       map[string]*birkhoffinterpolation.BkParameter
}

type Type

type Type int32
const (
	Type_Peer     Type = 0
	Type_Decommit Type = 1
	Type_Verify   Type = 2
	Type_Result   Type = 3
)

func (Type) EnumDescriptor

func (Type) EnumDescriptor() ([]byte, []int)

func (Type) String

func (x Type) String() string

Jump to

Keyboard shortcuts

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