[package] name = "modular-frost" version = "0.10.1" description = "Modular implementation of FROST over ff/group" license = "MIT" repository = "https://github.com/serai-dex/serai/tree/develop/crypto/frost" authors = ["Luke Parker "] keywords = ["frost", "multisig", "threshold"] edition = "2021" rust-version = "1.80" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [lints] workspace = true [dependencies] thiserror = { version = "2", default-features = false, features = ["std"] } rand_core = { version = "0.6", default-features = false, features = ["std"] } rand_chacha = { version = "0.3", default-features = false, features = ["std"] } zeroize = { version = "^1.5", default-features = false, features = ["std", "zeroize_derive"] } subtle = { version = "^2.4", default-features = false, features = ["std"] } hex = { version = "0.4", default-features = false, features = ["std"], optional = true } digest = { version = "0.10", default-features = false, features = ["std"] } transcript = { package = "flexible-transcript", path = "../transcript", version = "^0.3.2", default-features = false, features = ["std", "recommended"] } dalek-ff-group = { path = "../dalek-ff-group", version = "0.4", default-features = false, features = ["std"], optional = true } minimal-ed448 = { path = "../ed448", version = "0.4", default-features = false, features = ["std"], optional = true } ciphersuite = { path = "../ciphersuite", version = "^0.4.1", default-features = false, features = ["std"] } ciphersuite-kp256 = { path = "../ciphersuite/kp256", version = "0.4", default-features = false, features = ["std"], optional = true } multiexp = { path = "../multiexp", version = "0.4", default-features = false, features = ["std", "batch"] } schnorr = { package = "schnorr-signatures", path = "../schnorr", version = "^0.5.1", default-features = false, features = ["std"] } dkg = { path = "../dkg", version = "0.6.1", default-features = false, features = ["std"] } dkg-recovery = { path = "../dkg/recovery", version = "0.6", default-features = false, features = ["std"], optional = true } dkg-dealer = { path = "../dkg/dealer", version = "0.6", default-features = false, features = ["std"], optional = true } [dev-dependencies] hex = "0.4" serde_json = { version = "1", default-features = false, features = ["std"] } dkg = { path = "../dkg", default-features = false, features = ["std"] } dkg-recovery = { path = "../dkg/recovery", default-features = false, features = ["std"] } dkg-dealer = { path = "../dkg/dealer", default-features = false, features = ["std"] } [features] ed25519 = ["dalek-ff-group"] ristretto = ["dalek-ff-group"] secp256k1 = ["ciphersuite-kp256"] p256 = ["ciphersuite-kp256"] ed448 = ["minimal-ed448"] tests = ["hex", "rand_core/getrandom", "dkg-dealer", "dkg-recovery"]