Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2,785 changes: 1,689 additions & 1,096 deletions Cargo.lock

Large diffs are not rendered by default.

8 changes: 5 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,14 @@ version = "4.5.47"

[workspace.dependencies]
# include compatiblity fixing from "fix/coordinator"
scroll-zkvm-prover = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "a71dd2b" }
scroll-zkvm-verifier = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "a71dd2b" }
scroll-zkvm-types = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "a71dd2b" }
scroll-zkvm-prover = { git = "https://github.com/scroll-tech/zkvm-prover", branch = "feat/axiom_cli_sdk" }
scroll-zkvm-verifier = { git = "https://github.com/scroll-tech/zkvm-prover", branch = "feat/axiom_cli_sdk" }
scroll-zkvm-types = { git = "https://github.com/scroll-tech/zkvm-prover", branch = "feat/axiom_cli_sdk", features = ["scroll"] }

sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = ["scroll", "rkyv"] }
sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master" }
sbv-core = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = ["scroll"] }
axiom-sdk = { git = "https://github.com/axiom-crypto/axiom-api-cli.git", branch = "feat/upload-exe-raw" }

metrics = "0.23.0"
metrics-util = "0.17"
Expand All @@ -36,6 +37,7 @@ alloy-primitives = { version = "1.3", default-features = false, features = ["tin
# also use this to trigger "serde" feature for primitives
alloy-serde = { version = "1", default-features = false }

jiff = "0.2"
serde = { version = "1", default-features = false, features = ["derive"] }
serde_json = { version = "1.0" }
serde_derive = "1.0"
Expand Down
2 changes: 1 addition & 1 deletion crates/libzkp/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ scroll-zkvm-types.workspace = true
scroll-zkvm-verifier.workspace = true

alloy-primitives.workspace = true #depress the effect of "native-keccak"
sbv-primitives = {workspace = true, features = ["scroll-compress-ratio", "scroll"]}
sbv-primitives = {workspace = true, features = ["scroll-compress-info", "scroll"] }
sbv-core = { workspace = true, features = ["scroll"] }
base64.workspace = true
serde.workspace = true
Expand Down
6 changes: 4 additions & 2 deletions crates/prover-bin/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ edition.workspace = true
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
axiom-sdk.workspace = true
scroll-zkvm-types.workspace = true
scroll-zkvm-prover.workspace = true
scroll-proving-sdk = { git = "https://github.com/scroll-tech/scroll-proving-sdk.git", rev = "05648db" }
Expand All @@ -19,11 +20,12 @@ eyre.workspace = true
futures = "0.3.30"
futures-util = "0.3"

reqwest = { version = "0.12.4", features = ["gzip", "stream"] }
reqwest = { version = "0.12", features = ["gzip", "stream"] }
reqwest-middleware = "0.3"
reqwest-retry = "0.5"
hex = "0.4.3"

jiff.workspace = true
rand = "0.8.5"
tokio = "1.37.0"
async-trait = "0.1"
Expand All @@ -36,4 +38,4 @@ serde_bytes = "0.11.15"

[features]
default = []
cuda = ["scroll-zkvm-prover/cuda"]
cuda = ["scroll-zkvm-prover/cuda"]
22 changes: 14 additions & 8 deletions crates/prover-bin/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,28 @@ mod prover;
mod types;
mod zk_circuits_handler;

use crate::prover::ProverKind;
use clap::{ArgAction, Parser, Subcommand};
use prover::{LocalProver, LocalProverConfig};
use scroll_proving_sdk::{
prover::{types::ProofType, ProverBuilder},
utils::{get_version, init_tracing},
};
use std::{fs::File, io::BufReader, path::Path};
use std::{
fs::File,
io::BufReader,
path::{Path, PathBuf},
};

#[derive(Parser, Debug)]
#[command(disable_version_flag = true)]
struct Args {
/// Prover kind
#[arg(long = "prover.kind", value_enum, default_value_t = ProverKind::Local)]
prover_kind: ProverKind,

/// Path of config file
#[arg(long = "config", default_value = "conf/config.json")]
config_file: String,
config_file: PathBuf,

#[arg(long = "forkname")]
fork_name: Option<String>,
Expand Down Expand Up @@ -58,17 +66,15 @@ async fn main() -> eyre::Result<()> {
std::process::exit(0);
}

let cfg = LocalProverConfig::from_file(args.config_file)?;
let sdk_config = cfg.sdk_config.clone();
let local_prover = LocalProver::new(cfg.clone());
let (sdk_config, prover) = args.prover_kind.create_from_file(&args.config_file)?;

match args.command {
Some(Commands::Handle { task_path }) => {
let file = File::open(Path::new(&task_path))?;
let reader = BufReader::new(file);
let handle_set: HandleSet = serde_json::from_reader(reader)?;

let prover = ProverBuilder::new(sdk_config, local_prover)
let prover = ProverBuilder::new(sdk_config, prover)
.build()
.await
.map_err(|e| eyre::eyre!("build prover fail: {e}"))?;
Expand Down Expand Up @@ -98,7 +104,7 @@ async fn main() -> eyre::Result<()> {
println!("All done!");
}
None => {
let prover = ProverBuilder::new(sdk_config, local_prover)
let prover = ProverBuilder::new(sdk_config, prover)
.build()
.await
.map_err(|e| eyre::eyre!("build prover fail: {e}"))?;
Expand Down
Loading