[package] name = "arecibo" version = "0.1.1" authors = ["Srinath Setty ", "Lurk Engineering "] edition = "2021" description = "Recursive zkSNARKs without trusted setup" documentation = "https://docs.rs/arecibo/" readme = "README.md" repository = "https://github.com/lurk-lab/arecibo" license-file = "LICENSE" keywords = ["zkSNARKs", "cryptography", "proofs"] rust-version="1.67.1" [dependencies] bellpepper-core = { version = "0.4.0", default-features = false } bellpepper = { version = "0.4.1", 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" subtle = "2.5" pasta_curves = { version = "0.5.1", features = ["repr-c", "serde"] } neptune = { version = "13.0.0", default-features = false, features = ["abomonation"] } generic-array = "0.14.4" 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" bitvec = "1.0" byteorder = "1.4.3" thiserror = "1.0" halo2curves = { version = "0.4.0", features = ["derive_serde"] } group = "0.13.0" pairing = "0.23.0" abomonation = "0.7.3" abomonation_derive = { version = "0.1.0", package = "abomonation_derive_ng" } tap = "1.0.1" tracing = "0.1.37" tracing-texray = "0.2.0" tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } cfg-if = "1.0.0" once_cell = "1.18.0" itertools = "0.12.0" rand = "0.8.5" ref-cast = "1.0.20" [target.'cfg(any(target_arch = "x86_64", target_arch = "aarch64"))'.dependencies] pasta-msm = "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"] } flate2 = "1.0" hex = "0.4.3" pprof = { version = "0.11" } sha2 = "0.10.7" tracing-test = "0.2.4" 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 [[bench]] name = "recursive-snark-supernova" harness = false [[bench]] name = "compressed-snark-supernova" harness = false [features] default = [] abomonate = [] asm = ["halo2curves/asm"] # 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"] [profile.dev-ci] inherits = "dev" # By compiling dependencies with optimizations, performing tests gets much faster. opt-level = 3 lto = "thin" incremental = false codegen-units = 16