[][src]Trait snarkvm_models::gadgets::algorithms::encryption::EncryptionGadget

pub trait EncryptionGadget<E: EncryptionScheme, F: Field> {
    type ParametersGadget: AllocGadget<E::Parameters, F> + Clone;
    type PrivateKeyGadget: AllocGadget<E::PrivateKey, F> + ToBytesGadget<F> + Clone + Sized + Debug;
    type PublicKeyGadget: AllocGadget<E::PublicKey, F> + EqGadget<F> + ToBytesGadget<F> + Clone + Sized + Debug;
    type CiphertextGadget: AllocGadget<Vec<E::Text>, F> + ToBytesGadget<F> + EqGadget<F> + Clone + Sized + Debug;
    type PlaintextGadget: AllocGadget<Vec<E::Text>, F> + EqGadget<F> + Clone + Sized + Debug;
    type RandomnessGadget: AllocGadget<E::Randomness, F> + Clone + Sized + Debug;
    type BlindingExponentGadget: AllocGadget<Vec<E::BlindingExponent>, F> + Clone + Sized + Debug;
    pub fn check_public_key_gadget<CS: ConstraintSystem<F>>(
        cs: CS,
        parameters: &Self::ParametersGadget,
        private_key: &Self::PrivateKeyGadget
    ) -> Result<Self::PublicKeyGadget, SynthesisError>;
pub fn check_encryption_gadget<CS: ConstraintSystem<F>>(
        cs: CS,
        parameters: &Self::ParametersGadget,
        randomness: &Self::RandomnessGadget,
        public_key: &Self::PublicKeyGadget,
        input: &Self::PlaintextGadget,
        blinding_exponents: &Self::BlindingExponentGadget
    ) -> Result<Self::CiphertextGadget, SynthesisError>; }

Associated Types

Loading content...

Required methods

pub fn check_public_key_gadget<CS: ConstraintSystem<F>>(
    cs: CS,
    parameters: &Self::ParametersGadget,
    private_key: &Self::PrivateKeyGadget
) -> Result<Self::PublicKeyGadget, SynthesisError>
[src]

pub fn check_encryption_gadget<CS: ConstraintSystem<F>>(
    cs: CS,
    parameters: &Self::ParametersGadget,
    randomness: &Self::RandomnessGadget,
    public_key: &Self::PublicKeyGadget,
    input: &Self::PlaintextGadget,
    blinding_exponents: &Self::BlindingExponentGadget
) -> Result<Self::CiphertextGadget, SynthesisError>
[src]

Loading content...

Implementors

Loading content...