forked from zcash/sapling-crypto
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
127 lines (100 loc) · 3.34 KB
/
Copy pathCargo.toml
File metadata and controls
127 lines (100 loc) · 3.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
[package]
name = "sapling-crypto"
version = "0.7.0"
authors = [
"Sean Bowe <sean@electriccoin.co>",
"Jack Grigg <jack@electriccoin.co>",
"Kris Nuttycombe <kris@electriccoin.co>",
]
edition = "2021"
rust-version = "1.85.1"
resolver = "3"
description = "Cryptographic library for Zcash Sapling"
homepage = "https://github.com/zcash/sapling-crypto"
repository = "https://github.com/zcash/sapling-crypto"
license = "MIT OR Apache-2.0"
[package.metadata.docs.rs]
features = ["test-dependencies"]
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
ff = { version = "0.13", default-features = false }
group = "0.13"
bls12_381 = { version = "0.8", default-features = false, features = ["alloc"] }
jubjub = { version = "0.10", default-features = false, features = ["alloc"] }
redjubjub = { version = "0.8", default-features = false }
zcash_spec = "0.2"
# Boilerplate
getset = "0.1"
# No-std support
corez = { version = "0.1.1", default-features = false, features = ["alloc"] }
# Circuits
bellman = { version = "0.14", default-features = false, features = ["groth16"], optional = true }
# CSPRNG
rand = { version = "0.8", default-features = false }
rand_core = { version = "0.6", default-features = false }
# Digests
blake2b_simd = { version = "1", default-features = false }
blake2s_simd = { version = "1", default-features = false }
# Documentation
document-features = { version = "0.2", optional = true }
# Encodings
hex = { version = "0.4", default-features = false, features = ["alloc"] }
# Logging and metrics
memuse = { version = "0.2.2", default-features = false }
tracing = { version = "0.1", default-features = false }
# Note Commitment Trees
bitvec = { version = "1", default-features = false }
incrementalmerkletree = { version = "0.8.1", default-features = false, features = ["legacy-api"] }
# Note encryption
zcash_note_encryption = { version = "0.4", features = ["pre-zip-212"] }
# Secret management
subtle = { version = "2.6", default-features = false }
# Static constants
lazy_static = "1"
# Test dependencies
proptest = { version = ">=1.0.0, <1.7.0", optional = true }
# ZIP 32
aes = "0.8"
fpe = { version = "0.6", default-features = false, features = ["alloc"] }
zip32 = { version = "0.2", default-features = false }
[dev-dependencies]
chacha20poly1305 = "0.10"
criterion = "0.5"
incrementalmerkletree = { version = "0.8.1", features = ["legacy-api", "test-dependencies"] }
proptest = ">=1.0.0, <1.7.0"
rand_xorshift = "0.3"
[target.'cfg(unix)'.dev-dependencies]
pprof = { version = "0.15", features = ["criterion", "flamegraph"] } # MSRV 1.74
[features]
default = ["multicore", "circuit"]
std = [
"corez/std",
"dep:document-features",
"group/wnaf-memuse",
"redjubjub/std"
]
## Enables creation of Sapling proofs
circuit = [
"dep:bellman",
"bls12_381/bits",
"bls12_381/groups",
"bls12_381/pairings",
"jubjub/bits",
"std"
]
## Enables multithreading support for creating proofs.
multicore = ["bellman?/multicore"]
### A temporary feature flag that exposes granular APIs needed by `zcashd`. These APIs
### should not be relied upon and will be removed in a future release.
temporary-zcashd = []
## Exposes APIs that are useful for testing, such as `proptest` strategies.
test-dependencies = [
"incrementalmerkletree/test-dependencies",
"dep:proptest",
]
[[bench]]
name = "circuit"
harness = false
[[bench]]
name = "pedersen_hash"
harness = false