synedrion 0.1.0

Threshold signing library based on Canetti-Gennaro-Goldfeder-Makriyannis-Peled '21 scheme
Documentation
[package]
name = "synedrion"
authors = ['Entropy Cryptography <engineering@entropy.xyz>']
version = "0.1.0"
edition = "2021"
license = "AGPL-3.0-or-later"
description = "Threshold signing library based on Canetti-Gennaro-Goldfeder-Makriyannis-Peled '21 scheme"
repository = "https://github.com/entropyxyz/synedrion"
readme = "README.md"
categories = ["cryptography", "no-std"]

[dependencies]
signature = { version = "2", default-features = false, features = ["alloc"] }
k256 = { version = "0.13.2", default-features = false, features = ["ecdsa", "arithmetic"] }
rand_core = { version = "0.6.4", default-features = false, features = ["getrandom"] }
sha2 = { version = "0.10", default-features = false }
sha3 = { version = "0.10", default-features = false }
digest = { version = "0.10", default-features = false, features = ["alloc"]}
hex = { version = "0.4", default-features = false, features = ["alloc"] }
base64 = { version = "0.21", default-features = false, features = ["alloc"] }

# Note: `alloc` is needed for `crytpto-bigint`'s dependency `serdect` to be able
# to serialize Uints in human-readable formats.
crypto-bigint = { version = "0.5.3", features = ["serde", "alloc"] }
crypto-primes = "0.5"

serde = { version = "1", features = ["derive"] }
bincode = "1"
cfg-if = "1"
itertools = { version = "0.11", default-features = false, optional = true }

[dev-dependencies]
num-modular = { version = "0.5", features = ["num-bigint"] }
num-bigint = "0.4"
num-integer = "0.1"
tokio = { version = "1", features = ["rt", "sync", "time", "macros"] }
rand = "0.8"
criterion = "0.5"
itertools = "0.11"
hex = "0.4"
k256 = { version = "0.13.2", default-features = false, features = ["serde"] }

[features]
bench-internals = ["itertools"] # makes some internal functions public to allow external benchmarks

[[bench]]
bench = true
name = "bench"
harness = false
required-features = ["bench-internals"]
path = "benches/bench.rs"