example/vm: Update for new enums.

This commit is contained in:
parazyd
2022-01-25 20:31:35 +01:00
parent 4b013f27ee
commit c5aab1d2f8
4 changed files with 28 additions and 23 deletions

View File

@@ -262,4 +262,4 @@ required-features = ["crypto"]
[[example]]
name = "vm2"
path = "example/vm2.rs"
required-features = ["zkvm"]
required-features = ["cli", "zkvm"]

View File

@@ -36,7 +36,7 @@ clippy:
test:
$(CARGO) test --release --all-features --all
$(CARGO) run --release --features=node --example tx
$(CARGO) run --release --features=crypto,cli,zkas,zkvm --example vm2
$(CARGO) run --release --features=cli,zkvm --example vm2
clean:
rm -f $(BINS)

View File

@@ -7,6 +7,7 @@ use halo2_gadgets::primitives::{
poseidon::{ConstantLength, P128Pow5T3},
};
use incrementalmerkletree::{bridgetree::BridgeTree, Frontier, Tree};
use log::info;
use pasta_curves::{group::Curve, pallas};
use rand::rngs::OsRng;
use simplelog::{ColorChoice, LevelFilter, TermLogger, TerminalMode};
@@ -18,7 +19,7 @@ use darkfi::{
mint_proof::MintRevealedValues,
spend_proof::SpendRevealedValues,
},
zk::vm2::{WitnessVar, ZkCircuit},
zk::vm2::{Witness, ZkCircuit},
zkas::decoder::ZkBinary,
Result,
};
@@ -47,17 +48,17 @@ fn mint_proof() -> Result<()> {
let pk_coords = public_key.0.to_affine().coordinates().unwrap();
let witnesses = vec![
WitnessVar::Base(*pk_coords.x()),
WitnessVar::Base(*pk_coords.y()),
WitnessVar::Base(pallas::Base::from(value)),
WitnessVar::Base(token_id),
WitnessVar::Base(serial),
WitnessVar::Base(coin_blind),
WitnessVar::Scalar(value_blind),
WitnessVar::Scalar(token_blind),
Witness::Base(*pk_coords.x()),
Witness::Base(*pk_coords.y()),
Witness::Base(pallas::Base::from(value)),
Witness::Base(token_id),
Witness::Base(serial),
Witness::Base(coin_blind),
Witness::Scalar(value_blind),
Witness::Scalar(token_blind),
];
let circuit = ZkCircuit::new(witnesses, revealed.make_outputs().to_vec(), zkbin);
let circuit = ZkCircuit::new(witnesses, zkbin);
let prover = MockProver::run(11, &circuit, vec![revealed.make_outputs().to_vec()]).unwrap();
assert_eq!(prover.verify(), Ok(()));
@@ -120,19 +121,19 @@ fn burn_proof() -> Result<()> {
let leaf_pos = leaf_pos as u32;
let witnesses = vec![
WitnessVar::Base(secret.0),
WitnessVar::Base(serial),
WitnessVar::Base(pallas::Base::from(value)),
WitnessVar::Base(token_id),
WitnessVar::Base(coin_blind),
WitnessVar::Scalar(value_blind),
WitnessVar::Scalar(token_blind),
WitnessVar::Uint32(leaf_pos),
WitnessVar::MerklePath(merkle_path),
WitnessVar::Base(sig_secret.0),
Witness::Base(secret.0),
Witness::Base(serial),
Witness::Base(pallas::Base::from(value)),
Witness::Base(token_id),
Witness::Base(coin_blind),
Witness::Scalar(value_blind),
Witness::Scalar(token_blind),
Witness::Uint32(leaf_pos),
Witness::MerklePath(merkle_path),
Witness::Base(sig_secret.0),
];
let circuit = ZkCircuit::new(witnesses, revealed.make_outputs().to_vec(), zkbin);
let circuit = ZkCircuit::new(witnesses, zkbin);
let prover = MockProver::run(11, &circuit, vec![revealed.make_outputs().to_vec()])?;
assert_eq!(prover.verify(), Ok(()));
@@ -147,7 +148,10 @@ fn main() -> Result<()> {
ColorChoice::Auto,
)?;
info!("Executing Mint proof");
mint_proof()?;
info!("Executing Burn proof");
burn_proof()?;
Ok(())

View File

@@ -2,3 +2,4 @@ pub mod vm;
mod vm_stack;
pub use vm::*;
pub use vm_stack::Witness;