Cryptography in Rust.
Mundane is a Rust cryptography library backed by BoringSSL that is difficult to misuse, ergonomic, and performant (in that order).
By default, Mundane provides only high-level cryptographic primitives. Unless you are implementing cryptographic protocols, these high-level primitives should be all you need. However, if you are sure that you need something lower level, Mundane provides features to enable a number of different low level primitives.
WARNING: Being low level, these primitives provide the programmer with more degrees of freedom. There are more conditions that the programmer must meet in order to guarantee security, and thus more ways for the programmer to shoot themself in the foot. Please only use these primitives if you're aware of the risks and are comfortable with the responsibility of using them correctly!
| ||Key derivation functions|
| ||Generate random bytes|
Mundane supports one additional feature not listed in the previous section:
insecure. This enables some cryptographic primitives which are today
considered insecure. These should only be used for compatibility with legacy
systems, but never in new systems! When the
insecure feature is used, an
insecure module is added to the crate root. All insecure primitives are
exposed through this module.
Cryptographic hash functions.
Hash-based Message Authentication Codes (HMACs).
WARNING: INSECURE CRYPTOGRAPHIC OPERATIONS.
Key Derivation Functions (KDFs).
Public key cryptography.
Errors generated by this crate.
Reads cryptographically-secure random bytes.