Skip to content

The formally verified crypto library for Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

cryspen/libcrux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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.