arnaucube
arnaucube/NovaPublic Self-hosted repository
Nova/Cargo.toml
Cargo.tomlRaw
 1[package]
 2name = "nova-snark"
 3version = "0.22.0"
 4authors = ["Srinath Setty <srinath@microsoft.com>"]
 5edition = "2021"
 6description = "Recursive zkSNARKs without trusted setup"
 7documentation = "https://docs.rs/nova-snark/"
 8readme = "README.md"
 9repository = "https://github.com/Microsoft/Nova"
10license-file = "LICENSE"
11keywords = ["zkSNARKs", "cryptography", "proofs"]
12
13[dependencies]
14bellperson = { version = "0.25", default-features = false }
15ff = { version = "0.13.0", features = ["derive"] }
16digest = "0.10"
17sha3 = "0.10"
18rayon = "1.7"
19rand_core = { version = "0.6", default-features = false }
20rand_chacha = "0.3"
21itertools = "0.11"
22subtle = "2.5"
23pasta_curves = { version = "0.5", features = ["repr-c", "serde"] }
24neptune = { version = "10.0.0", default-features = false }
25generic-array = "0.14"
26num-bigint = { version = "0.4", features = ["serde", "rand"] }
27num-traits = "0.2"
28num-integer = "0.1"
29serde = { version = "1.0", features = ["derive"] }
30bincode = "1.3"
31flate2 = "1.0"
32bitvec = "1.0"
33byteorder = "1.4.3"
34thiserror = "1.0"
35halo2curves = { version = "0.1.0", features = ["derive_serde"] }
36
37[target.'cfg(any(target_arch = "x86_64", target_arch = "aarch64"))'.dependencies]
38pasta-msm = { version = "0.1.4" }
39
40[target.wasm32-unknown-unknown.dependencies]
41# see https://github.com/rust-random/rand/pull/948
42getrandom = { version = "0.2.0", default-features = false, features = ["js"] }
43
44[dev-dependencies]
45criterion = { version = "0.4", features = ["html_reports"] }
46rand = "0.8.4"
47hex = "0.4.3"
48pprof = { version = "0.11" }
49cfg-if = "1.0.0"
50sha2 = "0.10.7"
51
52[[bench]]
53name = "recursive-snark"
54harness = false
55
56[[bench]]
57name = "compressed-snark"
58harness = false
59
60[[bench]]
61name = "compute-digest"
62harness = false
63
64[[bench]]
65name = "sha256"
66harness = false
67
68[features]
69default = []
70# Compiles in portable mode, w/o ISA extensions => binary can be executed on all systems.
71portable = ["pasta-msm/portable"]
72cuda = ["neptune/cuda", "neptune/pasta", "neptune/arity24"]
73opencl = ["neptune/opencl", "neptune/pasta", "neptune/arity24"]
74flamegraph = ["pprof/flamegraph", "pprof/criterion"]