diff --git a/common/libzkp/impl/src/verifier.rs b/common/libzkp/impl/src/verifier.rs index efe624d8e9..f97efba724 100644 --- a/common/libzkp/impl/src/verifier.rs +++ b/common/libzkp/impl/src/verifier.rs @@ -1,10 +1,7 @@ #![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}; @@ -42,26 +39,14 @@ pub struct VerifierConfig { type HardForkName = String; struct VerifierPair(HardForkName, Rc>); - -static mut VERIFIER_LOW: OnceCell = OnceCell::new(); static mut VERIFIER_HIGH: OnceCell = OnceCell::new(); pub fn init(config: VerifierConfig) { - let verifier = EuclidVerifier::new(&config.high_version_circuit.assets_path); - unsafe { - VERIFIER_LOW - .set(VerifierPair( - "euclid".to_string(), - Rc::new(Box::new(verifier)), - )) - .unwrap_unchecked(); - } - let verifier = EuclidV2Verifier::new(&config.high_version_circuit.assets_path); unsafe { VERIFIER_HIGH .set(VerifierPair( - "euclidV2".to_string(), + config.high_version_circuit.fork_name, Rc::new(Box::new(verifier)), )) .unwrap_unchecked(); @@ -70,12 +55,6 @@ pub fn init(config: VerifierConfig) { pub fn get_verifier(fork_name: &str) -> Result>> { unsafe { - if let Some(verifier) = VERIFIER_LOW.get() { - if verifier.0 == fork_name { - return Ok(verifier.1.clone()); - } - } - if let Some(verifier) = VERIFIER_HIGH.get() { if verifier.0 == fork_name { return Ok(verifier.1.clone()); diff --git a/common/libzkp/impl/src/verifier/euclid.rs b/common/libzkp/impl/src/verifier/euclid.rs deleted file mode 100644 index 93673d4544..0000000000 --- a/common/libzkp/impl/src/verifier/euclid.rs +++ /dev/null @@ -1,65 +0,0 @@ -use super::{ProofVerifier, TaskType, VKDump}; - -use anyhow::Result; - -use crate::utils::panic_catch; -use euclid_prover::{BatchProof, BundleProof, ChunkProof}; -use euclid_verifier::verifier::{BatchVerifier, BundleVerifierEuclidV1, ChunkVerifier}; -use std::{fs::File, path::Path}; - -pub struct EuclidVerifier { - chunk_verifier: ChunkVerifier, - batch_verifier: BatchVerifier, - bundle_verifier: BundleVerifierEuclidV1, -} - -impl EuclidVerifier { - 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: BundleVerifierEuclidV1::setup(&config, &exe, &verifier_bin) - .expect("Setting up bundle verifier"), - } - } -} - -impl ProofVerifier for EuclidVerifier { - 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"); - } -} diff --git a/common/version/version.go b/common/version/version.go index 419c8716ad..a98e4f17ca 100644 --- a/common/version/version.go +++ b/common/version/version.go @@ -5,7 +5,7 @@ import ( "runtime/debug" ) -var tag = "v4.5.17" +var tag = "v4.5.18" var commit = func() string { if info, ok := debug.ReadBuildInfo(); ok { diff --git a/coordinator/internal/logic/auth/login.go b/coordinator/internal/logic/auth/login.go index cc095f7c3a..3ed0f004ed 100644 --- a/coordinator/internal/logic/auth/login.go +++ b/coordinator/internal/logic/auth/login.go @@ -9,7 +9,6 @@ import ( "github.com/scroll-tech/go-ethereum/log" "gorm.io/gorm" - "scroll-tech/common/types/message" "scroll-tech/common/version" "scroll-tech/coordinator/internal/config" @@ -34,7 +33,6 @@ func NewLoginLogic(db *gorm.DB, cfg *config.Config, vf *verifier.Verifier) *Logi var highHardForks []string highHardForks = append(highHardForks, cfg.ProverManager.Verifier.HighVersionCircuit.ForkName) - highHardForks = append(highHardForks, message.EuclidFork, message.EuclidV2Fork) proverVersionHardForkMap[cfg.ProverManager.Verifier.HighVersionCircuit.MinProverVersion] = highHardForks return &LoginLogic{