-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
90 lines (77 loc) · 3.45 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
[package]
name = "ark-groth16"
version = "0.4.0"
authors = [ "arkworks contributors" ]
description = "An implementation of the Groth 2016 zkSNARK proof system"
homepage = "https://arkworks.rs"
repository = "https://github.com/arkworks-rs/groth16"
documentation = "https://docs.rs/ark-groth16/"
keywords = [ "zero-knowledge", "cryptography", "zkSNARK", "SNARK", "Groth-Maller" ]
categories = [ "cryptography" ]
include = ["Cargo.toml", "src", "README.md", "LICENSE-APACHE", "LICENSE-MIT"]
license = "MIT/Apache-2.0"
edition = "2021"
################################# Dependencies ################################
[dependencies]
ark-ff = { version = "0.4.0", default-features = false }
ark-ec = { version = "0.4.0", default-features = false }
ark-serialize = { version = "0.4.0", default-features = false, features = [ "derive" ] }
ark-poly = { version = "0.4.0", default-features = false }
ark-std = { version = "0.4.0", default-features = false }
ark-relations = { version = "0.4.0", default-features = false }
ark-crypto-primitives = { version = "0.4.0", default-features = false, features = ["snark"] }
ark-r1cs-std = { version = "0.4.0", default-features = false, optional = true }
tracing = { version = "0.1", default-features = false, features = [ "attributes" ], optional = true }
derivative = { version = "2.0", features = ["use_core"], optional = true}
rayon = { version = "1", optional = true }
ag-cuda-ec = { git = "https://github.com/0glabs/0g-ec-gpu.git", rev = "6ceca01", optional = true, default-features = false, features = ["fr-fft", "g1-msm", "g2-msm"] }
ag-types = { git = "https://github.com/0glabs/0g-ec-gpu.git", rev = "6ceca01", optional = true }
delegate = "0.12"
ark-bn254 = { version = "0.4", optional = true}
ark-bls12-381 = { version = "0.4", optional = true}
[dev-dependencies]
csv = { version = "1" }
ark-bls12-381 = { version = "0.4.0", default-features = false, features = ["curve"] }
ark-bls12-377 = { version = "0.4.0", default-features = false, features = ["curve"] }
ark-cp6-782 = { version = "0.4.0", default-features = false }
ark-mnt4-298 = { version = "0.4.0", default-features = false, features = ["r1cs", "curve"] }
ark-mnt6-298 = { version = "0.4.0", default-features = false, features = ["r1cs"] }
ark-mnt4-753 = { version = "0.4.0", default-features = false, features = ["r1cs", "curve"] }
ark-mnt6-753 = { version = "0.4.0", default-features = false, features = ["r1cs"] }
ark-r1cs-std = { version = "0.4.0", default-features = false }
[features]
default = ["parallel"]
std = ["ark-ff/std", "ark-ec/std", "ark-poly/std", "ark-relations/std", "ark-crypto-primitives/std", "ark-std/std" ]
parallel = ["std", "ark-ff/parallel", "ark-poly/parallel", "ark-ec/parallel", "ark-crypto-primitives/parallel", "ark-std/parallel", "rayon"]
r1cs = [ "ark-crypto-primitives/r1cs", "ark-r1cs-std", "tracing", "derivative" ]
print-trace = [ "ark-std/print-trace" ]
cuda = ["ag-cuda-ec", "ag-types"]
cuda-bn254 = ["ark-bn254", "cuda", "ag-cuda-ec/bn254"]
cuda-bls12-381 = ["ark-bls12-381", "cuda", "ag-cuda-ec/bls12-381"]
g1-fft = ["ag-cuda-ec/g1-fft"]
[[bench]]
name = "groth16-benches"
path = "benches/bench.rs"
harness = false
required-features = ["std"]
[profile.release]
opt-level = 3
lto = "thin"
incremental = true
panic = 'abort'
[profile.bench]
opt-level = 3
debug = false
rpath = false
lto = "thin"
incremental = true
debug-assertions = false
[profile.dev]
opt-level = 0
panic = 'abort'
[profile.test]
opt-level = 3
lto = "thin"
incremental = true
debug-assertions = true
debug = true