Documentation ¶
Overview ¶
Package vss is a generated protocol buffer package.
It is generated from these files:
crypto/share/vss/vss.proto
It has these top-level messages:
EncryptedDeal Deal Response Justification
Index ¶
- type Deal
- type EncryptedDeal
- func (*EncryptedDeal) Descriptor() ([]byte, []int)
- func (m *EncryptedDeal) GetCipher() []byte
- func (m *EncryptedDeal) GetDhkey() []byte
- func (m *EncryptedDeal) GetNonce() []byte
- func (m *EncryptedDeal) GetSignature() []byte
- func (*EncryptedDeal) ProtoMessage()
- func (m *EncryptedDeal) Reset()
- func (m *EncryptedDeal) String() string
- type Justification
- func (*Justification) Descriptor() ([]byte, []int)
- func (m *Justification) GetDeal() *Deal
- func (m *Justification) GetIndex() uint32
- func (m *Justification) GetSessionId() []byte
- func (m *Justification) GetSignature() []byte
- func (*Justification) ProtoMessage()
- func (m *Justification) Reset()
- func (m *Justification) String() string
- type Response
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Deal ¶
type Deal struct { // session id of the current protocol run SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` Share *share.PrivateShare `protobuf:"bytes,2,opt,name=share" json:"share,omitempty"` // threshold of the secret sharing protocol run Threshold uint32 `protobuf:"varint,3,opt,name=threshold" json:"threshold,omitempty"` // commitments of the polynomial used to derive the share Commitments []*element.Point `protobuf:"bytes,4,rep,name=commitments" json:"commitments,omitempty"` }
Deal holds the share created by a dealer for a round of a vss or dkg protocol It is always meant to be encrypted when on transit because it contains private information (the share).
func (*Deal) Descriptor ¶
func (*Deal) GetCommitments ¶
func (*Deal) GetSessionId ¶
func (*Deal) GetShare ¶
func (m *Deal) GetShare() *share.PrivateShare
func (*Deal) GetThreshold ¶
func (*Deal) ProtoMessage ¶
func (*Deal) ProtoMessage()
type EncryptedDeal ¶
type EncryptedDeal struct { // ephemereal diffie hellman key Dhkey []byte `protobuf:"bytes,1,opt,name=dhkey,proto3" json:"dhkey,omitempty"` // schnorr signature over the dhkey by the longterm key of the dealer Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` // nonce used in the generation of the ephemereal key Nonce []byte `protobuf:"bytes,3,opt,name=nonce,proto3" json:"nonce,omitempty"` // cipher of the deal marshalled by protobuf2. TODO: marshal in a // more explicit and easier way. Cipher []byte `protobuf:"bytes,4,opt,name=cipher,proto3" json:"cipher,omitempty"` }
EncryptedDeal holds a share encrypted towards the share holder's longterm public key..
func (*EncryptedDeal) Descriptor ¶
func (*EncryptedDeal) Descriptor() ([]byte, []int)
func (*EncryptedDeal) GetCipher ¶
func (m *EncryptedDeal) GetCipher() []byte
func (*EncryptedDeal) GetDhkey ¶
func (m *EncryptedDeal) GetDhkey() []byte
func (*EncryptedDeal) GetNonce ¶
func (m *EncryptedDeal) GetNonce() []byte
func (*EncryptedDeal) GetSignature ¶
func (m *EncryptedDeal) GetSignature() []byte
func (*EncryptedDeal) ProtoMessage ¶
func (*EncryptedDeal) ProtoMessage()
func (*EncryptedDeal) Reset ¶
func (m *EncryptedDeal) Reset()
func (*EncryptedDeal) String ¶
func (m *EncryptedDeal) String() string
type Justification ¶
type Justification struct { // session id of the current run SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` // index of the issuer of this justification Index uint32 `protobuf:"varint,2,opt,name=index" json:"index,omitempty"` // plaintext deal that the complaint response points to Deal *Deal `protobuf:"bytes,3,opt,name=deal" json:"deal,omitempty"` // signature over the whole packet Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"` }
Justification enables a dealer to justify that it did not cheat in case some nodes complain about their received deal. It is NOT YET in production use though.
func (*Justification) Descriptor ¶
func (*Justification) Descriptor() ([]byte, []int)
func (*Justification) GetDeal ¶
func (m *Justification) GetDeal() *Deal
func (*Justification) GetIndex ¶
func (m *Justification) GetIndex() uint32
func (*Justification) GetSessionId ¶
func (m *Justification) GetSessionId() []byte
func (*Justification) GetSignature ¶
func (m *Justification) GetSignature() []byte
func (*Justification) ProtoMessage ¶
func (*Justification) ProtoMessage()
func (*Justification) Reset ¶
func (m *Justification) Reset()
func (*Justification) String ¶
func (m *Justification) String() string
type Response ¶
type Response struct { // session id of the SessionId []byte `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"` // index of the verifier issuing the response Index uint32 `protobuf:"varint,2,opt,name=index" json:"index,omitempty"` // status of the response. false = complaint, true = approval Status bool `protobuf:"varint,3,opt,name=status" json:"status,omitempty"` // signature over the packet using the longterm's key of the participant at // the given index Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"` }
Response is the response of a participant after having received an encrypted deal. It is meant to be broadcasted to every participants.
func (*Response) Descriptor ¶
func (*Response) GetSessionId ¶
func (*Response) GetSignature ¶
func (*Response) ProtoMessage ¶
func (*Response) ProtoMessage()