|
[package]
|
|
name = "nova-snark"
|
|
version = "0.23.0"
|
|
authors = ["Srinath Setty <srinath@microsoft.com>"]
|
|
edition = "2021"
|
|
description = "Recursive zkSNARKs without trusted setup"
|
|
documentation = "https://docs.rs/nova-snark/"
|
|
readme = "README.md"
|
|
repository = "https://github.com/Microsoft/Nova"
|
|
license-file = "LICENSE"
|
|
keywords = ["zkSNARKs", "cryptography", "proofs"]
|
|
|
|
[dependencies]
|
|
bellperson = { version = "0.25", default-features = false }
|
|
ff = { version = "0.13.0", features = ["derive"] }
|
|
digest = "0.10"
|
|
sha3 = "0.10"
|
|
rayon = "1.7"
|
|
rand_core = { version = "0.6", default-features = false }
|
|
rand_chacha = "0.3"
|
|
itertools = "0.11"
|
|
subtle = "2.5"
|
|
pasta_curves = { version = "0.5", features = ["repr-c", "serde"] }
|
|
neptune = { version = "10.0.0", default-features = false }
|
|
generic-array = "0.14"
|
|
num-bigint = { version = "0.4", features = ["serde", "rand"] }
|
|
num-traits = "0.2"
|
|
num-integer = "0.1"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
bincode = "1.3"
|
|
flate2 = "1.0"
|
|
bitvec = "1.0"
|
|
byteorder = "1.4.3"
|
|
thiserror = "1.0"
|
|
halo2curves = { version = "0.1.0", features = ["derive_serde"] }
|
|
|
|
[target.'cfg(any(target_arch = "x86_64", target_arch = "aarch64"))'.dependencies]
|
|
pasta-msm = { version = "0.1.4" }
|
|
|
|
[target.wasm32-unknown-unknown.dependencies]
|
|
# see https://github.com/rust-random/rand/pull/948
|
|
getrandom = { version = "0.2.0", default-features = false, features = ["js"] }
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.4", features = ["html_reports"] }
|
|
rand = "0.8.4"
|
|
hex = "0.4.3"
|
|
pprof = { version = "0.11" }
|
|
cfg-if = "1.0.0"
|
|
sha2 = "0.10.7"
|
|
proptest = "1.2.0"
|
|
|
|
[[bench]]
|
|
name = "recursive-snark"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "compressed-snark"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "compute-digest"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "sha256"
|
|
harness = false
|
|
|
|
[features]
|
|
default = []
|
|
# Compiles in portable mode, w/o ISA extensions => binary can be executed on all systems.
|
|
portable = ["pasta-msm/portable"]
|
|
cuda = ["neptune/cuda", "neptune/pasta", "neptune/arity24"]
|
|
opencl = ["neptune/opencl", "neptune/pasta", "neptune/arity24"]
|
|
flamegraph = ["pprof/flamegraph", "pprof/criterion"]
|