Trait snarkvm_wasm::SignaturePublicKeyRandomizationGadget [−][src]
pub trait SignaturePublicKeyRandomizationGadget<S, F> where
F: Field,
S: SignatureScheme, { type ParametersGadget: AllocGadget<<S as SignatureScheme>::Parameters, F>; type PublicKeyGadget: ToBytesGadget<F> + EqGadget<F> + AllocGadget<<S as SignatureScheme>::PublicKey, F> + Clone; type SignatureGadget: ToBytesGadget<F> + EqGadget<F> + AllocGadget<<S as SignatureScheme>::Signature, F> + Clone; fn check_randomization_gadget<CS>(
cs: CS,
parameters: &Self::ParametersGadget,
public_key: &Self::PublicKeyGadget,
randomness: &[UInt8]
) -> Result<Self::PublicKeyGadget, SynthesisError>
where
CS: ConstraintSystem<F>; fn verify<CS, PG>(
cs: CS,
parameters: &Self::ParametersGadget,
public_key: &Self::PublicKeyGadget,
message: &[UInt8],
signature: &Self::SignatureGadget
) -> Result<Boolean, SynthesisError>
where
CS: ConstraintSystem<F>,
PG: PRFGadget<Blake2s, F>; }
Associated Types
type ParametersGadget: AllocGadget<<S as SignatureScheme>::Parameters, F>
type PublicKeyGadget: ToBytesGadget<F> + EqGadget<F> + AllocGadget<<S as SignatureScheme>::PublicKey, F> + Clone
type SignatureGadget: ToBytesGadget<F> + EqGadget<F> + AllocGadget<<S as SignatureScheme>::Signature, F> + Clone
Required methods
fn check_randomization_gadget<CS>(
cs: CS,
parameters: &Self::ParametersGadget,
public_key: &Self::PublicKeyGadget,
randomness: &[UInt8]
) -> Result<Self::PublicKeyGadget, SynthesisError> where
CS: ConstraintSystem<F>,
fn verify<CS, PG>(
cs: CS,
parameters: &Self::ParametersGadget,
public_key: &Self::PublicKeyGadget,
message: &[UInt8],
signature: &Self::SignatureGadget
) -> Result<Boolean, SynthesisError> where
CS: ConstraintSystem<F>,
PG: PRFGadget<Blake2s, F>,