[][src]Crate sha3

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 sha3::{Digest, Sha3_256};

// create a SHA3-256 object
let mut hasher = Sha3_256::new();

// write input message
hasher.input(b"abc");

// read hash digest
let result = hasher.result();

assert_eq!(result[..], hex!("
    3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532
")[..]);

Also see RustCrypto/hashes readme.

Re-exports

pub extern crate digest;

Structs

Keccak224
Keccak256
Keccak256Full
Keccak384
Keccak512
Sha3XofReader

Reader state for extracting extendable output.

Sha3_224
Sha3_256
Sha3_384
Sha3_512
Shake128
Shake256

Traits

Digest

The Digest trait specifies an interface common for digest functions.