Crate crypto

source ·

Modules§

  • The aessafe module implements the AES algorithm completely in software without using any table lookups or other timing dependant mechanisms. This module actually contains two seperate implementations - an implementation that works on a single block at a time and a second implementation that processes 8 blocks in parallel. Some block encryption modes really only work if you are processing a single blocks (CFB, OFB, and CBC encryption for example) while other modes are trivially parallelizable (CTR and CBC decryption). Processing more blocks at once allows for greater efficiency, especially when using wide registers, such as the XMM registers available in x86 processors.
  • An implementation of the Fortuna CSPRNG
  • This module implements the HMAC-based Extract-and-Expand Key Derivation Function as specified by https://tools.ietf.org/html/rfc5869.
  • This module implements the Hmac function - a Message Authentication Code using a Digest.
  • The mac module defines the Message Authentication Code (Mac) trait.
  • This module implements the PBKDF2 Key Derivation Function as specified by http://tools.ietf.org/html/rfc2898.
  • An implementation of the RC4 (also sometimes called ARC4) stream cipher. THIS IMPLEMENTATION IS NOT A FIXED TIME IMPLEMENTATION.
  • An implementation of the RIPEMD-160 cryptographic hash.
  • This module implements the Scrypt key derivation function as specified in [1].
  • An implementation of the SHA-1 cryptographic hash algorithm.
  • An implementation of the SHA-2 cryptographic hash algorithms.
  • An implementation of the SHA-3 cryptographic hash algorithms.
  • An implementation of the Whirlpool cryptographic hash algorithm.