[package]
edition = "2024"
rust-version = "1.96"
name = "beaconcrypt"
version = "0.3.3"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cryptographic transport for C2 channels"
readme = "README.md"
license-file = "LICENSE"
repository = "https://github.com/0xd6cb6d73/beaconcrypt"
[package.metadata.maturin]
name = "beaconcrypt"
bindings = "pyo3"
[features]
beacon = []
cnsa2 = [
"dep:libcrux-ml-dsa",
"dep:libcrux-ml-kem",
"dep:libcrux-aesgcm",
]
default = [
"beacon",
"server",
"pqxdh",
]
pqxdh = []
pybinds = ["dep:pyo3"]
server = []
[lib]
name = "beaconcrypt"
crate-type = [
"cdylib",
"staticlib",
"rlib",
]
path = "src/lib.rs"
[[test]]
name = "beacon"
path = "tests/beacon.rs"
[[test]]
name = "server"
path = "tests/server.rs"
[dependencies.capnp]
version = "0.26"
[dependencies.libcrux-aesgcm]
version = "0.0.8"
optional = true
[dependencies.libcrux-ml-dsa]
version = "0.0.9"
optional = true
[dependencies.libcrux-ml-kem]
version = "0.0.9"
optional = true
[dependencies.libsodium-rs]
version = "0.2"
[dependencies.pyo3]
version = "0.29.0"
features = [
"abi3-py311",
"experimental-inspect",
]
optional = true
[dependencies.zeroize]
version = "1.9"
[build-dependencies.capnpc]
version = "0.26"
[build-dependencies.cbindgen]
version = "0.29"
[profile.release]
lto = true
codegen-units = 1
panic = "abort"
strip = true