Crate wolf_crypto

source
Expand description

Safe bindings to wolfSSL’s wolfcrypt

This crate provides a well-tested, type-safe, zero-cost interface for wolfSSL’s software cryptographic module wolfcrypt. It leverages Rust’s type system to ensure correct usage of cryptographic primitives at compile-time.

§Safety

This crate uses Rust’s type system and ownership model to prevent common cryptographic mistakes. However, this library cannot ensure you use the provided cryptographic primitives correctly in the broader context of your application to ensure overall security.

§Performance

The bindings are designed to be zero-cost, allowing direct use of the highly optimized wolfcrypt implementations without additional runtime overhead.

The majority of the future performance improvements will be in enabling further hardware acceleration in the underlying wolf-crypto-sys crate.

§Stability

This library is currently in alpha. As such, there is no guarantee of API stability across any update. This crate follows semantic versioning.

Modules§

  • Authenticated Encryption with Associated Data
  • Advanced Encryption Standard (AES)
  • Types for Keys, IVs, and Generally Sensitive Bytes
  • chachaallow-non-fips
    The ChaCha20 Stream Cipher
  • Cryptographic Hash Algorithms
  • Message Authentication Codes
  • Convenient Error Handling and Accumulation

Structs§

  • A generic error type representing an unspecified failure in cryptographic operations.

Traits§

  • Trait for transforming a Result<T, E> into a Result<T, Unspecified>.