[package]
name = "dcrypt-algorithms"
version.workspace = true
edition.workspace = true
authors.workspace = true
description = "Cryptographic primitives for the dcrypt library"
repository.workspace = true
license.workspace = true
publish = true
[features]
default = ["std", "xof", "ec"]
std = [
"alloc",
"hex/std",
"dcrypt-api/std",
"dcrypt-common/std",
"dcrypt-internal/std",
"hash", "xof", "aead", "block", "kdf", "mac", "stream", "ec"
]
alloc = [
"dcrypt-api/alloc",
"dcrypt-common/alloc",
"dcrypt-internal/alloc",
]
hash = []
xof = ["alloc"]
aead = ["alloc"]
block = []
kdf = ["alloc"]
mac = []
stream = []
ec = ["alloc", "groups", "pairings"]
groups = []
pairings = ["groups"]
[dependencies]
dcrypt-api = { path = "../api", version = "=4.0.1", default-features = false }
dcrypt-common = { path = "../common", version = "=4.0.1", default-features = false }
dcrypt-internal = { path = "../internal", version = "=4.0.1", default-features = false }
dcrypt-params = { path = "../params", version = "=4.0.1" }
hex = { version = "=0.4.3", default-features = false, features = ["alloc"] }
base64 = { version = "=0.22.1", default-features = false, features = ["alloc"] }
[dev-dependencies]
criterion = { version = "=0.5.1", features = ["html_reports"] }
serde = { version = "=1.0.229", features = ["derive"] }
serde_json = "=1.0.151"
[[bench]]
name = "aes"
harness = false
[[bench]]
name = "aes_gcm"
harness = false
[[bench]]
name = "sha2"
harness = false
[[bench]]
name = "chacha20_poly1305"
harness = false
[[bench]]
name = "k256"
harness = false
[[bench]]
name = "xchacha20_poly1305"
harness = false
[[bench]]
name = "p256"
harness = false
[[bench]]
name = "p384"
harness = false
[[bench]]
name = "p521"
harness = false
[[bench]]
name = "argon2"
harness = false
[[bench]]
name = "ntt"
harness = false
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.release]
publish = true
[lints]
workspace = true