Skip to content

Commit

Permalink
fix clinkv2 test
Browse files Browse the repository at this point in the history
  • Loading branch information
sunhuachuang committed Oct 15, 2020
1 parent 33c78f2 commit 9157417
Showing 1 changed file with 5 additions and 59 deletions.
64 changes: 5 additions & 59 deletions scheme/tests/mimc-clinkv2.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ use math::One;

// Bring in some tools for using pairing-friendly curves
use curve::bn_256::{Bn_256, Fr};
use math::{test_rng, Field, FromBytes, ToBytes};
use math::{test_rng, Field};

use scheme::clinkv2::r1cs::{ConstraintSynthesizer, ConstraintSystem, SynthesisError};

Expand Down Expand Up @@ -144,8 +144,8 @@ impl<'a, F: Field> ConstraintSynthesizer<F> for MiMCDemo<'a, F> {
#[test]
fn mimc_clinkv2_kzg10() {
use scheme::clinkv2::kzg10::{
create_random_proof, prove_to_bytes, verify_from_bytes, verify_proof, Proof,
ProveAssignment, VerifyAssignment, VerifyKey, KZG10
create_random_proof, verify_proof, Proof, ProveAssignment, VerifyAssignment, VerifyKey,
KZG10,
};

let mut rng = &mut test_rng();
Expand Down Expand Up @@ -224,32 +224,8 @@ fn mimc_clinkv2_kzg10() {
// Check the proof
assert!(verify_proof(&verifier_pa, &kzg10_vk, &proof, &io).unwrap());

let mut vk_bytes = vec![];
kzg10_vk.write(&mut vk_bytes).unwrap();
let new_vk = VerifyKey::read(&vk_bytes[..]).unwrap();
assert_eq!(kzg10_vk, new_vk);

let mut tmp_proof_bytes = vec![];
proof.write(&mut tmp_proof_bytes).unwrap();
let new_proof = Proof::read(&tmp_proof_bytes[..]).unwrap();
assert_eq!(proof, new_proof);

println!("Tmp verify with bytes 1");
assert!(verify_proof(&verifier_pa, &new_vk, &proof, &io).unwrap());

println!("Tmp verify with bytes 2");
assert!(verify_proof(&verifier_pa, &kzg10_vk, &new_proof, &io).unwrap());

println!("Tmp verify with bytes 3");
assert!(verify_proof(&verifier_pa, &new_vk, &new_proof, &io).unwrap());
let verify_time = verify_start.elapsed();

println!("Start prove & verify with bytes...");

let (proof_bytes, publics_bytes) = prove_to_bytes(&prover_pa, &kzg10_ck, rng, &io).unwrap();
println!("proof bytes: {}", proof_bytes.len());
assert!(verify_from_bytes(&verifier_pa, &vk_bytes, &proof_bytes, &publics_bytes,).unwrap());

// Compute time

let proving_avg =
Expand All @@ -267,8 +243,8 @@ fn mimc_clinkv2_kzg10() {
fn mimc_clinkv2_ipa() {
use blake2::Blake2s;
use scheme::clinkv2::ipa::{
create_random_proof, prove_to_bytes, verify_from_bytes, verify_proof, Proof,
ProveAssignment, VerifyAssignment, VerifyKey, InnerProductArgPC,
create_random_proof, verify_proof, InnerProductArgPC, Proof, ProveAssignment,
VerifyAssignment, VerifyKey,
};

let mut rng = &mut test_rng();
Expand All @@ -289,11 +265,6 @@ fn mimc_clinkv2_ipa() {
let ipa_pp = InnerProductArgPC::<Bn_256, Blake2s>::setup(degree, &mut rng).unwrap();
let (ipa_ck, ipa_vk) = InnerProductArgPC::<Bn_256, Blake2s>::trim(&ipa_pp, degree).unwrap();

let mut vk_bytes = vec![];
ipa_vk.write(&mut vk_bytes).unwrap();
let new_vk = VerifyKey::read(&vk_bytes[..]).unwrap();
assert_eq!(ipa_vk, new_vk);

crs_time += start.elapsed();

println!("Start prove prepare...");
Expand Down Expand Up @@ -352,33 +323,8 @@ fn mimc_clinkv2_ipa() {
// Check the proof
assert!(verify_proof(&verifier_pa, &ipa_vk, &proof, &io).unwrap());

let mut vk_bytes = vec![];
ipa_vk.write(&mut vk_bytes).unwrap();
let new_vk = VerifyKey::read(&vk_bytes[..]).unwrap();
assert_eq!(ipa_vk, new_vk);

let mut tmp_proof_bytes = vec![];
proof.write(&mut tmp_proof_bytes).unwrap();
let new_proof = Proof::read(&tmp_proof_bytes[..]).unwrap();
assert_eq!(proof, new_proof);

println!("Tmp verify with bytes 1");
assert!(verify_proof(&verifier_pa, &new_vk, &proof, &io).unwrap());

println!("Tmp verify with bytes 2");
assert!(verify_proof(&verifier_pa, &ipa_vk, &new_proof, &io).unwrap());

println!("Tmp verify with bytes 3");
assert!(verify_proof(&verifier_pa, &new_vk, &new_proof, &io).unwrap());
let verify_time = verify_start.elapsed();

println!("Start prove & verify with bytes...");
assert!(verify_proof(&verifier_pa, &ipa_vk, &proof, &io).unwrap());

let (proof_bytes, publics_bytes) = prove_to_bytes(&prover_pa, &ipa_ck, rng, &io).unwrap();
println!("proof bytes: {}", proof_bytes.len());
assert!(verify_from_bytes(&verifier_pa, &vk_bytes, &proof_bytes, &publics_bytes,).unwrap());

// Compute time

let proving_avg =
Expand Down

0 comments on commit 9157417

Please sign in to comment.