circom-compat/Cargo.toml

60 lines
1.8 KiB
TOML

[package]
name = "ark-circom"
version = "0.1.0"
edition = "2018"
description = "Arkworks bindings to Circom's R1CS, for Groth16 Proof and Witness generation in Rust"
license = "MIT OR Apache-2.0"
[lib]
crate-type = ["cdylib", "rlib"]
[dependencies]
# WASM operations
wasmer = { version = "=2.3.0", default-features = false }
fnv = { version = "=1.0.7", default-features = false }
num = { version = "=0.4.0" }
num-traits = { version = "=0.2.15", default-features = false }
num-bigint = { version = "=0.4.3", default-features = false, features = ["rand"] }
# ZKP Generation
ark-crypto-primitives = { version = "=0.4.0" }
ark-ec = { version = "=0.4.1", default-features = false, features = ["parallel"] }
ark-ff = { version = "=0.4.1", default-features = false, features = ["parallel", "asm"] }
ark-std = { version = "=0.4.0", default-features = false, features = ["parallel"] }
ark-bn254 = { version = "=0.4.0" }
ark-groth16 = { version = "=0.4.0", default-features = false, features = ["parallel"] }
ark-poly = { version = "=0.4.1", default-features = false, features = ["parallel"] }
ark-relations = { version = "=0.4.0", default-features = false }
ark-serialize = { version = "=0.4.1", default-features = false }
# decoding of data
hex = "=0.4.3"
byteorder = "=1.4.3"
# ethereum compat
ethers-core = { version = "=2.0.7", default-features = false, optional = true }
# error handling
thiserror = "=1.0.39"
color-eyre = "=0.6.2"
criterion = "=0.3.6"
cfg-if = "=1.0.0"
[dev-dependencies]
hex-literal = "=0.2.2"
tokio = { version = "=1.29.1", features = ["macros"] }
serde_json = "=1.0.94"
ethers = "=2.0.7"
[[bench]]
name = "groth16"
harness = false
[features]
default = ["wasmer/default", "circom-2", "ethereum"]
wasm = ["wasmer/js-default"]
bench-complex-all = []
circom-2 = []
ethereum = ["ethers-core"]