SHA-3 Generator

A SHA3 generator for SHA3-224, SHA3-256, SHA3-384, and SHA3-512, plus Keccak-256 for Ethereum work. SHA3-256 is selected when the page opens.

Hashed in your browser. Your text is not uploaded.

Hashed as UTF-8. A trailing space or line break changes the hash.

Algorithms

How to use the SHA-3 Generator

  1. Paste the string you want a SHA-3 digest of. The default abc shows the FIPS 202 test result.
  2. Pick the size under Algorithms. SHA3-256 is ticked by default; tick SHA3-224, SHA3-384, or SHA3-512 for the other sizes, or Keccak-256 for an Ethereum-style hash.
  3. Choose hex or Base64 and copy the row you need.
  4. Paste an expected value into Compare with to check it against every ticked algorithm.

How SHA-3 works

SHA-3 comes from Keccak, the design that won NIST's hash competition in 2012. NIST published it as FIPS 202 in 2015. It does not use the block chaining of MD5 and SHA-2. Instead it keeps a 1600-bit state, absorbs the input into part of it, scrambles the whole state 24 times per block, and then squeezes the output out. This is called a sponge.

The number in the name is the output size in bits. Larger sizes take in fewer input bytes per block, so SHA3-512 is the slowest of the four. Browsers have no built-in SHA-3, so the page loads a WebAssembly hasher from this site and runs it on your device.

Examples

AlgorithmHash of abc
SHA3-224e642824c3f8cf24ad09234ee7d3c766fc9a3a5168d0c94ad73b46fdf
SHA3-2563a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532
Keccak-2564e03657aea45a94fc7d47ba826c8d667c0d1e6e33a64a036ec44f58fa12d6c45

SHA3-256 and Keccak-256 differ even though both are 256-bit Keccak. FIPS 202 changed one padding byte before publishing the standard, and Ethereum had already adopted the original version.

SHA-3 sizes compared

AlgorithmOutputHex lengthInput per block
SHA3-224224 bits56144 bytes
SHA3-256256 bits64136 bytes
SHA3-384384 bits96104 bytes
SHA3-512512 bits12872 bytes
Keccak-256256 bits64136 bytes

Limitations

  • The SHAKE128 and SHAKE256 functions from FIPS 202, which give output of any length, are not included.
  • An Ethereum address uses Keccak-256 of the public key bytes, not of text. Hashing a typed hex string here gives the hash of those characters, not of the bytes they spell.
  • The first SHA-3 or Keccak hash on a page takes a moment while the WebAssembly hasher loads.
  • Input is text from the box. Command line tools such as openssl dgst -sha3-256 cover files.

Frequently asked questions

Is SHA-3 better than SHA-256?

Neither has a known weakness. SHA-3 is a different design, so it stays safe if a flaw is ever found in SHA-2. SHA-256 is faster in most software and far more widely supported.

Is Keccak-256 the same as SHA3-256?

No. They share the algorithm but use a different padding byte, so the same input gives different hashes. Ethereum and Solidity's keccak256 use Keccak-256.

Which SHA-3 size should I pick?

SHA3-256 for general checksums and IDs. Choose a larger size only when a standard or a partner system asks for it.

Often used together with SHA-3 Generator.

  • SHA-256 Generator

    SHA-256 hash of text in hex or Base64, compared with a checksum when you paste one.

  • Hash Generator

    Hashes text with ten algorithms and compares the result with an expected hash.