diff --git a/Cargo.lock b/Cargo.lock index 61a055d..cd2cac7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -940,6 +940,16 @@ dependencies = [ "tracing-subscriber 0.2.25", ] +[[package]] +name = "ark-secp256k1" +version = "0.5.0" +source = "git+https://github.com/a16z/arkworks-algebra?branch=dev%2Ftwist-shout#76bb3a4518928f1ff7f15875f940d614bb9845e6" +dependencies = [ + "ark-ec", + "ark-ff 0.5.0", + "ark-std 0.5.0", +] + [[package]] name = "ark-serialize" version = "0.3.0" @@ -1841,7 +1851,7 @@ dependencies = [ "bitflags 2.9.0", "cexpr", "clang-sys", - "itertools 0.12.1", + "itertools 0.11.0", "lazy_static", "lazycell", "log", @@ -1864,7 +1874,7 @@ dependencies = [ "bitflags 2.9.0", "cexpr", "clang-sys", - "itertools 0.13.0", + "itertools 0.11.0", "log", "prettyplease 0.2.32", "proc-macro2", @@ -3920,6 +3930,7 @@ dependencies = [ "ere-test-utils", "ere-zkvm-interface", "jolt-core", + "jolt-inlines-secp256k1", "jolt-sdk", "serde", "tempfile", @@ -6233,6 +6244,23 @@ dependencies = [ "tracing", ] +[[package]] +name = "jolt-inlines-secp256k1" +version = "0.1.0" +source = "git+https://github.com/a16z/jolt.git?rev=6dcd401#6dcd401375efbf1a0e70079088745bacd55d4e88" +dependencies = [ + "ark-ec", + "ark-ff 0.5.0", + "ark-secp256k1", + "ark-serialize 0.5.0", + "ctor 0.2.9", + "num-bigint 0.4.6", + "num-integer", + "serde", + "tracer", + "tracing", +] + [[package]] name = "jolt-inlines-sha2" version = "0.1.0" @@ -10923,8 +10951,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" dependencies = [ "bytes", - "heck 0.5.0", - "itertools 0.12.1", + "heck 0.4.1", + "itertools 0.11.0", "log", "multimap 0.10.1", "once_cell", @@ -10943,7 +10971,7 @@ version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be769465445e8c1474e9c5dac2018218498557af32d9ed057325ec9a41ae81bf" dependencies = [ - "heck 0.5.0", + "heck 0.4.1", "itertools 0.14.0", "log", "multimap 0.10.1", @@ -10977,7 +11005,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools 0.12.1", + "itertools 0.11.0", "proc-macro2", "quote", "syn 2.0.101", diff --git a/Cargo.toml b/Cargo.toml index a310606..6de323d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -91,6 +91,7 @@ jolt-ark-serialize = { git = "https://github.com/a16z/arkworks-algebra", package jolt-common = { git = "https://github.com/a16z/jolt.git", package = "common", rev = "6dcd401", default-features = false } jolt-core = { git = "https://github.com/a16z/jolt.git", rev = "6dcd401" } jolt-sdk = { git = "https://github.com/a16z/jolt.git", rev = "6dcd401", default-features = false } +jolt-inlines-secp256k1 = { git = "https://github.com/a16z/jolt.git", rev = "6dcd401", features = ["host"] } # Miden dependencies miden-assembly = { git = "https://github.com/0xPolygonMiden/miden-vm.git", tag = "v0.20.4" } diff --git a/crates/zkvm/jolt/Cargo.toml b/crates/zkvm/jolt/Cargo.toml index fe5e5c0..a6dbc93 100644 --- a/crates/zkvm/jolt/Cargo.toml +++ b/crates/zkvm/jolt/Cargo.toml @@ -16,6 +16,7 @@ jolt-ark-serialize = { workspace = true, features = ["derive"] } jolt-common.workspace = true jolt-core.workspace = true jolt-sdk = { workspace = true, features = ["host"], optional = true } +jolt-inlines-secp256k1 = { workspace = true, optional = true } # Local dependencies ere-compile-utils = { workspace = true, optional = true } @@ -30,7 +31,7 @@ ere-build-utils.workspace = true [features] default = ["compiler", "zkvm"] compiler = ["dep:ere-compile-utils"] -zkvm = ["dep:jolt-sdk"] +zkvm = ["dep:jolt-sdk", "dep:jolt-inlines-secp256k1"] [lints] workspace = true diff --git a/crates/zkvm/jolt/src/lib.rs b/crates/zkvm/jolt/src/lib.rs index fe4f694..e69868e 100644 --- a/crates/zkvm/jolt/src/lib.rs +++ b/crates/zkvm/jolt/src/lib.rs @@ -46,3 +46,6 @@ pub mod zkvm; #[cfg(feature = "zkvm")] pub use zkvm::*; + +#[cfg(feature = "zkvm")] +use jolt_inlines_secp256k1 as _;