Skip to content

Latest commit

 

History

History
 
 

evercrypt-rs

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Evercrypt & HACL Rust bindings

Build & Test codecov Maturity Level

High-level evercrypt bindings crates.

⚠️ Note: This crate is still work in progress. Don't use in production.

Features

By default the Evercrypt crate includes the random feature that allows generating random values (keys, nonces, etc.). But this is not verified code and uses the rand crate. It can be disabled with --no-default-features. Please bring your own randomness if you want to be safe.

RustCrypto AES

Evecrypt currently implements AES only for x64 CPUs with a certain set of CPU instructions. To provide AES for other platforms the Evercrypt crate uses the RustCrypto AES implementation when using --features rust-crypto-aes.

Platforms

Currently only Linux x64 and MacOS are supported. Windows builds are on the To Do list and should be supported in future.

Platform Supported Status
MacOS Build & Test
Linux x64 Build & Test
Linux x86 Build & Test
Windows x64 Build & Test
Arm64 Linux Build Status
Arm32 Linux Build Status

Benchmarks

To run benchmarks use cargo bench.

Tests

All primitives are tested against the Wycheproof test vectors. They can be run with cargo test. This will also run automatically generated binding tests from bindgen.