[package]
edition = "2021"
name = "libcrux"
version = "0.0.3"
authors = ["Cryspen"]
build = "build.rs"
exclude = [
"c.sh",
"/.devcontainer",
"/.docker",
"flake.lock",
"flake.nix",
"formal_verification",
"fstar-helpers",
"/.github",
".gitignore",
"no-std-build.sh",
"/tests",
"/specs",
"/proofs",
"/*.py",
"/wasm-demo",
"/fuzz",
"/git-hooks",
"/architecture",
"/libcrux.fst.config.json",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "The Formally Verified Cryptography Library"
homepage = "https://github.com/cryspen/libcrux"
documentation = "https://docs.rs/libcrux/"
readme = "Readme.md"
license = "Apache-2.0"
repository = "https://github.com/cryspen/libcrux"
[features]
aead = []
aes_gcm = []
all = [
"all_algorithms",
"all_primitives",
"all_protocols",
]
all_algorithms = [
"aes_gcm",
"blake2",
"chacha20_poly1305",
"curve25519",
"ed25519",
"p256_ecdh",
"p256_ecdsa",
"sha2",
"sha3",
"hkdf",
"hmac",
"mlkem",
"mldsa",
"rsapss",
"poly1305",
]
all_primitives = [
"aead",
"digest",
"kem",
]
all_protocols = [
"hpke",
"psq",
]
blake2 = []
chacha20_poly1305 = []
curve25519 = []
default = [
"std",
"all",
]
digest = []
ed25519 = []
experimental = []
hkdf = []
hmac = []
hpke = []
kem = []
mldsa = []
mlkem = []
p256_ecdh = []
p256_ecdsa = []
poly1305 = []
psq = []
rand = []
rsapss = []
sha2 = []
sha3 = []
std = []
tests = []
wasm = [
"wasm-bindgen",
"getrandom",
]
[lib]
name = "libcrux"
crate-type = [
"staticlib",
"cdylib",
"lib",
]
path = "src/lib.rs"
bench = false
[[example]]
name = "mlkem"
path = "examples/mlkem.rs"
[dependencies.getrandom]
version = "0.3"
optional = true
[dependencies.hax-lib]
version = "=0.3.6"
[dependencies.hpke-rs]
version = "0.5"
features = ["libcrux"]
[dependencies.libcrux-aead]
version = "=0.0.7"
[dependencies.libcrux-aesgcm]
version = "=0.0.7"
[dependencies.libcrux-blake2]
version = "=0.0.6"
[dependencies.libcrux-chacha20poly1305]
version = "=0.0.7"
[dependencies.libcrux-curve25519]
version = "=0.0.6"
default-features = false
[dependencies.libcrux-digest]
version = "=0.0.7"
[dependencies.libcrux-ecdh]
version = "=0.0.6"
default-features = false
[dependencies.libcrux-ecdsa]
version = "=0.0.6"
[dependencies.libcrux-ed25519]
version = "=0.0.7"
[dependencies.libcrux-hkdf]
version = "=0.0.6"
[dependencies.libcrux-hmac]
version = "=0.0.6"
[dependencies.libcrux-kem]
version = "=0.0.7"
[dependencies.libcrux-ml-dsa]
version = "=0.0.8"
[dependencies.libcrux-ml-kem]
version = "=0.0.8"
default-features = false
[dependencies.libcrux-p256]
version = "=0.0.6"
default-features = false
[dependencies.libcrux-poly1305]
version = "=0.0.5"
[dependencies.libcrux-psq]
version = "=0.0.8"
[dependencies.libcrux-rsa]
version = "=0.0.6"
[dependencies.libcrux-sha2]
version = "=0.0.6"
[dependencies.libcrux-sha3]
version = "=0.0.8"
[dependencies.wasm-bindgen]
version = "0.2.87"
optional = true
[dev-dependencies.clap]
version = "4.5"
features = ["derive"]
[dev-dependencies.hex]
version = "0.4.3"
features = ["serde"]
[dev-dependencies.pretty_env_logger]
version = "0.5"
[dev-dependencies.rand]
version = "0.9"
[dev-dependencies.rand_chacha]
version = "0.9.0"
features = ["os_rng"]
[build-dependencies.libcrux-platform]
version = "=0.0.3"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.getrandom]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen-test]
version = "0.3"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(hax)",
"cfg(doc_cfg)",
"cfg(simd128)",
"cfg(simd256)",
"cfg(aes_ni)",
]
[profile.release]
lto = "fat"
codegen-units = 1
panic = "abort"
strip = true