[package]
edition = "2021"
rust-version = "1.87"
name = "vaea-ntt"
version = "0.1.1"
build = "build.rs"
exclude = [
"mlkem_ntt/",
"pqclean_ntt/",
"benches/butterfly_lab.rs",
"benches/ntt_lab.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance Number Theoretic Transform (NTT) for post-quantum cryptography. ARM NEON SIMD native, constant-time, no_std. ML-DSA, Falcon, FHE. Dual-licensed AGPL-3.0 + commercial."
homepage = "https://vaea.tech"
documentation = "https://docs.rs/vaea-ntt"
readme = "README.md"
keywords = [
"ntt",
"post-quantum",
"cryptography",
"lattice",
"fhe",
]
categories = [
"cryptography",
"algorithms",
"no-std",
]
license = "AGPL-3.0-or-later"
repository = "https://github.com/Vaeatech/VaeaNTT"
[features]
default = ["std"]
ffi = [
"dep:diplomat",
"dep:diplomat-runtime",
]
rand = [
"dep:rand",
"dep:rand_distr",
]
std = []
[lib]
name = "vaea_ntt"
path = "src/lib.rs"
[[example]]
name = "bias_check"
path = "examples/bias_check.rs"
[[example]]
name = "dudect_ntt"
path = "examples/dudect_ntt.rs"
[[example]]
name = "exhaustive_test"
path = "examples/exhaustive_test.rs"
[[example]]
name = "mldsa_ntt"
path = "examples/mldsa_ntt.rs"
[[example]]
name = "security_exploits"
path = "examples/security_exploits.rs"
[[example]]
name = "verify_no_false_positive"
path = "examples/verify_no_false_positive.rs"
[[test]]
name = "attack_vectors"
path = "tests/attack_vectors.rs"
[[test]]
name = "constant_time"
path = "tests/constant_time.rs"
[[test]]
name = "ntt32_integration"
path = "tests/ntt32_integration.rs"
[[test]]
name = "ntt64_integration"
path = "tests/ntt64_integration.rs"
[[bench]]
name = "ntt32_bench"
path = "benches/ntt32_bench.rs"
harness = false
[[bench]]
name = "ntt64_bench"
path = "benches/ntt64_bench.rs"
harness = false
[[bench]]
name = "pq_bench"
path = "benches/pq_bench.rs"
harness = false
[[bench]]
name = "vs_concrete_ntt"
path = "benches/vs_concrete_ntt.rs"
harness = false
[[bench]]
name = "vs_libcrux"
path = "benches/vs_libcrux.rs"
harness = false
[[bench]]
name = "vs_pqclean"
path = "benches/vs_pqclean.rs"
harness = false
[dependencies.diplomat]
version = "0.15"
optional = true
[dependencies.diplomat-runtime]
version = "0.15"
optional = true
[dependencies.rand]
version = "0.8"
optional = true
[dependencies.rand_distr]
version = "0.4"
optional = true
[dev-dependencies.clap]
version = "2"
[dev-dependencies.concrete-ntt]
version = "0.2"
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.dudect-bencher]
version = "0.4"
[dev-dependencies.libcrux-ml-kem]
version = "0.0.9"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.rand_chacha]
version = "0.3"
[dev-dependencies.rand_core]
version = "0.5"
[dev-dependencies.rand_distr]
version = "0.4"
[build-dependencies.cc]
version = "1"