Struct frost_core::frost::Identifier
source · pub struct Identifier<C: Ciphersuite>(_);
Expand description
A FROST participant identifier.
The identifier is a field element in the scalar field that the secret polynomial is defined over, corresponding to some x-coordinate for a polynomial f(x) = y. MUST NOT be zero in the field, as f(0) = the shared secret.
Implementations§
source§impl<C> Identifier<C>where
C: Ciphersuite,
impl<C> Identifier<C>where C: Ciphersuite,
sourcepub fn serialize(&self) -> <<C::Group as Group>::Field as Field>::Serialization
pub fn serialize(&self) -> <<C::Group as Group>::Field as Field>::Serialization
Serialize the identifier using the ciphersuite encoding.
sourcepub fn deserialize(
buf: &<<C::Group as Group>::Field as Field>::Serialization
) -> Result<Self, Error<C>>
pub fn deserialize( buf: &<<C::Group as Group>::Field as Field>::Serialization ) -> Result<Self, Error<C>>
Deserialize an Identifier from a serialized buffer. Returns an error if it attempts to deserialize zero.
Trait Implementations§
source§impl<C: Clone + Ciphersuite> Clone for Identifier<C>
impl<C: Clone + Ciphersuite> Clone for Identifier<C>
source§fn clone(&self) -> Identifier<C>
fn clone(&self) -> Identifier<C>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<C> Debug for Identifier<C>where
C: Ciphersuite,
impl<C> Debug for Identifier<C>where C: Ciphersuite,
source§impl<C> Hash for Identifier<C>where
C: Ciphersuite,
impl<C> Hash for Identifier<C>where C: Ciphersuite,
source§impl<C> Index<Identifier<C>> for BindingFactorList<C>where
C: Ciphersuite,
impl<C> Index<Identifier<C>> for BindingFactorList<C>where C: Ciphersuite,
§type Output = BindingFactor<C>
type Output = BindingFactor<C>
The returned type after indexing.
source§impl<C> Mul<<<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar> for Identifier<C>where
C: Ciphersuite,
impl<C> Mul<<<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar> for Identifier<C>where C: Ciphersuite,
source§impl<C> MulAssign<Identifier<C>> for Scalar<C>where
C: Ciphersuite,
impl<C> MulAssign<Identifier<C>> for Scalar<C>where C: Ciphersuite,
source§fn mul_assign(&mut self, identifier: Identifier<C>)
fn mul_assign(&mut self, identifier: Identifier<C>)
Performs the
*=
operation. Read moresource§impl<C> Ord for Identifier<C>where
C: Ciphersuite,
impl<C> Ord for Identifier<C>where C: Ciphersuite,
source§impl<C: PartialEq + Ciphersuite> PartialEq<Identifier<C>> for Identifier<C>
impl<C: PartialEq + Ciphersuite> PartialEq<Identifier<C>> for Identifier<C>
source§fn eq(&self, other: &Identifier<C>) -> bool
fn eq(&self, other: &Identifier<C>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<C> PartialOrd<Identifier<C>> for Identifier<C>where
C: Ciphersuite,
impl<C> PartialOrd<Identifier<C>> for Identifier<C>where C: Ciphersuite,
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl<C> Sub<Identifier<C>> for Identifier<C>where
C: Ciphersuite,
impl<C> Sub<Identifier<C>> for Identifier<C>where C: Ciphersuite,
§type Output = Identifier<C>
type Output = Identifier<C>
The resulting type after applying the
-
operator.source§impl<C> TryFrom<u16> for Identifier<C>where
C: Ciphersuite,
impl<C> TryFrom<u16> for Identifier<C>where C: Ciphersuite,
impl<C: Copy + Ciphersuite> Copy for Identifier<C>
impl<C> Eq for Identifier<C>where C: Ciphersuite,
impl<C: Ciphersuite> StructuralPartialEq for Identifier<C>
Auto Trait Implementations§
impl<C> RefUnwindSafe for Identifier<C>where <<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar: RefUnwindSafe,
impl<C> Send for Identifier<C>where <<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar: Send,
impl<C> Sync for Identifier<C>where <<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar: Sync,
impl<C> Unpin for Identifier<C>where <<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar: Unpin,
impl<C> UnwindSafe for Identifier<C>where <<<C as Ciphersuite>::Group as Group>::Field as Field>::Scalar: UnwindSafe,
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