Keccak-256 Hash Generator (Ethereum)
Compute Ethereum’s Keccak-256 hash of text or hex, get a function selector or event topic from a signature, and check or apply an EIP-55 address checksum.
This is the original Keccak used by Ethereum and Solidity’s keccak256(). The NIST SHA3-256 standard pads differently and gives other results (for the empty input, a7ffc6f8… instead of c5d24601…).
Ethereum and Solidity use Keccak-256 — the original Keccak submission to the SHA-3 competition — for function selectors, event topics, storage slots, address checksums and more. This tool hashes text or hex bytes with it, derives the 4-byte selector and the event topic from a signature such as transfer(address,uint256), and checks or applies the EIP-55 mixed-case checksum of an address. Everything runs in your browser.
How to use this tool
- Choose a hash, a signature, or an address.
- Paste the text, the hex bytes (0x…), the canonical signature or the address.
- Copy the 0x-prefixed result.
- For addresses, check that "Valid checksum" appears before sending funds.
Formula
Keccak-256(M) = Keccak[r = 1088, c = 512](M ‖ 0x01 … 0x80), output 256 bits. Selector = first 4 bytes of Keccak-256(signature); event topic = the full hash.
NIST’s SHA3-256 (FIPS 202) is the same sponge but appends 0x06 instead of 0x01, so its outputs differ. EIP-55: hash the lower-case hex address as ASCII and upper-case each letter whose matching hash nibble is 8 or more.
Example
Keccak-256 of the empty string is 0xc5d24601…5d85a470. The signature transfer(address,uint256) hashes to a value starting a9059cbb, the ERC-20 transfer selector, and Transfer(address,address,uint256) gives the topic 0xddf252ad…f523b3ef.
Frequently asked questions
Is Keccak-256 the same as SHA-3?
No. Ethereum adopted Keccak before NIST changed the padding for the final SHA-3 standard. Use this tool for Ethereum; use a SHA-3 tool for FIPS 202.
Why must the signature have no spaces or parameter names?
The selector is the hash of the exact canonical text. "transfer(address to, uint256 amount)" or uint instead of uint256 gives a different, wrong selector, so the page removes spaces and warns about the aliases.
Does a valid checksum mean the address is safe?
It only means the address was not mistyped. It says nothing about who controls it; always confirm the address with the recipient.
Sources
Last updated:
Page address with these inputs: https://kakao.mobile/tools/keccak-256-hash-generator/
Cite or embed this tool
kakaoCalc. (2026, November 8). Keccak-256 Hash Generator (Ethereum). https://kakao.mobile/tools/keccak-256-hash-generator/
“Keccak-256 Hash Generator (Ethereum).” kakaoCalc, 8 Nov. 2026, kakao.mobile/tools/keccak-256-hash-generator/.
Paste this code into your page. The widget runs in your visitors' browsers, shows no ads and keeps a link back to this page. Embedding terms