Free Online Hash Generators
Generate SHA-256, MD5, and Keccak256 hashes online. All tools run entirely in your browser -- no data is sent to any server.
Hash Generator Tools
SHA-256 Hash Generator
Generate SHA-256 hashes from text or hex input using the Web Crypto API. Compare SHA-256 with Keccak256 for Ethereum development.
MD5 Hash Generator
Generate MD5 hashes from text input online. Pure JavaScript implementation with RFC 1321 test vectors. Note: MD5 is not cryptographically secure.
Keccak256 Hash Generator
Generate Keccak256 hashes from text input. The hash function used by Ethereum and Solidity.
Batch Keccak256 Hasher
Hash multiple inputs at once with Keccak256. Get hashes and function selectors for multiple function signatures, storage keys, or arbitrary text.
Understanding Hash Functions
SHA-256
SHA-256 (Secure Hash Algorithm 256-bit) is a member of the SHA-2 family designed by the NSA. It produces a 256-bit (32-byte) hash and is used in Bitcoin mining, TLS certificates, digital signatures, and data integrity verification. SHA-256 is considered cryptographically secure with no known practical attacks.
MD5
MD5 (Message-Digest Algorithm 5) produces a 128-bit (16-byte) hash. While fast, MD5 is cryptographically broken and vulnerable to collision attacks. It remains useful for non-security purposes such as file checksums, cache invalidation, and deduplication where collision resistance is not critical.
Keccak256
Keccak256 is the hash function used throughout Ethereum. It derives addresses from public keys, computes function selectors (first 4 bytes of the hash), generates event topic IDs, and calculates storage slots for mappings. If you are building on Ethereum or any EVM chain, Keccak256 is essential.
Batch Keccak256
Batch Keccak256 lets you hash multiple inputs at once. Paste a list of function signatures to get all selectors, or hash multiple addresses for a whitelist Merkle tree. This saves time when working with many values compared to hashing them one by one.
Related Hashing Tools
These tools also use cryptographic hashing under the hood for Ethereum development workflows.
Solidity Event Hash Calculator
Calculate keccak256 hashes for Solidity event signatures. Get topic 0 values for filtering Ethereum logs.
Function Selector Lookup
Calculate Solidity function selectors from signatures using keccak256. Browse a table of 30+ common ERC-20, ERC-721, and Ownable selectors.
EIP-712 Typed Data Hasher
Hash EIP-712 typed structured data online. Compute domain separator, struct hash, and final signing hash for permits and gasless transactions.
Merkle Proof Generator
Generate and verify Merkle proofs for whitelists and allowlists. Build Merkle trees with keccak256 hashing.
Frequently Asked Questions
What is a hash function?
A hash function takes an input of any size and produces a fixed-size output called a hash or digest. The same input always produces the same hash, but even a tiny change in the input produces a completely different hash. Hash functions are one-way: you cannot reverse a hash to get the original input.
What is the difference between SHA-256 and Keccak256?
Both are cryptographic hash functions that produce 256-bit outputs. SHA-256 is part of the SHA-2 family standardized by NIST and is used in Bitcoin and TLS. Keccak256 is the version of SHA-3 used by Ethereum for address derivation, function selectors, event topics, and storage slot calculations. They use different internal algorithms and produce different outputs for the same input.
Is MD5 secure?
No. MD5 is cryptographically broken and should not be used for security purposes like password hashing or digital signatures. Collision attacks can generate two different inputs that produce the same MD5 hash. MD5 is still commonly used for non-security purposes like checksums and cache keys.
Why does Ethereum use Keccak256 instead of SHA-256?
Ethereum uses Keccak256 because it was selected during Ethereum's design phase as a more modern alternative to SHA-256. Keccak won the SHA-3 competition, though the final NIST SHA-3 standard has slightly different padding than the Keccak256 used by Ethereum. Keccak256 is used for address derivation, function selectors (first 4 bytes), event topics, and storage slot computation.
What is batch hashing?
Batch hashing lets you hash multiple inputs at once instead of one at a time. This is useful when you need to compute function selectors for many Solidity functions, generate hashes for a whitelist, or compute multiple storage keys simultaneously.
What is a Merkle proof?
A Merkle proof is a cryptographic proof that a specific piece of data is included in a Merkle tree without revealing the entire dataset. Merkle proofs are used in Ethereum for whitelists, airdrops, and state verification. They consist of sibling hashes along the path from a leaf to the root of the tree.