Crate dkg_pedpop

Source
Expand description

§Distributed Key Generation - PedPoP

This implements the PedPoP distributed key generation protocol for the dkg crate’s types.

This crate was originally part of the dkg crate, which was audited by Cypher Stack in March 2023, culminating in commit 669d2dbffc1dafb82a09d9419ea182667115df06. Any subsequent changes have not undergone auditing.

Structs§

AdditionalBlameMachine
A machine capable of handling an arbitrary amount of additional blame proofs.
BlameMachine
A machine capable of handling blame proofs.
Commitments
The commitments message, intended to be broadcast to all other parties.
EncryptedMessage
An encrypted message, with a per-message encryption key enabling revealing specific messages without side effects.
EncryptionKeyMessage
Wraps a message with a key to use for encryption in the future.
EncryptionKeyProof
A proof that the provided encryption key is a legitimately derived shared key for some message.
KeyGenMachine
State machine to begin the key generation protocol.
KeyMachine
Advancement of the the secret share state machine.
Participant
The ID of a participant, defined as a non-zero u16.
SecretShare
The secret share message, to be sent to the party it’s intended for over an authenticated channel.
SecretShareMachine
Advancement of the key generation state machine.
ThresholdKeys
Threshold keys usable for signing.
ThresholdParams
Parameters for a multisig.
ThresholdView
View of keys, interpolated and with the expected linear combination taken for usage.

Enums§

DkgError
Errors encountered when working with threshold keys.
Interpolation
A method of interpolation.
PedPoPError
Errors possible during key generation.