Versions in this module Expand all Collapse all v1 v1.6.0 Oct 14, 2020 v1.5.0 Oct 5, 2020 v1.4.0 Sep 29, 2020 v1.3.0 Aug 31, 2020 Changes in this version + const StatusApproval + const StatusComplaint + var ErrNoDealBeforeResponse = errors.New("verifier: need to receive deal before response") + func MinimumT(n int) int + func RecoverSecret(suite Suite, deals []*Deal, n, t int) (kyber.Scalar, error) + type Aggregator struct + func NewEmptyAggregator(suite Suite, verifiers []kyber.Point) *Aggregator + func (a *Aggregator) DealCertified() bool + func (a *Aggregator) MissingResponses() []int + func (a *Aggregator) ProcessResponse(r *Response) error + func (a *Aggregator) Responses() map[uint32]*Response + func (a *Aggregator) SetThreshold(t int) + func (a *Aggregator) VerifyDeal(d *Deal, inclusion bool) error + type Deal struct + Commitments []kyber.Point + SecShare *share.PriShare + SessionID []byte + T uint32 + type Dealer struct + func NewDealer(suite Suite, longterm, secret kyber.Scalar, verifiers []kyber.Point, t int) (*Dealer, error) + func (d *Dealer) Commits() []kyber.Point + func (d *Dealer) EncryptedDeal(i int) (*EncryptedDeal, error) + func (d *Dealer) EncryptedDeals() ([]*EncryptedDeal, error) + func (d *Dealer) Key() (secret kyber.Scalar, public kyber.Point) + func (d *Dealer) PlaintextDeal(i int) (*Deal, error) + func (d *Dealer) PrivatePoly() *share.PriPoly + func (d *Dealer) ProcessResponse(r *Response) (*Justification, error) + func (d *Dealer) SecretCommit() kyber.Point + func (d *Dealer) SessionID() []byte + func (d *Dealer) SetTimeout() + type EncryptedDeal struct + Cipher []byte + DHKey []byte + Nonce []byte + Signature []byte + type Justification struct + Deal *Deal + Index uint32 + SessionID []byte + Signature []byte + func (j *Justification) Hash(s Suite) []byte + type Response struct + Index uint32 + SessionID []byte + Signature []byte + Status bool + func (r *Response) Hash(s Suite) []byte + type Suite interface + type Verifier struct + func NewVerifier(suite Suite, longterm kyber.Scalar, dealerKey kyber.Point, ...) (*Verifier, error) + func (v *Verifier) Commits() []kyber.Point + func (v *Verifier) Deal() *Deal + func (v *Verifier) DecryptDeal(e *EncryptedDeal) (*Deal, error) + func (v *Verifier) Index() int + func (v *Verifier) Key() (kyber.Scalar, kyber.Point) + func (v *Verifier) ProcessEncryptedDeal(e *EncryptedDeal) (*Response, error) + func (v *Verifier) ProcessJustification(dr *Justification) error + func (v *Verifier) ProcessResponse(resp *Response) error + func (v *Verifier) SessionID() []byte + func (v *Verifier) SetTimeout() + func (v *Verifier) UnsafeSetResponseDKG(idx uint32, approval bool)