frost_ristretto255::keys::dkg

Function part2

source
pub fn part2(
    secret_package: SecretPackage,
    round1_packages: &BTreeMap<Identifier, Package>,
) -> Result<(SecretPackage, BTreeMap<Identifier, Package>), Error>
Expand description

Performs the second part of the distributed key generation protocol for the participant holding the given round1::SecretPackage, given the received round1::Packages received from the other participants.

round1_packages maps the identifier of each other participant to the round1::Package they sent to the current participant (the owner of secret_package). These identifiers must come from whatever mapping the coordinator has between communication channels and participants, i.e. they must have assurance that the round1::Package came from the participant with that identifier.

It returns the round2::SecretPackage that must be kept in memory by the participant for the final step, and the map of round2::Packages that must be sent to each other participant who has the given identifier in the map key.