You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

85 lines
3.0 KiB

[package]
name = "testudo"
version = "0.1.0"
authors = ["Mara Mihali <mara.mihali@protocol.ai>","Srinath Setty <srinath@microsoft.com>" ]
edition = "2021"
description = "Spartan + Groth16 fast prover fast verifier SNARK"
readme = "README.md"
repository = "https://github.com/maramihali/Spartan"
license-file = "LICENSE"
keywords = ["SNARKs", "cryptography", "proofs"]
[dependencies]
merlin = "3.0.0"
digest = "0.8.1"
sha3 = "0.8.2"
rayon = { version = "1.3.0", optional = true }
itertools = "0.10.0"
colored = "2.0.0"
thiserror = "1.0"
json = "0.12.4"
ark-ff = { version = "0.4.0", default-features = false }
ark-ec = { version = "0.4.0", default-features = false }
ark-std = { version = "0.4.0"}
ark-bls12-377 = { version = "0.4.0", features = ["r1cs","curve"] }
ark-bls12-381 = { version = "0.4.0", features = ["curve"] }
ark-blst = { git = "https://github.com/nikkolasg/ark-blst" }
ark-serialize = { version = "0.4.0", features = ["derive"] }
ark-crypto-primitives = {version = "0.4.0", features = ["sponge","r1cs","snark"] }
ark-r1cs-std = { version = "0.4.0", default-features = false }
ark-relations = { version = "0.4.0", default-features = false, optional = true }
ark-snark = { version = "0.4.0", default-features = false }
ark-groth16 = { version = "0.3.0" }
ark-bw6-761 = { version = "0.4.0" }
ark-poly-commit = { version = "0.4.0" }
ark-poly = {version = "0.4.0"}
poseidon-paramgen = { git = "https://github.com/nikkolasg/poseidon377", branch = "feat/v0.4" }
poseidon-parameters = { git = "https://github.com/nikkolasg/poseidon377", branch = "feat/v0.4" }
# Needed for ark-blst
blstrs = { version = "^0.6.1", features = ["__private_bench"] }
lazy_static = "1.4.0"
rand = { version = "0.8", features = [ "std", "std_rng" ] }
tracing = { version = "0.1", default-features = false, features = [ "attributes" ] }
tracing-subscriber = { version = "0.2" }
[dev-dependencies]
serde = { version = "1.0", features = ["derive"] }
csv = "1.1.5"
criterion = "0.3.6"
[lib]
name = "libtestudo"
path = "src/lib.rs"
[[bin]]
name = "testudo"
path = "profiler/testudo.rs"
[[bench]]
name = "testudo"
harness = false
[[bench]]
name = "pst"
harness = false
[features]
multicore = ["rayon"]
profile = []
default = ["asm","parallel", "std", "multicore"]
asm = ["ark-ff/asm"]
parallel = [ "std", "ark-ff/parallel", "ark-std/parallel", "ark-ec/parallel", "ark-poly/parallel", "rayon"]
std = ["ark-ff/std", "ark-ec/std", "ark-std/std", "ark-relations/std", "ark-serialize/std"]
[patch.crates-io]
ark-poly-commit = {git = "https://github.com/cryptonetlab/ark-polycommit", branch="feat/variable-crs"}
ark-groth16 = { git = "https://github.com/arkworks-rs/groth16" }
blstrs = { git = "https://github.com/nikkolasg/blstrs", branch = "feat/arkwork" }
ark-ec = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }
ark-ff = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }
ark-poly = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }
ark-serialize = { git = "https://github.com/vmx/algebra", branch="affine-repr-xy-owned" }