workspace = { exclude = ["ct_cm4", "dudect", "fuzz", "wasm"] } [package] name = "fips204" version = "0.4.5" authors = ["Eric Schorn "] description = "FIPS 204: Module-Lattice-Based Digital Signature" categories = ["cryptography", "no-std"] documentation = "https://docs.rs/fips204" edition = "2021" keywords = ["FIPS204", "lattice", "dilithium", "signature"] license = "MIT OR Apache-2.0" repository = "https://github.com/integritychain/fips204" # MSRV set at 1.70 for debian testing, e.g. https://packages.debian.org/search?keywords=rustc # This requires several marginally outdated dependencies, see below rust-version = "1.70" [features] default = ["default-rng", "ml-dsa-44", "ml-dsa-65", "ml-dsa-87"] default-rng = ["rand_core/getrandom"] ml-dsa-44 = [] ml-dsa-65 = [] ml-dsa-87 = [] dudect = [] [dependencies] # Some are marginally held-back to retain MSRV 1.70 rand_core = { version = "0.6.4", default-features = false } sha2 = { version = "0.10.8", default-features = false } sha3 = { version = "0.10.2", default-features = false } zeroize = { version = "1.6.0", default-features = false, features = ["zeroize_derive"] } [dev-dependencies] # Some are marginally held-back to retain MSRV 1.70 criterion = "0.4.0" hex = "0.4.3" rand = "0.8.5" rand_chacha = "0.3.1" regex = "1.10.2" serde_json = {version = "1.0.127", features = []} [[bench]] name = "benchmark" harness = false [profile.dev] debug = true #lto = true opt-level = 1 #codegen-units = 1 [profile.release] lto = true opt-level = "s" codegen-units = 1 [profile.bench] debug = true debug-assertions = false incremental = false lto = true opt-level = 3 overflow-checks = false codegen-units = 1