pub struct PublicKeyPackage<C: Ciphersuite> { /* private fields */ }
Expand description
Public data that contains all the signers’ verifying shares as well as the group verifying key.
Used for verification purposes before publishing a signature.
Implementations§
Source§impl<C: Ciphersuite> PublicKeyPackage<C>
Auto-generated by derive_getters::Getters
.
impl<C: Ciphersuite> PublicKeyPackage<C>
Auto-generated by derive_getters::Getters
.
The verifying shares for all participants. Used to validate signature shares they generate.
Sourcepub fn verifying_key(&self) -> &VerifyingKey<C>
pub fn verifying_key(&self) -> &VerifyingKey<C>
The joint public key for the entire group.
Source§impl<C> PublicKeyPackage<C>where
C: Ciphersuite,
impl<C> PublicKeyPackage<C>where
C: Ciphersuite,
Sourcepub fn new(
verifying_shares: BTreeMap<Identifier<C>, VerifyingShare<C>>,
verifying_key: VerifyingKey<C>,
) -> Self
pub fn new( verifying_shares: BTreeMap<Identifier<C>, VerifyingShare<C>>, verifying_key: VerifyingKey<C>, ) -> Self
Create a new PublicKeyPackage
instance.
Sourcepub fn from_commitment(
identifiers: &BTreeSet<Identifier<C>>,
commitment: &VerifiableSecretSharingCommitment<C>,
) -> Result<PublicKeyPackage<C>, Error<C>>
pub fn from_commitment( identifiers: &BTreeSet<Identifier<C>>, commitment: &VerifiableSecretSharingCommitment<C>, ) -> Result<PublicKeyPackage<C>, Error<C>>
Computes the public key package given a list of participant identifiers
and a VerifiableSecretSharingCommitment
. This is useful in scenarios
where the commitments are published somewhere and it’s desirable to
recreate the public key package from them.
Sourcepub fn from_dkg_commitments(
commitments: &BTreeMap<Identifier<C>, &VerifiableSecretSharingCommitment<C>>,
) -> Result<PublicKeyPackage<C>, Error<C>>
pub fn from_dkg_commitments( commitments: &BTreeMap<Identifier<C>, &VerifiableSecretSharingCommitment<C>>, ) -> Result<PublicKeyPackage<C>, Error<C>>
Computes the public key package given a map of participant identifiers
and their VerifiableSecretSharingCommitment
from a distributed key
generation process. This is useful in scenarios where the commitments
are published somewhere and it’s desirable to recreate the public key
package from them.
Source§impl<C> PublicKeyPackage<C>where
C: Ciphersuite,
impl<C> PublicKeyPackage<C>where
C: Ciphersuite,
Trait Implementations§
Source§impl<C: Clone + Ciphersuite> Clone for PublicKeyPackage<C>
impl<C: Clone + Ciphersuite> Clone for PublicKeyPackage<C>
Source§fn clone(&self) -> PublicKeyPackage<C>
fn clone(&self) -> PublicKeyPackage<C>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more