mirror of
https://github.com/vacp2p/zerokit.git
synced 2026-01-07 21:53:59 -05:00
97 lines
2.6 KiB
TOML
97 lines
2.6 KiB
TOML
[package]
|
|
name = "rln"
|
|
version = "0.9.0"
|
|
edition = "2021"
|
|
license = "MIT OR Apache-2.0"
|
|
description = "APIs to manage, compute and verify zkSNARK proofs and RLN primitives"
|
|
documentation = "https://github.com/vacp2p/zerokit"
|
|
homepage = "https://vac.dev"
|
|
repository = "https://github.com/vacp2p/zerokit"
|
|
|
|
[lib]
|
|
crate-type = ["rlib", "staticlib", "cdylib"]
|
|
bench = false
|
|
|
|
# This flag disable cargo doctests, i.e. testing example code-snippets in documentation
|
|
doctest = false
|
|
|
|
[dependencies]
|
|
# ZKP Generation
|
|
ark-bn254 = { version = "0.5.0", features = ["std"] }
|
|
ark-relations = { version = "0.5.1", features = ["std"] }
|
|
ark-ff = { version = "0.5.0", default-features = false }
|
|
ark-ec = { version = "0.5.0", default-features = false }
|
|
ark-std = { version = "0.5.0", default-features = false }
|
|
ark-poly = { version = "0.5.0", default-features = false }
|
|
ark-groth16 = { version = "0.5.0", default-features = false }
|
|
ark-serialize = { version = "0.5.0", default-features = false }
|
|
|
|
# error handling
|
|
thiserror = "2.0.12"
|
|
|
|
# utilities
|
|
rayon = { version = "1.10.0", optional = true }
|
|
byteorder = "1.5.0"
|
|
cfg-if = "1.0"
|
|
num-bigint = { version = "0.4.6", default-features = false, features = ["std"] }
|
|
num-traits = "0.2.19"
|
|
once_cell = "1.21.3"
|
|
rand = "0.8.5"
|
|
rand_chacha = "0.3.1"
|
|
ruint = { version = "1.17.0", default-features = false, features = [
|
|
"rand",
|
|
"serde",
|
|
"ark-ff-05",
|
|
] }
|
|
tiny-keccak = { version = "2.0.2", features = ["keccak"] }
|
|
zeroize = "1.8.2"
|
|
tempfile = "3.21.0"
|
|
utils = { package = "zerokit_utils", version = "0.7.0", path = "../utils", default-features = false }
|
|
|
|
# FFI
|
|
safer-ffi.version = "0.1"
|
|
|
|
# serialization
|
|
prost = "0.14.1"
|
|
serde_json = "1.0.141"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
|
|
document-features = { version = "0.2.11", optional = true }
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.7.0", features = ["html_reports"] }
|
|
|
|
[features]
|
|
default = ["parallel", "pmtree-ft"]
|
|
stateless = []
|
|
parallel = [
|
|
"rayon",
|
|
"utils/parallel",
|
|
"ark-ff/parallel",
|
|
"ark-ec/parallel",
|
|
"ark-std/parallel",
|
|
"ark-poly/parallel",
|
|
"ark-groth16/parallel",
|
|
"ark-serialize/parallel",
|
|
]
|
|
fullmerkletree = [] # Pre-allocated tree, fastest access
|
|
optimalmerkletree = [] # Sparse storage, memory efficient
|
|
pmtree-ft = ["utils/pmtree-ft"] # Persistent storage, disk-based
|
|
headers = ["safer-ffi/headers"] # Generate C header file with safer-ffi
|
|
|
|
[[bench]]
|
|
name = "pmtree_benchmark"
|
|
harness = false
|
|
required-features = ["pmtree-ft"]
|
|
|
|
[[bench]]
|
|
name = "poseidon_tree_benchmark"
|
|
harness = false
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
|
|
[[bin]]
|
|
name = "generate-headers"
|
|
required-features = ["headers"] # Do not build unless generating headers.
|