libcrux is a formally verified cryptographic library in Rust.
The default feature set has a MSRV of 1.78.0
. no_std
environments
are supported starting from Rust version 1.81.0
.
libcrux provides a DRBG implementation that can be used standalone (drbg::Drbg
)
or through the Rng
traits.
libcrux
and the individual primitive crates it depends on support
no_std
environments given a global allocator for the target
platform.
As a quick indicator of overall verification status, subcrates in this workspace include the following badges:
to indicate that most (or all) of the code that is contained in default features of that crate is not (yet) verified.
to indicate that algorithms in a crate have been verified and extracted to Rust as part of the HACL project. Top-level APIs in these crates accessing the code from HACL may not be verified.
to indicate that most (or all) of the code that is contained in the default feature set is verified.
In every case, please refer to the more detailed notes on verification in each sub-crate to learn more about what has (or has not) been verified in the particular case.