Trait snarkvm_wasm::traits::algorithms::CRHGadget[][src]

pub trait CRHGadget<H, F>: Clone where
    H: CRH,
    F: Field
{ type ParametersGadget: AllocGadget<<H as CRH>::Parameters, F> + Clone; type OutputGadget: AllocGadget<<H as CRH>::Output, F> + ConditionalEqGadget<F> + EqGadget<F> + CondSelectGadget<F> + ToBytesGadget<F> + Clone + Sized + Debug; pub fn check_evaluation_gadget<CS>(
        cs: CS,
        parameters: &Self::ParametersGadget,
        input: Vec<UInt8, Global>
    ) -> Result<Self::OutputGadget, SynthesisError>
    where
        CS: ConstraintSystem<F>
; }

Associated Types

Loading content...

Required methods

pub fn check_evaluation_gadget<CS>(
    cs: CS,
    parameters: &Self::ParametersGadget,
    input: Vec<UInt8, Global>
) -> Result<Self::OutputGadget, SynthesisError> where
    CS: ConstraintSystem<F>, 
[src]

Loading content...

Implementors

impl<F, G, GG, S> CRHGadget<BoweHopwoodPedersenCRH<G, S>, F> for BoweHopwoodPedersenCRHGadget<G, F, GG> where
    G: Group,
    S: PedersenSize,
    F: Field,
    GG: GroupGadget<G, F>, 
[src]

type OutputGadget = GG

type ParametersGadget = PedersenCRHParametersGadget<G, S, F, GG>

impl<F, G, GG, S> CRHGadget<BoweHopwoodPedersenCompressedCRH<G, S>, F> for BoweHopwoodPedersenCompressedCRHGadget<G, F, GG> where
    G: Group + ProjectiveCurve,
    S: PedersenSize,
    F: Field,
    GG: CompressedGroupGadget<G, F>, 
[src]

impl<F, G, GG, S> CRHGadget<PedersenCRH<G, S>, F> for PedersenCRHGadget<G, F, GG> where
    G: Group,
    S: PedersenSize,
    F: Field,
    GG: GroupGadget<G, F>, 
[src]

type OutputGadget = GG

type ParametersGadget = PedersenCRHParametersGadget<G, S, F, GG>

impl<F, G, GG, S> CRHGadget<PedersenCompressedCRH<G, S>, F> for PedersenCompressedCRHGadget<G, F, GG> where
    G: Group + ProjectiveCurve,
    S: PedersenSize,
    F: Field,
    GG: CompressedGroupGadget<G, F>, 
[src]

Loading content...