Paste text on the left, pick an algorithm — MD5, SHA-1, SHA-256/384/512, SHA3-256/512, Keccak-256, or CRC32 — and click Hash to compute the digest as a lowercase hexadecimal string. You can also drag a file onto the input (or click Hash file…) to compute its checksum. Text is hashed as UTF-8, and everything runs locally in your browser — nothing is uploaded.
No. Hashing happens entirely in your browser — SHA hashes use the built-in Web Crypto API and MD5 runs in local JavaScript — so your input is never sent to a server and it works offline.
A hash function maps any input to a fixed-size value (the digest). The same input always produces the same hash, and even a tiny change to the input produces a completely different hash. Hashes are used for checksums, deduplication, and verifying integrity.
Use SHA-256 for general-purpose integrity and security — it's the modern default, with SHA-3 as a newer alternative built on a different design. Keccak-256 is the variant used by Ethereum and other web3 tooling. CRC32 is a fast non-cryptographic checksum for detecting accidental data corruption. MD5 and SHA-1 are still common for checksums and legacy systems but are cryptographically broken, so don't rely on them for security.
Yes — drag a file onto the input area or click Hash file…. The file is read and hashed locally; it is never uploaded. Native SHA algorithms handle files up to 1 GB; MD5 and CRC32 up to 200 MB; the SHA-3/Keccak family up to 20 MB (they run in JavaScript and are slower).
No. Hashing is one-way — you can't recover the original input from the digest. Anyone claiming to "decrypt" a hash is really just looking it up in a table of precomputed hashes of common inputs.