Trait snarkvm_dpc::testnet1::Testnet1Components[][src]

pub trait Testnet1Components: DPCComponents {
    type MerkleParameters: LoadableMerkleParameters;
    type MerkleHashGadget: CRHGadget<<Self::MerkleParameters as MerkleParameters>::H, Self::InnerScalarField>;
    type EncryptionGroup: Group + ProjectiveCurve;
    type EncryptionParameters: MontgomeryParameters + TwistedEdwardsParameters;
    type InnerSNARK: SNARK<Circuit = InnerCircuit<Self>, AllocatedCircuit = InnerCircuit<Self>, VerifierInput = InnerCircuitVerifierInput<Self>>;
    type InnerSNARKGadget: SNARKVerifierGadget<Self::InnerSNARK, Self::OuterScalarField, Input = Vec<Boolean>>;
    type OuterSNARK: SNARK<Circuit = OuterCircuit<Self>, AllocatedCircuit = OuterCircuit<Self>, VerifierInput = OuterCircuitVerifierInput<Self>>;
    type NoopProgramSNARK: SNARK<Circuit = NoopCircuit<Self>, AllocatedCircuit = NoopCircuit<Self>, VerifierInput = ProgramLocalData<Self>>;
    type NoopProgramSNARKGadget: SNARKVerifierGadget<Self::NoopProgramSNARK, Self::OuterScalarField, Input = Vec<Boolean>>;
}
Expand description

Trait that stores information about the testnet1 DPC scheme.

Associated Types

Ledger digest type.

Group and Model Parameters for record encryption

SNARK for non-proof-verification checks

SNARK Verifier gadget for the inner snark

SNARK for proof-verification checks

SNARK for the no-op “always-accept” that does nothing with its input.

SNARK Verifier gadget for the no-op “always-accept” that does nothing with its input.

Implementors