pub struct VssCommitment {
pub commitments: Vec<AffinePoint>,
}Expand description
Public commitments from a Feldman VSS deal.
C_0 = g^{a_0} is the joint public key. The remaining commitments
C_1...C_{T-1} allow shareholders to verify their shares.
Fields§
§commitments: Vec<AffinePoint>Commitment to each polynomial coefficient: C_i = g^{a_i}.
Implementations§
Source§impl VssCommitment
impl VssCommitment
Sourcepub fn new(commitments: Vec<AffinePoint>) -> Self
pub fn new(commitments: Vec<AffinePoint>) -> Self
Create a new VSS commitment from coefficient commitments.
Sourcepub fn joint_public_key(&self) -> AffinePoint
pub fn joint_public_key(&self) -> AffinePoint
The joint public key: C_0 = g^{secret}.
Verify that a share (party_idx, share) is consistent with
the committed polynomial.
Checks: g^{share} == product_i(C_i^{party_idx^i})
Trait Implementations§
Source§impl Clone for VssCommitment
impl Clone for VssCommitment
Source§fn clone(&self) -> VssCommitment
fn clone(&self) -> VssCommitment
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for VssCommitment
impl RefUnwindSafe for VssCommitment
impl Send for VssCommitment
impl Sync for VssCommitment
impl Unpin for VssCommitment
impl UnsafeUnpin for VssCommitment
impl UnwindSafe for VssCommitment
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more