arnaucube
arnaucube/circom-compatPublic Self-hosted repository
circom-compat/Cargo.toml
Cargo.tomlRaw
 1[package]
 2name = "ark-circom"
 3version = "0.1.0"
 4edition = "2018"
 5description = "Arkworks bindings to Circom's R1CS, for Groth16 Proof and Witness generation in Rust"
 6license = "MIT OR Apache-2.0"
 7
 8[lib]
 9crate-type = ["cdylib", "rlib"]
10
11[dependencies]
12# WASM operations
13wasmer = { version = "=2.3.0", default-features = false }
14fnv = { version = "=1.0.7", default-features = false }
15num = { version = "=0.4.0" }
16num-traits = { version = "=0.2.15", default-features = false }
17num-bigint = { version = "=0.4.3", default-features = false, features = ["rand"] }
18
19# ZKP Generation
20ark-crypto-primitives = { version = "=0.4.0" }
21ark-ec = { version = "=0.4.1", default-features = false, features = ["parallel"] }
22ark-ff = { version = "=0.4.1", default-features = false, features = ["parallel", "asm"] }
23ark-std = { version = "=0.4.0", default-features = false, features = ["parallel"] }
24ark-bn254 = { version = "=0.4.0" }
25ark-groth16 = { version = "=0.4.0", default-features = false, features = ["parallel"] }
26ark-poly = { version = "=0.4.1", default-features = false, features = ["parallel"] }
27ark-relations = { version = "=0.4.0", default-features = false }
28ark-serialize = { version = "=0.4.1", default-features = false }
29
30# decoding of data
31hex = "=0.4.3"
32byteorder = "=1.4.3"
33
34# ethereum compat
35ethers-core = { version = "=2.0.7", default-features = false, optional = true }
36
37# error handling
38thiserror = "=1.0.39"
39color-eyre = "=0.6.2"
40criterion = "=0.3.6"
41
42cfg-if = "=1.0.0"
43
44[dev-dependencies]
45hex-literal = "=0.2.2"
46tokio = { version = "=1.29.1", features = ["macros"] }
47serde_json = "=1.0.94"
48ethers = "=2.0.7"
49
50[[bench]]
51name = "groth16"
52harness = false
53
54[features]
55default = ["wasmer/default", "circom-2", "ethereum"]
56wasm = ["wasmer/js-default"]
57bench-complex-all = []
58circom-2 = []
59ethereum = ["ethers-core"]