Expand description
A pure-rust implementation of various cryptographic algorithms, which no dependencies and no foreign code (specially C or assembly).
Our goals is to support rust cryptography in various constrained environment like embedded devices and web assembly
This is a fork of Rust-Crypto by DaGenix, which we owe a debt of gratitude for starting some good quality pure rust implementations of various cryptographic algorithms.
Notable Differences with the original sources:
- Maintained
- Extended ED25519 support for extended secret key (64 bytes) support
- Proper implementation of ChaChaPoly1305
- Many cryptographic algorithms removed: AES, Blowfish, Fortuna, RC4, RIPEMD160, Whirlpool, MD5, SHA1.
As with everything cryptographic implementations, please make sure it suits your security requirements, and review and audit before using.
Modules§
- blake2b
- Blake2B hash function
- blake2s
- Blake2S hash function
- chacha
- ChaCha Stream Cipher – Engine implementation
- chacha20
- ChaCha20 Stream Cipher
- chacha20poly1305
- ChaCha20Poly1305 is an authenticated symmetric stream cipher based on chacha20 and poly1305.
- constant_
time - Constant time operations
- curve25519
- Curve25519 elliptic curve diffie hellman (X25519)
- digest
- Cryptographic Hash abstraction definition
- drg
- Deterministic Random Generator
- ed25519
- ED25519 Signature Scheme
- hashing
- Cryptographic Hash Functions root module
- hkdf
- HMAC Key Derivation Function (HKDF)
- hmac
- Implements the Hash Message Authentication Code (HMAC)
- kdf
- Key Derivation Function (KDF) Algorithms
- mac
- The mac module defines the Message Authentication Code (
Mac
) trait. - pbkdf2
- This module implements the PBKDF2 Key Derivation Function as specified in Specification.
- poly1305
- Poly1305 Message Authentication Code (MAC) as defined in Specification.
- ripemd160
- An implementation of the RIPEMD-160 cryptographic hash.
- salsa20
- Salsa20 Stream Cipher
- scrypt
- Implements the Scrypt key derivation function as Specification.
- sha1
- An implementation of the SHA-1 cryptographic hash algorithm.
- sha2
- An implementation of the SHA-2 cryptographic hash algorithms.
- sha3
- An implementation of the SHA-3 cryptographic hash algorithms.
- x25519
- X25519 - diffie hellman using curve25519