Source code
Revision control
Copy as Markdown
Other Tools
# libcrux - the formally verified crypto library
libcrux is a formally verified cryptographic library in Rust.
## Minimum Supported Rust Version (MSRV)
The default feature set has a MSRV of `1.78.0`. `no_std` environments
are supported starting from Rust version `1.81.0`.
## Randomness
libcrux provides a DRBG implementation that can be used standalone (`drbg::Drbg`)
or through the `Rng` traits.
## `no_std` support
`libcrux` and the individual primitive crates it depends on support
`no_std` environments given a global allocator for the target
platform.
## Verification status
As a quick indicator of overall verification status, subcrates in this workspace include the following badges:
- ![pre-verification] to indicate that most (or all) of the code that
is contained in default features of that crate is not (yet)
verified.
- ![verified-hacl] 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.
- ![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.
[architecture]: ./Architecture.md
[formal verification]: ./formal_verification