#primitive #hash #cipher #api #general #defines #mac

crypto_api

Defines a general purpose API for various cryptographic primitives

6 releases

0.2.2 Mar 17, 2019
0.2.1 Mar 17, 2019
0.1.14 Mar 12, 2019

#2031 in Cryptography

Download history 1355/week @ 2023-11-26 1180/week @ 2023-12-03 1520/week @ 2023-12-10 1180/week @ 2023-12-17 365/week @ 2023-12-24 244/week @ 2023-12-31 888/week @ 2024-01-07 1025/week @ 2024-01-14 1057/week @ 2024-01-21 854/week @ 2024-01-28 1013/week @ 2024-02-04 1532/week @ 2024-02-11 1431/week @ 2024-02-18 1071/week @ 2024-02-25 1500/week @ 2024-03-03 778/week @ 2024-03-10

4,834 downloads per month
Used in 9 crates (4 directly)

BSD-2-Clause OR MIT

15KB
171 lines

License License

Crypto API

This crate defines a general purpose API for various cryptographic primitives. It's goal is to provide an abstraction layer that allows you to switch your cryptographic backend easily.

Primitives covered

The following primitives are covered:

  • Ciphers

    • Normal cipher
    • AEAD cipher
    • Streaming API
  • Hash

    • Normal hash
    • Variable-length hash
    • Streaming API
  • KDF

    • Normal parametrized KDF (tweaked with salt/info)
  • MAC

    • Normal MAC
    • Streaming API
  • PBKDF

    • Normal (CPU-hard) PBKDF
    • Memory-hard PBKDF
  • RNG

    • Cryptographically secure RNG
    • Cryptographically secure, seedable RNG
    • Cryptographically secure, deterministic RNG
  • Asymmetric Signer

    • Normal signer

lib.rs:

This crate defines a general purpose API for various cryptographic primitives. It's goal is to provide an abstraction layer that allows you to switch your cryptographic backend easily.

No runtime deps