Change entropy to be the last command line arg, add test.sh file that demontstrates phase2 usage
This commit is contained in:
parent
e8b14ddb00
commit
7dd44484e2
@ -16,12 +16,12 @@ use std::fs::OpenOptions;
|
||||
fn main() {
|
||||
let args: Vec<String> = std::env::args().collect();
|
||||
if args.len() != 4 {
|
||||
println!("Usage: \n<in_params.params> <in_str_entropy> <out_params.params>");
|
||||
println!("Usage: \n<in_params.params> <out_params.params> <in_str_entropy>");
|
||||
std::process::exit(exitcode::USAGE);
|
||||
}
|
||||
let in_params_filename = &args[1];
|
||||
let entropy = &args[2];
|
||||
let out_params_filename = &args[3];
|
||||
let out_params_filename = &args[2];
|
||||
let entropy = &args[3];
|
||||
|
||||
let disallow_points_at_infinity = false;
|
||||
|
||||
|
41
phase2/test.sh
Executable file
41
phase2/test.sh
Executable file
@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
|
||||
rm -f pk.json vk.json transformed_vk.json transformed_pk.* proof.json
|
||||
|
||||
set -e
|
||||
|
||||
# move results of powers of tau here
|
||||
cp ../powersoftau/phase1radix* .
|
||||
|
||||
# compile circuit
|
||||
npx circom circuit.circom -o circuit.json && npx snarkjs info -c circuit.json
|
||||
# npx snarkjs info -c circuit.json
|
||||
|
||||
# initialize ceremony
|
||||
cargo run --release --bin new circuit.json circom1.params
|
||||
|
||||
cargo run --release --bin contribute circom1.params circom2.params asdajdzixcjlzxjczxlkcjzxlkcj
|
||||
cargo run --release --bin verify_contribution circuit.json circom1.params circom2.params
|
||||
|
||||
cargo run --release --bin contribute circom2.params circom3.params dsfjkshdfakjhsdf
|
||||
cargo run --release --bin verify_contribution circuit.json circom2.params circom3.params
|
||||
|
||||
cargo run --release --bin contribute circom3.params circom4.params askldfjklasdf
|
||||
cargo run --release --bin verify_contribution circuit.json circom3.params circom4.params
|
||||
|
||||
# generate resulting keys
|
||||
cargo run --release --bin export_keys circom4.params vk.json pk.json
|
||||
|
||||
# create dummy keys in circom format
|
||||
npx snarkjs setup --protocol groth
|
||||
# patch dummy keys with actual keys params
|
||||
node patch_vk.js
|
||||
# generate binary version of proving key
|
||||
node node_modules/websnark/tools/buildpkey.js -i transformed_pk.json -o transformed_pk.bin
|
||||
|
||||
# try to generate and verify proof
|
||||
snarkjs calculatewitness
|
||||
node node_modules/websnark/tools/buildwitness.js -i witness.json -o witness.bin
|
||||
snarkjs proof # to get public inputs json only
|
||||
./cli.js
|
||||
snarkjs verify --vk transformed_vk.json --proof proof.json
|
Loading…
Reference in New Issue
Block a user