serialize proof and witness (#27)
Kevin Jue kjue235@gmail.com
Thu, 22 Jun 2023 14:59:15 -0700
1 files changed,
11 insertions(+),
0 deletions(-)
jump to
M
benchmark.go
→
benchmark.go
@@ -115,6 +115,11 @@
fmt.Println("Generating witness", time.Now()) witness, _ := frontend.NewWitness(assignment, ecc.BN254.ScalarField()) publicWitness, _ := witness.Public() + if serialize { + fWitness, _ := os.Create("witness") + witness.WriteTo(fWitness) + fWitness.Close() + } fmt.Println("Creating proof", time.Now()) proof, err := groth16.Prove(r1cs, pk, witness)@@ -122,6 +127,12 @@ if err != nil {
fmt.Println(err) os.Exit(1) } + if serialize { + fProof, _ := os.Create("proof.proof") + proof.WriteTo(fProof) + fProof.Close() + } + fmt.Println("Verifying proof", time.Now()) err = groth16.Verify(proof, vk, publicWitness) if err != nil {