rachel-rose 5 лет назад
Родитель
Сommit
b502f5802a
1 измененных файлов с 7 добавлено и 5 удалено
  1. 7 5
      src/bin/zkvm.rs

+ 7 - 5
src/bin/zkvm.rs

@@ -42,18 +42,20 @@ fn create_proof(
     let start = Instant::now();
     let file = File::open(contract_data)?;
     let mut contract = ZKContract::decode(file)?;
+    contract.load_setup(&setup_file)?;
     println!(
         "Loaded contract '{}': [{:?}]",
         contract.name,
         start.elapsed()
     );
-    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 {
         let name = line.split_whitespace().next().unwrap_or("");
         let value = line.trim_start_matches(name).trim_left();
         contract.set_param(name, Scalar::from_string(value));
+        println!("Set parameter: {}", name);
+        println!("      Value: {}", value);
     }
     let proof = contract.prove()?;
     let mut file = File::create(zk_proof)?;
@@ -129,24 +131,24 @@ fn main() -> Result<()> {
         Some(("init", matches)) => {
             let contract_data: String = matches.value_of("CONTRACT_DATA").unwrap().parse()?;
             let setup_file: String = matches.value_of("SETUP_FILE").unwrap().parse()?;
-            trusted_setup(contract_data, setup_file);
+            trusted_setup(contract_data, setup_file)?;
         }
         Some(("prove", matches)) => {
             let contract_data: String = matches.value_of("CONTRACT_DATA").unwrap().parse()?;
             let setup_file: String = matches.value_of("SETUP_FILE").unwrap().parse()?;
             let params: String = matches.value_of("PARAMS").unwrap().parse()?;
             let zk_proof: String = matches.value_of("ZK_PROOF").unwrap().parse()?;
-            create_proof(contract_data, setup_file, params, zk_proof);
+            create_proof(contract_data, setup_file, params, zk_proof)?;
         }
         Some(("verify", matches)) => {
             let contract_data: String = matches.value_of("CONTRACT_DATA").unwrap().parse()?;
             let setup_file: String = matches.value_of("SETUP_FILE").unwrap().parse()?;
             let zk_proof: String = matches.value_of("ZK_PROOF").unwrap().parse()?;
-            verify_proof(contract_data, setup_file, zk_proof);
+            verify_proof(contract_data, setup_file, zk_proof)?;
         }
         Some(("show", matches)) => {
             let zk_proof: String = matches.value_of("ZK_PROOF").unwrap().parse()?;
-            show_public(zk_proof);
+            show_public(zk_proof)?;
         }
         _ => {
             eprintln!("error: Invalid subcommand invoked");