[package]
name = "cggmp21"
version = "0.6.3"
edition = "2021"
license = "MIT OR Apache-2.0"
description = "TSS ECDSA implementation based on CGGMP21 paper"
repository = "https://github.com/LFDT-Lockness/cggmp21"
categories = ["algorithms", "cryptography"]
keywords = ["mpc", "threshold-signatures", "tss"]
readme = "../README.md"
[dependencies]
cggmp21-keygen = { workspace = true }
key-share = { workspace = true, features = ["serde"] }
generic-ec = { workspace = true, features = ["serde", "udigest", "hash-to-scalar"] }
generic-ec-zkp = { workspace = true, features = ["serde", "udigest"] }
round-based = { workspace = true, features = ["derive"] }
paillier-zk = { workspace = true, features = ["serde"] }
udigest = { workspace = true, features = ["std", "derive"]}
digest = { workspace = true }
sha2 = { workspace = true }
rand_core = { workspace = true }
rand_hash = { workspace = true }
futures = { workspace = true }
thiserror = { workspace = true }
serde = { workspace = true, features = ["derive", "rc"] }
serde_with = { workspace = true }
hex = { workspace = true, default-features = false, features = ["serde"] }
hd-wallet = { workspace = true, optional = true }
[dev-dependencies]
round-based = { workspace = true, features = ["derive", "sim"] }
rand = { workspace = true }
rand_dev = { workspace = true }
generic-tests = { workspace = true }
[features]
all-curves = ["curve-secp256k1", "curve-secp256r1", "curve-stark"]
curve-secp256k1 = ["generic-ec/curve-secp256k1", "hd-wallet?/curve-secp256k1"]
curve-secp256r1 = ["generic-ec/curve-secp256r1", "hd-wallet?/curve-secp256r1"]
curve-stark = ["generic-ec/curve-stark", "hd-wallet?/curve-stark"]
hd-wallet = ["dep:hd-wallet", "cggmp21-keygen/hd-wallet"]
hd-slip10 = ["hd-wallet/slip10"]
hd-stark = ["hd-wallet/stark"]
spof = ["key-share/spof"]
state-machine = ["cggmp21-keygen/state-machine"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs", "--html-in-header", "katex-header.html"]