[package]
edition = "2021"
name = "spongefish"
version = "0.3.0"
authors = [
"Michele OrrĂ¹ <m@orru.net>",
"Giacomo Fenzi <giacomofenzi@outlook.com>",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An implementation of the Fiat--Shamir transformation from Duplex Sponges."
homepage = "https://github.com/arkworks-rs/spongefish"
documentation = "https://docs.rs/spongefish"
readme = false
license = "MIT OR Apache-2.0"
repository = "https://github.com/arkworks-rs/spongefish"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--html-in-header",
"../doc/katex-header.html",
"--cfg",
"docsrs",
]
[features]
ark-ec = [
"ark-ff",
"dep:ark-ec",
]
ark-ff = [
"dep:ark-ff",
"dep:ark-serialize",
]
ascon = ["dep:ascon"]
asm = [
"keccak?/asm",
"ark-ff?/asm",
]
blake2 = ["dep:blake2"]
blake3 = ["dep:blake3"]
bls12_381 = ["dep:bls12_381"]
curve25519-dalek = ["dep:curve25519-dalek"]
default = [
"sha3",
"zeroize",
]
derive = ["dep:spongefish-derive"]
k12 = ["dep:k12"]
k256 = ["dep:k256"]
keccak = ["dep:keccak"]
p256 = ["dep:p256"]
p3-baby-bear = [
"dep:p3-baby-bear",
"dep:p3-field",
]
p3-koala-bear = [
"dep:p3-koala-bear",
"dep:p3-field",
]
p3-mersenne-31 = [
"dep:p3-mersenne-31",
"dep:p3-field",
]
risc0-zkp = ["dep:risc0-zkp"]
sha2 = ["dep:sha2"]
sha3 = ["dep:sha3"]
std = [
"ark-ff?/std",
"ark-ec?/std",
"ark-serialize?/std",
]
yolocrypto = []
zeroize = ["dep:zeroize"]
[lib]
name = "spongefish"
path = "src/lib.rs"
[[example]]
name = "bulletproof"
path = "examples/bulletproof.rs"
required-features = [
"curve25519-dalek",
"curve25519-dalek/rand_core",
]
[[example]]
name = "schnorr"
path = "examples/schnorr.rs"
required-features = ["ark-ec"]
[[test]]
name = "derive_generics"
path = "tests/derive_generics.rs"
[[test]]
name = "test_spec"
path = "tests/test_spec.rs"
[dependencies.ark-ec]
version = "^0.5"
optional = true
[dependencies.ark-ff]
version = "^0.5"
optional = true
[dependencies.ark-serialize]
version = "^0.5"
optional = true
[dependencies.ascon]
version = "^0.4.0"
optional = true
[dependencies.blake2]
version = "^0.10.6"
optional = true
[dependencies.blake3]
version = "^1.7"
features = [
"traits-preview",
"zeroize",
]
optional = true
[dependencies.bls12_381]
version = "^0.8.0"
optional = true
[dependencies.curve25519-dalek]
version = "^4.1"
optional = true
[dependencies.digest]
version = "^0.10.7"
[dependencies.k12]
version = "^0.3.0"
optional = true
[dependencies.k256]
version = "^0.13"
features = ["arithmetic"]
optional = true
[dependencies.keccak]
version = "^0.1.5"
optional = true
[dependencies.p256]
version = "^0.13"
features = ["arithmetic"]
optional = true
[dependencies.p3-baby-bear]
version = "^0.5.1"
optional = true
[dependencies.p3-field]
version = "^0.5.1"
optional = true
[dependencies.p3-koala-bear]
version = "^0.5.1"
optional = true
[dependencies.p3-mersenne-31]
version = "^0.5.1"
optional = true
[dependencies.rand]
version = "^0.8.5"
features = ["getrandom"]
[dependencies.risc0-zkp]
version = "3.0.3"
optional = true
[dependencies.sha2]
version = "^0.10.7"
features = ["asm"]
optional = true
[dependencies.sha3]
version = "^0.10.8"
optional = true
[dependencies.spongefish-derive]
version = "0.3.0"
optional = true
[dependencies.zeroize]
version = "^1.8.1"
features = ["zeroize_derive"]
optional = true
[dev-dependencies.ark-bls12-381]
version = "^0.5"
[dev-dependencies.ark-curve25519]
version = "^0.5"
[dev-dependencies.ark-pallas]
version = "^0.5"
[dev-dependencies.ark-secp256k1]
version = "^0.5"
[dev-dependencies.ark-secp256r1]
version = "^0.5"
[dev-dependencies.ark-std]
version = "^0.5"
[dev-dependencies.ark-vesta]
version = "^0.5"
[dev-dependencies.blake2]
version = "^0.10.6"
[dev-dependencies.bls12_381]
version = "^0.8.0"
[dev-dependencies.curve25519-dalek]
version = "^4.1"
[dev-dependencies.hex]
version = "0.4.3"
[dev-dependencies.libtest-mimic]
version = "0.8.1"
[dev-dependencies.pallas]
version = "^0.32"
[dev-dependencies.serde]
version = "1.0"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.sha2]
version = "^0.10.7"
[dev-dependencies.sha3]
version = "^0.10.8"
[target."cfg(doc)".dependencies.p3-koala-bear]
version = "^0.5.1"
[target."cfg(doc)".dependencies.sha2]
version = "^0.10.7"
[lints.clippy]
cast_possible_truncation = "allow"
default_trait_access = "allow"
doc_lazy_continuation = "allow"
doc_markdown = "allow"
many_single_char_names = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
missing_safety_doc = "allow"
module_name_repetitions = "allow"
naive_bytecount = "allow"
should_panic_without_expect = "allow"
similar_names = "allow"
too_long_first_doc_paragraph = "allow"
tuple_array_conversions = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1