solana_zk_sdk::zk_elgamal_proof_program::proof_data

Trait ZkProofData

source
pub trait ZkProofData<T: Pod> {
    const PROOF_TYPE: ProofType;

    // Required methods
    fn context_data(&self) -> &T;
    fn verify_proof(&self) -> Result<(), ProofVerificationError>;
}

Required Associated Constants§

Required Methods§

Object Safety§

This trait is not object safe.

Implementors§

source§

impl ZkProofData<BatchedGroupedCiphertext2HandlesValidityProofContext> for BatchedGroupedCiphertext2HandlesValidityProofData

source§

const PROOF_TYPE: ProofType = ProofType::BatchedGroupedCiphertext2HandlesValidity

source§

impl ZkProofData<BatchedGroupedCiphertext3HandlesValidityProofContext> for BatchedGroupedCiphertext3HandlesValidityProofData

source§

const PROOF_TYPE: ProofType = ProofType::BatchedGroupedCiphertext3HandlesValidity

source§

impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU64Data

source§

const PROOF_TYPE: ProofType = ProofType::BatchedRangeProofU64

source§

impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU128Data

source§

const PROOF_TYPE: ProofType = ProofType::BatchedRangeProofU128

source§

impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU256Data

source§

const PROOF_TYPE: ProofType = ProofType::BatchedRangeProofU256

source§

impl ZkProofData<CiphertextCiphertextEqualityProofContext> for CiphertextCiphertextEqualityProofData

source§

const PROOF_TYPE: ProofType = ProofType::CiphertextCiphertextEquality

source§

impl ZkProofData<CiphertextCommitmentEqualityProofContext> for CiphertextCommitmentEqualityProofData

source§

const PROOF_TYPE: ProofType = ProofType::CiphertextCommitmentEquality

source§

impl ZkProofData<GroupedCiphertext2HandlesValidityProofContext> for GroupedCiphertext2HandlesValidityProofData

source§

const PROOF_TYPE: ProofType = ProofType::GroupedCiphertext2HandlesValidity

source§

impl ZkProofData<GroupedCiphertext3HandlesValidityProofContext> for GroupedCiphertext3HandlesValidityProofData

source§

const PROOF_TYPE: ProofType = ProofType::GroupedCiphertext3HandlesValidity

source§

impl ZkProofData<PercentageWithCapProofContext> for PercentageWithCapProofData

source§

const PROOF_TYPE: ProofType = ProofType::PercentageWithCap

source§

impl ZkProofData<PubkeyValidityProofContext> for PubkeyValidityProofData

source§

const PROOF_TYPE: ProofType = ProofType::PubkeyValidity

source§

impl ZkProofData<ZeroCiphertextProofContext> for ZeroCiphertextProofData

source§

const PROOF_TYPE: ProofType = ProofType::ZeroCiphertext