pub trait SignatureMachine<S>: Send + Sync {
type SignatureShare: Clone + PartialEq + Writable;
// Required methods
fn read_share<R: Read>(
&self,
reader: &mut R,
) -> Result<Self::SignatureShare>;
fn complete(
self,
shares: HashMap<Participant, Self::SignatureShare>,
) -> Result<S, FrostError>;
}
Expand description
Trait for the final machine of a two-round signing protocol.
Required Associated Types§
SignatureShare message for this machine.
Required Methods§
Read a Signature Share message.
Sourcefn complete(
self,
shares: HashMap<Participant, Self::SignatureShare>,
) -> Result<S, FrostError>
fn complete( self, shares: HashMap<Participant, Self::SignatureShare>, ) -> Result<S, FrostError>
Complete signing. Takes in everyone elses’ shares. Returns the signature.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.