From 7d5b77a36cf57f042c9c2876f02fccc6abc33c6f Mon Sep 17 00:00:00 2001 From: colinlyguo Date: Thu, 13 Mar 2025 00:40:24 +0800 Subject: [PATCH] Revert "feat: add euclidv2 verifier" This reverts commit ef9e25f14ca5c7491a6b14a35159df104cec69c6. --- common/libzkp/impl/Cargo.lock | 78 ++------------------- common/libzkp/impl/Cargo.toml | 6 +- common/libzkp/impl/src/verifier.rs | 14 +--- common/libzkp/impl/src/verifier/euclidv2.rs | 65 ----------------- 4 files changed, 8 insertions(+), 155 deletions(-) delete mode 100644 common/libzkp/impl/src/verifier/euclidv2.rs diff --git a/common/libzkp/impl/Cargo.lock b/common/libzkp/impl/Cargo.lock index 5142c4962..254ebc515 100644 --- a/common/libzkp/impl/Cargo.lock +++ b/common/libzkp/impl/Cargo.lock @@ -5779,21 +5779,6 @@ dependencies = [ "serde_json", ] -[[package]] -name = "scroll-zkvm-circuit-input-types" -version = "0.1.0-rc.6" -source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.1.0-rc.6#8adaaf856b00ca992e76c95e657761a5148d6084" -dependencies = [ - "alloy-primitives", - "alloy-serde 0.8.3", - "openvm", - "openvm-rv32im-guest", - "rkyv", - "sbv", - "serde", - "tiny-keccak", -] - [[package]] name = "scroll-zkvm-circuit-input-types" version = "0.1.1-rc.2" @@ -5811,38 +5796,6 @@ dependencies = [ "vm-zstd", ] -[[package]] -name = "scroll-zkvm-prover" -version = "0.1.0-rc.6" -source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.1.0-rc.6#8adaaf856b00ca992e76c95e657761a5148d6084" -dependencies = [ - "alloy-primitives", - "base64 0.22.1", - "bincode", - "git-version", - "hex", - "metrics 0.23.0", - "metrics-util", - "once_cell", - "openvm-circuit", - "openvm-native-circuit", - "openvm-native-recursion", - "openvm-sdk", - "openvm-stark-sdk", - "revm 19.5.0", - "rkyv", - "sbv", - "scroll-zkvm-circuit-input-types 0.1.0-rc.6", - "scroll-zkvm-verifier 0.1.0-rc.6", - "serde", - "serde_json", - "serde_stacker", - "snark-verifier-sdk", - "thiserror 2.0.11", - "toml", - "tracing", -] - [[package]] name = "scroll-zkvm-prover" version = "0.1.1-rc.2" @@ -5866,8 +5819,8 @@ dependencies = [ "revm 19.5.0", "rkyv", "sbv", - "scroll-zkvm-circuit-input-types 0.1.1-rc.2", - "scroll-zkvm-verifier 0.1.1-rc.2", + "scroll-zkvm-circuit-input-types", + "scroll-zkvm-verifier", "serde", "serde_json", "serde_stacker", @@ -5877,25 +5830,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "scroll-zkvm-verifier" -version = "0.1.0-rc.6" -source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.1.0-rc.6#8adaaf856b00ca992e76c95e657761a5148d6084" -dependencies = [ - "bincode", - "eyre", - "itertools 0.14.0", - "openvm-circuit", - "openvm-native-circuit", - "openvm-native-recursion", - "openvm-sdk", - "openvm-stark-sdk", - "revm 19.5.0", - "scroll-zkvm-circuit-input-types 0.1.0-rc.6", - "serde", - "snark-verifier-sdk", -] - [[package]] name = "scroll-zkvm-verifier" version = "0.1.1-rc.2" @@ -5910,7 +5844,7 @@ dependencies = [ "openvm-sdk", "openvm-stark-sdk", "revm 19.5.0", - "scroll-zkvm-circuit-input-types 0.1.1-rc.2", + "scroll-zkvm-circuit-input-types", "serde", "snark-verifier-sdk", ] @@ -7424,10 +7358,8 @@ dependencies = [ "libc", "log", "once_cell", - "scroll-zkvm-prover 0.1.0-rc.6", - "scroll-zkvm-prover 0.1.1-rc.2", - "scroll-zkvm-verifier 0.1.0-rc.6", - "scroll-zkvm-verifier 0.1.1-rc.2", + "scroll-zkvm-prover", + "scroll-zkvm-verifier", "serde", "serde_derive", "serde_json", diff --git a/common/libzkp/impl/Cargo.toml b/common/libzkp/impl/Cargo.toml index 7f13c81ca..7e3bdd7d9 100644 --- a/common/libzkp/impl/Cargo.toml +++ b/common/libzkp/impl/Cargo.toml @@ -14,10 +14,8 @@ ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } tiny-keccak = { git = "https://github.com/scroll-tech/tiny-keccak", branch = "scroll-patch-v2.0.2-openvm-v1.0.0-rc.1" } [dependencies] -euclid_prover = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.1.0-rc.6", package = "scroll-zkvm-prover" } -euclid_verifier = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.1.0-rc.6", package = "scroll-zkvm-verifier" } -euclidv2_prover = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.1.1-rc.2", package = "scroll-zkvm-prover" } -euclidv2_verifier = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.1.1-rc.2", package = "scroll-zkvm-verifier" } +euclid_prover = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.1.1-rc.2", package = "scroll-zkvm-prover" } +euclid_verifier = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.1.1-rc.2", package = "scroll-zkvm-verifier" } base64 = "0.13.0" env_logger = "0.9.0" diff --git a/common/libzkp/impl/src/verifier.rs b/common/libzkp/impl/src/verifier.rs index dfb0da647..b890b52d5 100644 --- a/common/libzkp/impl/src/verifier.rs +++ b/common/libzkp/impl/src/verifier.rs @@ -1,11 +1,9 @@ #![allow(static_mut_refs)] mod euclid; -mod euclidv2; use anyhow::{bail, Result}; use euclid::EuclidVerifier; -use euclidv2::EuclidV2Verifier; use serde::{Deserialize, Serialize}; use std::{cell::OnceCell, path::Path, rc::Rc}; @@ -49,17 +47,7 @@ static mut VERIFIER_LOW: OnceCell = OnceCell::new(); static mut VERIFIER_HIGH: OnceCell = OnceCell::new(); pub fn init(config: VerifierConfig) { - let verifier = EuclidVerifier::new(&config.low_version_circuit.assets_path); - unsafe { - VERIFIER_LOW - .set(VerifierPair( - config.low_version_circuit.fork_name, - Rc::new(Box::new(verifier)), - )) - .unwrap_unchecked(); - } - - let verifier = EuclidV2Verifier::new(&config.high_version_circuit.assets_path); + let verifier = EuclidVerifier::new(&config.high_version_circuit.assets_path); unsafe { VERIFIER_LOW .set(VerifierPair( diff --git a/common/libzkp/impl/src/verifier/euclidv2.rs b/common/libzkp/impl/src/verifier/euclidv2.rs deleted file mode 100644 index 4326c9787..000000000 --- a/common/libzkp/impl/src/verifier/euclidv2.rs +++ /dev/null @@ -1,65 +0,0 @@ -use super::{ProofVerifier, TaskType, VKDump}; - -use anyhow::Result; - -use crate::utils::panic_catch; -use euclidv2_prover::{BatchProof, BundleProof, ChunkProof}; -use euclidv2_verifier::verifier::{BatchVerifier, BundleVerifier, ChunkVerifier}; -use std::{fs::File, path::Path}; - -pub struct EuclidV2Verifier { - chunk_verifier: ChunkVerifier, - batch_verifier: BatchVerifier, - bundle_verifier: BundleVerifier, -} - -impl EuclidV2Verifier { - pub fn new(assets_dir: &str) -> Self { - let verifier_bin = Path::new(assets_dir).join("verifier.bin"); - let config = Path::new(assets_dir).join("root-verifier-vm-config"); - let exe = Path::new(assets_dir).join("root-verifier-committed-exe"); - - Self { - chunk_verifier: ChunkVerifier::setup(&config, &exe, &verifier_bin) - .expect("Setting up chunk verifier"), - batch_verifier: BatchVerifier::setup(&config, &exe, &verifier_bin) - .expect("Setting up batch verifier"), - bundle_verifier: BundleVerifier::setup(&config, &exe, &verifier_bin) - .expect("Setting up bundle verifier"), - } - } -} - -impl ProofVerifier for EuclidV2Verifier { - fn verify(&self, task_type: super::TaskType, proof: Vec) -> Result { - panic_catch(|| match task_type { - TaskType::Chunk => { - let proof = serde_json::from_slice::(proof.as_slice()).unwrap(); - self.chunk_verifier - .verify_proof(proof.proof.as_root_proof().unwrap()) - } - TaskType::Batch => { - let proof = serde_json::from_slice::(proof.as_slice()).unwrap(); - self.batch_verifier - .verify_proof(proof.proof.as_root_proof().unwrap()) - } - TaskType::Bundle => { - let proof = serde_json::from_slice::(proof.as_slice()).unwrap(); - self.bundle_verifier - .verify_proof_evm(&proof.proof.as_evm_proof().unwrap()) - } - }) - .map_err(|err_str: String| anyhow::anyhow!(err_str)) - } - - fn dump_vk(&self, file: &Path) { - let f = File::create(file).expect("Failed to open file to dump VK"); - - let dump = VKDump { - chunk_vk: base64::encode(self.chunk_verifier.get_app_vk()), - batch_vk: base64::encode(self.batch_verifier.get_app_vk()), - bundle_vk: base64::encode(self.bundle_verifier.get_app_vk()), - }; - serde_json::to_writer(f, &dump).expect("Failed to dump VK"); - } -}