Trait snarkvm_dpc::testnet2::Testnet2Components [−][src]
pub trait Testnet2Components: DPCComponents {}Show associated items
type MerkleParameters: LoadableMerkleParameters; type MerkleHashGadget: CRHGadget<<Self::MerkleParameters as MerkleParameters>::H, Self::InnerScalarField>; type EncryptionGroup: Group + ProjectiveCurve; type EncryptionGroupGadget: CompressedGroupGadget<Self::EncryptionGroup, Self::InnerScalarField>; 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>, UniversalSRS<Self::InnerScalarField, Self::PolynomialCommitment>), AllocatedCircuit = NoopCircuit<Self>, VerifierInput = ProgramLocalData<Self>>; type NoopProgramSNARKGadget: SNARKVerifierGadget<Self::NoopProgramSNARK, Self::OuterScalarField, Input = NonNativeFieldVar<Self::InnerScalarField, Self::OuterScalarField>>; type PolynomialCommitment: PolynomialCommitment<Self::InnerScalarField>; type FiatShamirRng: FiatShamirRng<Self::InnerScalarField, Self::OuterScalarField>; type MarlinMode: MarlinMode;
Expand description
Trait that stores information about the testnet2 DPC scheme.
Associated Types
Ledger digest type.
type MerkleHashGadget: CRHGadget<<Self::MerkleParameters as MerkleParameters>::H, Self::InnerScalarField>
type EncryptionGroup: Group + ProjectiveCurve
type EncryptionGroup: Group + ProjectiveCurve
Group and Model Parameters for record encryption
type EncryptionGroupGadget: CompressedGroupGadget<Self::EncryptionGroup, Self::InnerScalarField>
type InnerSNARK: SNARK<Circuit = InnerCircuit<Self>, AllocatedCircuit = InnerCircuit<Self>, VerifierInput = InnerCircuitVerifierInput<Self>>
type InnerSNARK: SNARK<Circuit = InnerCircuit<Self>, AllocatedCircuit = InnerCircuit<Self>, VerifierInput = InnerCircuitVerifierInput<Self>>
SNARK for non-proof-verification checks
type InnerSNARKGadget: SNARKVerifierGadget<Self::InnerSNARK, Self::OuterScalarField, Input = Vec<Boolean>>
type InnerSNARKGadget: SNARKVerifierGadget<Self::InnerSNARK, Self::OuterScalarField, Input = Vec<Boolean>>
SNARK Verifier gadget for the inner snark
type OuterSNARK: SNARK<Circuit = OuterCircuit<Self>, AllocatedCircuit = OuterCircuit<Self>, VerifierInput = OuterCircuitVerifierInput<Self>>
type OuterSNARK: SNARK<Circuit = OuterCircuit<Self>, AllocatedCircuit = OuterCircuit<Self>, VerifierInput = OuterCircuitVerifierInput<Self>>
SNARK for proof-verification checks
type NoopProgramSNARK: SNARK<Circuit = (NoopCircuit<Self>, UniversalSRS<Self::InnerScalarField, Self::PolynomialCommitment>), AllocatedCircuit = NoopCircuit<Self>, VerifierInput = ProgramLocalData<Self>>
type NoopProgramSNARK: SNARK<Circuit = (NoopCircuit<Self>, UniversalSRS<Self::InnerScalarField, Self::PolynomialCommitment>), AllocatedCircuit = NoopCircuit<Self>, VerifierInput = ProgramLocalData<Self>>
SNARK for the no-op “always-accept” that does nothing with its input.
type NoopProgramSNARKGadget: SNARKVerifierGadget<Self::NoopProgramSNARK, Self::OuterScalarField, Input = NonNativeFieldVar<Self::InnerScalarField, Self::OuterScalarField>>
type NoopProgramSNARKGadget: SNARKVerifierGadget<Self::NoopProgramSNARK, Self::OuterScalarField, Input = NonNativeFieldVar<Self::InnerScalarField, Self::OuterScalarField>>
SNARK Verifier gadget for the no-op “always-accept” that does nothing with its input.
Polynomial commitment scheme for Program SNARKS using Marlin.
type FiatShamirRng: FiatShamirRng<Self::InnerScalarField, Self::OuterScalarField>
type FiatShamirRng: FiatShamirRng<Self::InnerScalarField, Self::OuterScalarField>
Fiat Shamir RNG scheme used for Marlin SNARKS.
type MarlinMode: MarlinMode
type MarlinMode: MarlinMode
Specify the Marlin mode (recursive or non-recursive) for program SNARKS.