Expand description
An implementation of the SHA-3 cryptographic hash algorithms.
There are 6 standard algorithms specified in the SHA-3 standard:
SHA3-224
SHA3-256
SHA3-384
SHA3-512
SHAKE128
, an extendable output function (XOF)SHAKE256
, an extendable output function (XOF)Keccak224
,Keccak256
,Keccak384
,Keccak512
(NIST submission without padding changes)
Usage
An example of using SHA3-256
is:
use hex_literal::hex;
use sha3::{Digest, Sha3_256};
// create a SHA3-256 object
let mut hasher = Sha3_256::new();
// write input message
hasher.update(b"abc");
// read hash digest
let result = hasher.finalize();
assert_eq!(result[..], hex!("
3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532
")[..]);
Also see RustCrypto/hashes readme.
Re-exports
pub use digest;
Structs
Keccak-224 hash function.
Keccak-256 hash function.
SHA-3 variant used in CryptoNight.
Keccak-384 hash function.
Keccak-512 hash function.
Reader state for extracting extendable output.
SHA-3-224 hash function.
SHA-3-256 hash function.
SHA-3-384 hash function.
SHA-3-512 hash function.
SHAKE128 extendable output (XOF) hash function
SHAKE256 extendable output (XOF) hash function
Traits
The Digest
trait specifies an interface common for digest functions.