1. Home
  2. Developer tools
  3. SHA-3 and Keccak Hash Generator

SHA-3 and Keccak Hash Generator

All the Keccak-family hashes in one page, including the Ethereum variant, whose output differs from the standard SHA-3.

Free, no sign-up. Runs in your browser: nothing is uploaded.

How to use SHA-3 and Keccak Hash Generator

  1. Enter text or hex, or open a file.
  2. Read every hash.
  3. Copy the one you need.

Features

  • SHA3-224, SHA3-256, SHA3-384 and SHA3-512
  • Keccak-224 to Keccak-512 with original padding
  • SHAKE128 and SHAKE256 with length up to 4096 bytes
  • RIPEMD-160 for Bitcoin-style hashing
  • Hex, upper-case or Base64
  • Runs locally

Supported formats

Input

  • Any file (read in your browser)
  • Text
  • Hex bytes

You get

  • Hex or Base64 digest

Private by design

Everything you enter is processed by your browser on this device. Nothing is sent to openWorkstand or anyone else, so the SHA-3 and Keccak Hash Generator is safe for private and work data. After you have used it once while online, it also works without an internet connection. How local processing works

Good to know

  • Keccak-256 (Ethereum) and SHA3-256 give different results by design.
  • These hashes are not suitable for storing passwords.

Guide

SHA-3, Keccak-256, SHAKE and RIPEMD-160 side by side

When NIST ran a public competition to find a backup for SHA-2, the winner in 2012 was Keccak, a design built on a completely different principle called a sponge. It became the SHA-3 standard in FIPS 202 in 2015. Along the way the standard changed the padding rule slightly, and that detail splits the world in two: software that follows FIPS 202 and software, notably Ethereum, that adopted Keccak before the change. This page shows both families, and a few relatives, for the same input.

Why the results differ

A sponge absorbs input into a large internal state and then squeezes output out. The only difference between Keccak-256 and SHA3-256 is the domain separation bits appended before padding: FIPS 202 adds 01 for the SHA-3 hashes, and the original submission added none. That one change gives completely unrelated digests for identical input. Use SHA3 when a specification says SHA-3 and Keccak when it says Keccak-256, as Ethereum and Solidity do.

A worked example

Press Sample to hash the text abc and compare with the reference values. SHA3-224 is e642824c3f8cf24ad09234ee7d3c766fc9a3a5168d0c94ad73b46fdf. SHA3-256 is 3a985da7…1532 and SHA3-512 begins b751850b1a57168a. Keccak-256, for the same text, is 4e03657a…6c45, nothing like the SHA3-256 value. RIPEMD-160 gives 8eb208f7e05d987a9b044a8e98c6b087f15a0bfc, and SHAKE128 at 32 bytes gives 5881092dd818bf5cf8a3ddb793fbcba74097d5c526a6d35f97b83351940f2cc8.

SHAKE and variable length

SHAKE128 and SHAKE256 are extendable-output functions: you choose how many bytes you want. The output-length field above the SHAKE rows sets it, and longer requests extend the same stream, so the first 32 bytes of a 64-byte SHAKE128 output equal the 32-byte one. They are used to derive keys, to produce masks and in some signature schemes.

RIPEMD-160

RIPEMD-160 is an older European design from 1996 with a 160-bit output. It survives mainly because Bitcoin and related systems hash a public key first with SHA-256 and then with RIPEMD-160 to make a short address. It has no known practical collision attacks but a smaller margin than 256-bit hashes, so avoid it in new designs.

Output format

Switch on upper-case hex or Base64 to match the format your system expects. Input can be text, hex bytes, Base64 or a file. Text is encoded as UTF-8, so an accented letter changes the digest compared with a Latin-1 encoder.

Limits

None of these is suitable for storing passwords. SHA-256 remains secure; SHA-3 adds diversity, not urgency. The page does not offer the cSHAKE, KMAC or TupleHash variants from NIST SP 800-185.

Picking a hash in practice

For general integrity checks, SHA-256 is still the safe, widely supported choice. Choose SHA3-256 when a standard or a partner requires it, or when you want a design that does not share the construction of SHA-2. Choose Keccak-256 only to interoperate with Ethereum and Solidity code, where it is called keccak256. If you need an output of an unusual length, SHAKE is cleaner than truncating a longer digest. Whatever you choose, record the exact algorithm name next to the value, since SHA3-256 and Keccak-256 look identical in a log.

Checked against the current version of the SHA-3 and Keccak Hash Generator on .

Frequently asked questions

Which hash does Ethereum use for addresses?

Ethereum uses Keccak-256, the pre-standard version, not the NIST SHA3-256. An address is derived from the last 20 bytes of the Keccak-256 hash of the public key.

What is the difference between SHAKE128 and SHAKE256?

The number is the security level, 128 or 256 bits, which also sets the internal capacity. Both can produce output of any length; SHAKE256 is the more conservative choice and slower.

Why does Keccak-256 differ from SHA3-256?

NIST changed the padding bits when it standardised SHA-3. Ethereum uses the earlier Keccak submission, so the same input gives different hashes.

Is SHA-3 better than SHA-256?

It is a different design, not an upgrade. SHA-256 is not broken; SHA-3 offers a second family with a different structure, useful if one design is ever weakened.

Keep working with the result

openWorkstand also includes a free workspace with documents, spreadsheets, tasks, projects and a calendar that save to a folder on your computer.