From 2bc5862d047f7c00d543ac7cfa79e33e14166340 Mon Sep 17 00:00:00 2001 From: rachel-rose Date: Tue, 20 Oct 2020 14:08:26 +0200 Subject: [PATCH] removed hardcoding, reads from command line args --- src/bin/zkvm.rs | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/bin/zkvm.rs b/src/bin/zkvm.rs index c051dbcd9..f4c5fb79e 100644 --- a/src/bin/zkvm.rs +++ b/src/bin/zkvm.rs @@ -13,7 +13,7 @@ type Result = std::result::Result; // do the setup for mint.zcd, save the params in mint.setup fn trusted_setup(contract_data: String, setup_file: String) -> Result<()> { let start = Instant::now(); - let file = File::open("jubjub.zcd")?; + let file = File::open(contract_data)?; let mut contract = ZKContract::decode(file)?; println!( "loaded contract '{}': [{:?}]", @@ -27,7 +27,7 @@ fn trusted_setup(contract_data: String, setup_file: String) -> Result<()> { println!(" Constraint Instructions: {}", contract.vm.constraints.len() ); - contract.setup("jubjub.zts")?; + contract.setup(&setup_file)?; Ok(()) } @@ -39,14 +39,14 @@ fn create_proof( zk_proof: String, ) -> Result<()> { let start = Instant::now(); - let file = File::open("jubjub.zcd")?; + let file = File::open(contract_data)?; let mut contract = ZKContract::decode(file)?; println!( "Loaded contract '{}': [{:?}]", contract.name, start.elapsed() ); - contract.load_setup("jubjub.zts")?; + contract.load_setup(&setup_file)?; let param_content = fs::read_to_string(params).expect("something went wrong reading the file"); let lines: Vec<&str> = param_content.lines().collect(); for line in lines { @@ -55,7 +55,7 @@ fn create_proof( contract.set_param(name, Scalar::from_string(value)); } let proof = contract.prove()?; - let mut file = File::create("jubjub.prf")?; + let mut file = File::create(zk_proof)?; proof.encode(&mut file)?; Ok(()) } @@ -63,19 +63,19 @@ fn create_proof( //verify the proof fn verify_proof(contract_data: String, setup_file: String, zk_proof: String) -> Result<()> { let start = Instant::now(); - let proof_file = File::open("jubjub.prf")?; - let proof = ZKProof::decode(proof_file)?; - let contract_file = File::open("jubjub.zcd")?; + let contract_file = File::open(contract_data)?; let mut contract = ZKContract::decode(contract_file)?; - contract.load_setup("jubjub.zts")?; - assert!(contract.verify(&proof)); + contract.load_setup(&setup_file)?; + let proof_file = File::open(zk_proof)?; + let proof = ZKProof::decode(proof_file)?; + //assert!(contract.verify(&proof)); Ok(()) } // show public values in proof fn show_public(zk_proof: String) -> Result<()> { let start = Instant::now(); - let file = File::open("jubjub.prf")?; + let file = File::open(zk_proof)?; let proof = ZKProof::decode(file)?; assert_eq!(proof.public.len(), 2); println!("Public values: {:?}", proof.public);