implement spartan verifier as a circuit and verify it with groth16

This commit is contained in:
Mara Mihali
2022-08-01 14:02:45 +01:00
committed by maramihali
parent c76f136006
commit 869bed65f4
3 changed files with 11 additions and 4 deletions

View File

@@ -23,10 +23,10 @@ use ark_r1cs_std::{
fields::fp::FpVar, fields::fp::FpVar,
prelude::{Boolean, EqGadget, FieldVar}, prelude::{Boolean, EqGadget, FieldVar},
}; };
<<<<<<< HEAD
use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystemRef, Namespace, SynthesisError}; use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystemRef, Namespace, SynthesisError};
use ark_sponge::{ =======
constraints::CryptographicSpongeVar, use ark_relations::{
poseidon::{constraints::PoseidonSpongeVar, PoseidonParameters},
}; };
use rand::{CryptoRng, Rng}; use rand::{CryptoRng, Rng};

View File

@@ -11,7 +11,10 @@ use ark_bw6_761::BW6_761 as P;
use super::commitments::MultiCommitGens; use super::commitments::MultiCommitGens;
use super::dense_mlpoly::{DensePolynomial, EqPolynomial, PolyCommitmentGens}; use super::dense_mlpoly::{DensePolynomial, EqPolynomial, PolyCommitmentGens};
use super::errors::ProofVerifyError; use super::errors::ProofVerifyError;
use super::group::{
CompressGroupElement, DecompressGroupElement, GroupElement, VartimeMultiscalarMul,
};
use super::nizk::{EqualityProof, KnowledgeProof, ProductProof};
use super::r1csinstance::R1CSInstance; use super::r1csinstance::R1CSInstance;
use super::scalar::Scalar; use super::scalar::Scalar;

View File

@@ -1650,7 +1650,11 @@ impl SparsePolynomial {
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
<<<<<<< HEAD
use crate::parameters::poseidon_params; use crate::parameters::poseidon_params;
=======
use crate::{parameters::poseidon_params};
>>>>>>> implement spartan verifier as a circuit and verify it with groth16
use super::*; use super::*;
use ark_std::UniformRand; use ark_std::UniformRand;