Skip to content

Keccak-224 Hash Generator

Compute the original Keccak-224 digest, which differs from SHA3-224 only in its padding byte.

Input

Keccak-224

Enter something above to see the result.

Everything is processed locally in your browser. Your data never leaves this device.

Keccak is not SHA-3

Keccak won the SHA-3 competition, but NIST changed the domain-separation padding before publishing FIPS 202 — from 0x01 to 0x06. Everything else is identical, and that one byte makes every digest different.

Ethereum had already shipped with the original padding, so `keccak256` in Solidity means Keccak-256, not SHA3-256. Hashing the same input with the wrong one is a silent failure: both give a plausible 32-byte value.

keccak256("")  = c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470
sha3-256("")   = a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a

Frequently asked questions

Which one does my library use?

If it is an Ethereum library, almost certainly the original Keccak. If it is a general crypto library and the function is called sha3_256, it is usually FIPS 202. Compare the digest of the empty string against the two values above.

Is Keccak less secure than SHA-3?

No. The padding change was about domain separation, not a weakness. Both have the same security level.

Related tools