Documentation
¶
Index ¶
- type Commitment
- type JVSS
- func (j *JVSS) CombineShares(shares map[party.ID]*Share) (curve.Scalar, error)
- func (j *JVSS) GenerateShares() (map[party.ID]*Share, *Commitment, curve.Scalar, error)
- func (j *JVSS) VerifyAndCombine(allShares map[party.ID]map[party.ID]*Share, ...) (curve.Scalar, error)
- func (j *JVSS) VerifyShare(share *Share, commitment *Commitment, partyID party.ID) bool
- type Share
- type ShareProof
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Commitment ¶
Commitment represents a polynomial commitment.
type JVSS ¶
type JVSS struct {
// contains filtered or unexported fields
}
JVSS implements Joint Verifiable Secret Sharing. This is used to generate the auxiliary secrets w and q in the re-sharing protocol
func StartJVSS ¶
func StartJVSS(group curve.Curve, selfID party.ID, parties []party.ID, threshold int, _ *pool.Pool) (*JVSS, map[party.ID]*Share, error)
StartJVSS starts a JVSS protocol round
func (*JVSS) CombineShares ¶
CombineShares combines shares to reconstruct the secret
func (*JVSS) GenerateShares ¶
GenerateShares generates shares for a new random secret.
func (*JVSS) VerifyAndCombine ¶
func (j *JVSS) VerifyAndCombine(allShares map[party.ID]map[party.ID]*Share, commitments map[party.ID]*Commitment) (curve.Scalar, error)
VerifyAndCombine verifies all shares and combines them to get the final secret
func (*JVSS) VerifyShare ¶
VerifyShare verifies a share received from another party.
type ShareProof ¶
type ShareProof struct {
}
ShareProof provides zero-knowledge proof of share validity.
Click to show internal directories.
Click to hide internal directories.