Browse Source

chore: update proving with decider-eth

main
dmpierre 7 months ago
parent
commit
a3ce9d7805
3 changed files with 11 additions and 4 deletions
  1. +3
    -1
      Cargo.lock
  2. +1
    -1
      Cargo.toml
  3. +7
    -2
      src/main.rs

+ 3
- 1
Cargo.lock

@ -1119,12 +1119,14 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
[[package]] [[package]]
name = "folding-schemes" name = "folding-schemes"
version = "0.1.0" version = "0.1.0"
source = "git+https://github.com/privacy-scaling-explorations/folding-schemes.git?branch=feature/decider-link-groth16-kzg#86acbf212d898b7db5dbf05c4db367122d2ae88b"
source = "git+https://github.com/privacy-scaling-explorations/folding-schemes.git?branch=feature/solidity-decider-verifier#426c6ee6dea6e76fa47811b25ce5184e34202ec1"
dependencies = [ dependencies = [
"ark-bn254",
"ark-circom", "ark-circom",
"ark-crypto-primitives", "ark-crypto-primitives",
"ark-ec", "ark-ec",
"ark-ff", "ark-ff",
"ark-groth16",
"ark-poly", "ark-poly",
"ark-poly-commit", "ark-poly-commit",
"ark-r1cs-std", "ark-r1cs-std",

+ 1
- 1
Cargo.toml

@ -7,7 +7,7 @@ edition = "2021"
[dependencies] [dependencies]
ark-r1cs-std = { git = "https://github.com/arnaucube/ark-r1cs-std-cherry-picked/" } ark-r1cs-std = { git = "https://github.com/arnaucube/ark-r1cs-std-cherry-picked/" }
folding-schemes = { git = "https://github.com/privacy-scaling-explorations/folding-schemes.git", package = "folding-schemes", branch="feature/decider-link-groth16-kzg" }
folding-schemes = { git = "https://github.com/privacy-scaling-explorations/folding-schemes.git", package = "folding-schemes", branch="feature/solidity-decider-verifier" }
ark-light-bitcoin-client = { git = "https://github.com/dmpierre/ark-light-bitcoin-client.git" } ark-light-bitcoin-client = { git = "https://github.com/dmpierre/ark-light-bitcoin-client.git" }
ark-ff = "0.4.0" ark-ff = "0.4.0"
ark-relations = "0.4.0" ark-relations = "0.4.0"

+ 7
- 2
src/main.rs

@ -173,9 +173,14 @@ fn main() {
// decider proof verification // decider proof verification
println!("Verifying proof..."); println!("Verifying proof...");
let decider_vp = (poseidon_config, g16_vk, kzg_vk);
let verified = DECIDER::verify( let verified = DECIDER::verify(
decider_vp, nova.i, nova.z_0, nova.z_i, &nova.U_i, &nova.u_i, proof,
(g16_vk.clone(), kzg_vk.clone()),
nova.i,
nova.z_0,
nova.z_i,
&nova.U_i,
&nova.u_i,
&proof,
) )
.unwrap(); .unwrap();
assert!(verified); assert!(verified);

Loading…
Cancel
Save