[package]
edition = "2021"
name = "rns-crypto"
version = "0.2.2"
authors = ["rns-rs contributors"]
build = "build.rs"
publish = ["crates-io"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cryptographic primitives for the Reticulum Network Stack"
readme = false
license-file = "LICENSE"
repository = "https://github.com/lelloman/rns-rs"
[features]
default = ["std"]
ed25519-aws-lc = [
"dep:aws-lc-sys",
"std",
]
ed25519-batch = ["ed25519-dalek/batch"]
espidf = ["esp-idf-sys"]
std = []
x25519-aws-lc = [
"dep:aws-lc-sys",
"std",
]
[lib]
name = "rns_crypto"
path = "src/lib.rs"
[[test]]
name = "bench_crypto"
path = "tests/bench_crypto.rs"
[[test]]
name = "interop"
path = "tests/interop.rs"
[[bench]]
name = "primitives"
path = "benches/primitives.rs"
harness = false
[[bench]]
name = "ratchets"
path = "benches/ratchets.rs"
harness = false
[dependencies.aes]
version = "0.9"
default-features = false
[dependencies.cbc]
version = "0.2"
features = [
"alloc",
"block-padding",
]
default-features = false
[dependencies.ed25519-dalek]
version = "3"
features = ["fast"]
default-features = false
[dependencies.esp-idf-sys]
version = "0.37"
optional = true
[dependencies.sha2]
version = "0.11"
default-features = false
[dependencies.subtle]
version = "2"
default-features = false
[dependencies.x25519-dalek]
version = "3"
features = [
"static_secrets",
"precomputed-tables",
]
default-features = false
[dependencies.zeroize]
version = "1"
features = ["alloc"]
default-features = false
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.hmac]
version = "0.13"
default-features = false
[dev-dependencies.serde_json]
version = "1"
[target.'cfg(any(target_arch = "x86_64", target_arch = "aarch64"))'.dependencies.aws-lc-sys]
version = "0.47"
optional = true
[target.'cfg(target_arch = "x86_64")'.dependencies.cpufeatures]
version = "0.3"
default-features = false
[target.'cfg(target_os = "linux")'.dependencies.libc]
version = "0.2"
default-features = false