2022-03-11 17:55:46 +08:00
|
|
|
[package]
|
|
|
|
name = "rln"
|
2024-06-20 16:44:46 +05:30
|
|
|
version = "0.5.1"
|
2022-03-11 17:55:46 +08:00
|
|
|
edition = "2021"
|
2023-02-27 11:47:55 +05:30
|
|
|
license = "MIT OR Apache-2.0"
|
2023-07-28 12:25:34 +02:00
|
|
|
description = "APIs to manage, compute and verify zkSNARK proofs and RLN primitives"
|
2023-08-05 10:42:21 +05:30
|
|
|
documentation = "https://github.com/vacp2p/zerokit"
|
|
|
|
homepage = "https://vac.dev"
|
|
|
|
repository = "https://github.com/vacp2p/zerokit"
|
2022-03-11 17:55:46 +08:00
|
|
|
|
2022-06-29 18:56:03 +02:00
|
|
|
[lib]
|
2023-03-07 18:15:06 +05:30
|
|
|
crate-type = ["rlib", "staticlib"]
|
2023-05-29 19:44:00 +05:30
|
|
|
bench = false
|
2022-06-29 18:56:03 +02:00
|
|
|
|
2022-11-25 10:54:17 +01:00
|
|
|
# This flag disable cargo doctests, i.e. testing example code-snippets in documentation
|
|
|
|
doctest = false
|
|
|
|
|
2022-09-20 08:22:46 -04:00
|
|
|
|
2022-03-11 17:55:46 +08:00
|
|
|
[dependencies]
|
|
|
|
# ZKP Generation
|
2025-02-07 17:44:19 +07:00
|
|
|
ark-ec = { version = "=0.4.2", default-features = false }
|
|
|
|
ark-ff = { version = "=0.4.2", default-features = false, features = ["asm"] }
|
2023-03-22 07:01:24 +01:00
|
|
|
ark-std = { version = "=0.4.0", default-features = false }
|
|
|
|
ark-bn254 = { version = "=0.4.0" }
|
2024-04-09 01:26:57 +03:00
|
|
|
ark-groth16 = { version = "=0.4.0", features = [
|
|
|
|
"parallel",
|
|
|
|
], default-features = false }
|
|
|
|
ark-relations = { version = "=0.4.0", default-features = false, features = [
|
|
|
|
"std",
|
|
|
|
] }
|
2025-02-07 17:44:19 +07:00
|
|
|
ark-serialize = { version = "=0.4.2", default-features = false }
|
|
|
|
# v0.5.0 use all other ark 0.5.0 versions and they are not compatible with current code.
|
|
|
|
# master branch contains commit with compatible version
|
|
|
|
ark-circom = { git = "https://github.com/gakonst/ark-circom.git" }
|
2022-03-11 17:55:46 +08:00
|
|
|
|
|
|
|
# error handling
|
2025-02-07 17:44:19 +07:00
|
|
|
color-eyre = "0.6.2"
|
|
|
|
thiserror = "2.0.11"
|
2022-03-11 17:55:46 +08:00
|
|
|
|
2022-09-14 11:48:48 +02:00
|
|
|
# utilities
|
2024-12-25 12:38:35 +02:00
|
|
|
byteorder = "1.4.3"
|
2025-02-07 17:44:19 +07:00
|
|
|
cfg-if = "1.0"
|
|
|
|
num-bigint = { version = "0.4.3", default-features = false, features = [
|
|
|
|
"rand",
|
|
|
|
] }
|
|
|
|
num-traits = "0.2.19"
|
|
|
|
once_cell = "1.19.0"
|
|
|
|
lazy_static = "1.4.0"
|
|
|
|
rand = "0.8.5"
|
|
|
|
rand_chacha = "0.3.1"
|
|
|
|
ruint = { version = "1.10.0", features = [
|
2024-04-09 01:26:57 +03:00
|
|
|
"rand",
|
2025-02-07 17:44:19 +07:00
|
|
|
"serde",
|
|
|
|
"ark-ff-04",
|
|
|
|
"num-bigint",
|
2024-04-09 01:26:57 +03:00
|
|
|
] }
|
2025-02-07 17:44:19 +07:00
|
|
|
tiny-keccak = { version = "2.0.2", features = ["keccak"] }
|
|
|
|
utils = { package = "zerokit_utils", path = "../utils/", default-features = false }
|
2023-10-03 21:28:21 +05:30
|
|
|
|
2022-03-18 14:23:44 +08:00
|
|
|
|
2022-09-14 11:48:48 +02:00
|
|
|
# serialization
|
2024-12-25 12:38:35 +02:00
|
|
|
prost = "0.13.1"
|
2025-02-07 17:44:19 +07:00
|
|
|
serde_json = "1.0.138"
|
|
|
|
serde = { version = "1.0.217", features = ["derive"] }
|
2023-03-07 18:15:06 +05:30
|
|
|
|
2024-08-28 13:41:18 +03:00
|
|
|
document-features = { version = "=0.2.10", optional = true }
|
|
|
|
|
2022-12-13 20:00:27 +01:00
|
|
|
[dev-dependencies]
|
2023-03-07 04:41:08 +01:00
|
|
|
sled = "=0.34.7"
|
2023-07-28 12:25:34 +02:00
|
|
|
criterion = { version = "=0.4.0", features = ["html_reports"] }
|
2022-12-13 20:00:27 +01:00
|
|
|
|
2022-09-15 10:32:45 +02:00
|
|
|
[features]
|
2025-02-07 17:44:19 +07:00
|
|
|
default = ["parallel", "pmtree-ft"]
|
2024-04-09 01:26:57 +03:00
|
|
|
parallel = [
|
|
|
|
"ark-ec/parallel",
|
|
|
|
"ark-ff/parallel",
|
|
|
|
"ark-std/parallel",
|
|
|
|
"ark-groth16/parallel",
|
|
|
|
"utils/parallel",
|
|
|
|
]
|
2022-12-13 20:00:27 +01:00
|
|
|
fullmerkletree = ["default"]
|
2025-02-07 17:44:19 +07:00
|
|
|
arkzkey = []
|
2024-08-28 13:41:18 +03:00
|
|
|
stateless = []
|
2022-12-13 20:00:27 +01:00
|
|
|
|
|
|
|
# Note: pmtree feature is still experimental
|
2023-05-02 13:31:26 +05:30
|
|
|
pmtree-ft = ["utils/pmtree-ft"]
|
2023-05-29 18:51:36 +05:30
|
|
|
|
|
|
|
[[bench]]
|
|
|
|
name = "pmtree_benchmark"
|
|
|
|
harness = false
|
2024-05-06 18:09:22 +07:00
|
|
|
|
|
|
|
[[bench]]
|
|
|
|
name = "circuit_loading_benchmark"
|
|
|
|
harness = false
|
2024-05-09 17:37:34 +07:00
|
|
|
|
2024-10-01 14:16:03 +07:00
|
|
|
[[bench]]
|
|
|
|
name = "circuit_loading_arkzkey_benchmark"
|
|
|
|
harness = false
|
|
|
|
required-features = ["arkzkey"]
|
|
|
|
|
2024-06-07 15:16:44 +05:30
|
|
|
[[bench]]
|
|
|
|
name = "circuit_deser_benchmark"
|
|
|
|
harness = false
|
|
|
|
|
2024-05-09 17:37:34 +07:00
|
|
|
[[bench]]
|
|
|
|
name = "poseidon_tree_benchmark"
|
|
|
|
harness = false
|
2024-08-28 13:41:18 +03:00
|
|
|
|
|
|
|
[package.metadata.docs.rs]
|
|
|
|
all-features = true
|