testudo/Cargo.toml
Cargo.tomlRaw
1[package]
2name = "testudo"
3version = "0.1.0"
4authors = ["Mara Mihali <mara.mihali@protocol.ai>","Srinath Setty <srinath@microsoft.com>" ]
5edition = "2021"
6description = "Spartan + Groth16 fast prover fast verifier SNARK"
7readme = "README.md"
8repository = "https://github.com/maramihali/Spartan"
9license-file = "LICENSE"
10keywords = ["SNARKs", "cryptography", "proofs"]
11
12[dependencies]
13merlin = "3.0.0"
14digest = "0.8.1"
15sha3 = "0.8.2"
16rayon = { version = "1.3.0", optional = true }
17itertools = "0.10.0"
18colored = "2.0.0"
19thiserror = "1.0"
20json = "0.12.4"
21ark-ff = { version = "0.4.0", default-features = false }
22ark-ec = { version = "0.4.0", default-features = false }
23ark-std = { version = "0.4.0"}
24ark-bls12-377 = { version = "0.4.0", features = ["r1cs","curve"] }
25ark-bls12-381 = { version = "0.4.0", features = ["curve"] }
26ark-blst = { git = "https://github.com/nikkolasg/ark-blst" }
27ark-serialize = { version = "0.4.0", features = ["derive"] }
28ark-crypto-primitives = {version = "0.4.0", features = ["sponge","r1cs","snark"] }
29ark-r1cs-std = { version = "0.4.0", default-features = false }
30ark-relations = { version = "0.4.0", default-features = false, optional = true }
31ark-snark = { version = "0.4.0", default-features = false }
32ark-groth16 = { version = "0.3.0" }
33ark-bw6-761 = { version = "0.4.0" }
34ark-poly-commit = { version = "0.4.0" }
35ark-poly = {version = "0.4.0"}
36
37poseidon-paramgen = { git = "https://github.com/nikkolasg/poseidon377", branch = "feat/v0.4" }
38poseidon-parameters = { git = "https://github.com/nikkolasg/poseidon377", branch = "feat/v0.4" }
39# Needed for ark-blst
40blstrs = { version = "^0.6.1", features = ["__private_bench"] }
41
42lazy_static = "1.4.0"
43rand = { version = "0.8", features = [ "std", "std_rng" ] }
44
45tracing = { version = "0.1", default-features = false, features = [ "attributes" ] }
46tracing-subscriber = { version = "0.2" }
47
48
49[dev-dependencies]
50serde = { version = "1.0", features = ["derive"] }
51csv = "1.1.5"
52criterion = "0.3.6"
53
54[lib]
55name = "libtestudo"
56path = "src/lib.rs"
57
58[[bin]]
59name = "testudo"
60path = "profiler/testudo.rs"
61
62[[bench]]
63name = "testudo"
64harness = false
65
66[[bench]]
67name = "pst"
68harness = false
69
70[features]
71multicore = ["rayon"]
72profile = []
73default = ["asm","parallel", "std", "multicore"]
74asm = ["ark-ff/asm"]
75parallel = [ "std", "ark-ff/parallel", "ark-std/parallel", "ark-ec/parallel", "ark-poly/parallel", "rayon"]
76std = ["ark-ff/std", "ark-ec/std", "ark-std/std", "ark-relations/std", "ark-serialize/std"]
77
78[patch.crates-io]
79ark-poly-commit = {git = "https://github.com/cryptonetlab/ark-polycommit", branch="feat/variable-crs"}
80ark-groth16 = { git = "https://github.com/arkworks-rs/groth16" }
81blstrs = { git = "https://github.com/nikkolasg/blstrs", branch = "feat/arkwork" }
82ark-ec = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }
83ark-ff = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }
84ark-poly = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }
85ark-serialize = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }