Expand description
§RustCrypto: SHA-3
Implementation of the SHA-3 family of cryptographic hash algorithms.
There are 4 standard fixed-size algorithms specified in the SHA-3 standard:
SHA3-224, SHA3-256, SHA3-384, SHA3-512.
SHAKE128 and SHAKE256 extendable output functions (XOF) are defined in the shake crate
Additionally, this crate supports:
Keccak224,Keccak256,Keccak384,Keccak512: NIST submission without padding changesKeccak256Full: CryptoNight variant of SHA-3
§Examples
Output size of SHA3-256 is fixed, so its functionality is usually
accessed via the Digest trait:
use hex_literal::hex;
use sha3::{Digest, Sha3_256};
let mut hasher = Sha3_256::new();
hasher.update(b"abc");
let hash = hasher.finalize();
assert_eq!(hash, hex!("3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532"));See the digest crate docs for additional examples.
§License
The crate is licensed under either of:
at your option.
§Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Re-exports§
pub use digest;
Structs§
- Keccak224
- Keccak-224 hasher.
- Keccak256
- Keccak-256 hasher.
- Keccak384
- Keccak-384 hasher.
- Keccak512
- Keccak-512 hasher.
- Keccak256
Full - CryptoNight variant of SHA-3.
- Sha3_
224 - SHA-3-224 hasher.
- Sha3_
256 - SHA-3-256 hasher.
- Sha3_
384 - SHA-3-384 hasher.
- Sha3_
512 - SHA-3-256 hasher.
Traits§
- Digest
- Convenience wrapper trait covering functionality of cryptographic hash functions with fixed output size.