libcrux/
lib.rs

1//! # libcrux
2//!
3//! The unified, formally verified, cryptography library.
4
5pub use libcrux_platform::aes_ni_support;
6
7// Jasmin
8#[cfg(all(target_arch = "x86_64", any(target_os = "linux", target_os = "macos")))]
9pub(crate) mod jasmin;
10
11// HACL
12pub(crate) mod hacl;
13
14// libcrux
15pub mod aead;
16// The BLS code requires a 64 bit system.
17#[cfg(all(not(target_arch = "wasm32"), not(target_arch = "x86")))]
18pub mod bls12;
19pub mod digest;
20// XXX: Looks like the bindings are broken for drbg for some reason.
21#[cfg(not(target_arch = "wasm32"))]
22pub mod drbg;
23pub mod ecdh;
24pub mod hkdf;
25pub mod hmac;
26pub mod hpke;
27pub mod kem;
28pub mod signature;
29
30#[cfg(all(target_arch = "wasm32", feature = "wasm"))]
31pub mod wasm;