Hash Generator
Generate MD5, SHA1, SHA256, and SHA512 hashes of your text.
This tool runs entirely in your browser. Your data is never uploaded, never stored, and never leaves your device.
This tool computes cryptographic hashes — a fixed-length one-way fingerprint of your input — for checksums, integrity checks and comparing values without storing them in plain text.
How to use it
- 1Paste or type the text you want to hash.
- 2Read the hash for each algorithm shown.
- 3Copy the one you need.
Example
- Input
- abc
- Output
- ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
That is the SHA-256 of "abc" — the same input always produces the same hash.
What happens to your data
This tool runs entirely in your browser. Your input is never uploaded to a server, never stored, and never logged. Hashing is done by the crypto-js library bundled into this page, not by the browser's Web Crypto API.
Last updated August 2026
Generate cryptographic hashes (such as SHA-256) from any text. A hash is a fixed-length fingerprint of your input: the same input always produces the same hash, but you cannot reverse a hash back to the original. This tool computes hashes instantly for checksums, integrity checks, and comparisons.
Paste text and get its hash — useful for verifying data hasn't changed, comparing values without storing them in plain text, or generating deterministic identifiers.
Decide first whether you are hashing text or hashing a file. A checksum published beside a download describes the file's exact bytes, so pasting the contents of that file into a text box will not reproduce it — a file has to be read as a file, which is what the file hash tool is for. Text hashing answers a different question: whether two strings are identical, or what fingerprint a given string has.
The mistake that wastes the most time is invisible characters. A trailing newline, a stray space, a curly apostrophe your word processor substituted — each changes the input, so each changes every digit of the result.
How it works
Toolvore computes hashes in your browser with the crypto-js library bundled into the page. Your input is never uploaded, which matters when you are hashing anything sensitive. All four digests — MD5, SHA-1, SHA-256 and SHA-512 — are computed together on every keystroke and shown at once, so there is no algorithm to choose; you copy the row you need. Your text is read as UTF-8 and the output is lowercase hexadecimal, 32 characters for MD5 through 128 for SHA-512, which is what most command-line tools print. Nothing is trimmed on the way in. Clear the box and the fields go blank rather than showing the hash of an empty string, and each Copy button is disabled until its row has a value.
Common use cases
- Verifying file or message integrity via checksums
- Comparing whether two pieces of content are identical
- Generating deterministic keys or cache identifiers
- Learning and testing how hashing behaves for different inputs
- Identifying which algorithm produced a digest from its length
Frequently asked questions
Can a hash be reversed to the original text?+
No. Cryptographic hashes are one-way functions. You can only verify by hashing a candidate input and comparing.
Is hashing the same as encryption?+
No. Encryption is reversible with a key; hashing is not reversible at all.
Does my input leave my device?+
No — hashing happens locally in your browser on Toolvore.
Is MD5 still safe to use?+
Not for anything where someone might be trying to deceive you. Collisions — two different inputs that produce the same digest — have been demonstrated for MD5 since 2004 and for SHA-1 since 2017, so neither can any longer prove that a file or a message has not been swapped. Both remain useful where nobody is attacking you: deduplicating your own files, building a cache key, spotting an accidental change. Where the digest is standing in for trust rather than tidiness, take the SHA-256 or SHA-512 row instead.
Is SHA-256 good enough for storing passwords?+
No, and the reason is speed. A general-purpose hash is built to be fast, which is exactly what an attacker holding a stolen database wants: a graphics card can work through candidate passwords at a rate no human typing at a login form could approach, so every account with a common password falls at once. Password storage needs a function designed to be slow and memory-hungry — bcrypt, scrypt or Argon2 — with a unique random salt per user, so that two people who chose the same password do not end up with the same stored value. Hashing a password here shows you its digest; it does not make it safe to store.
Does hashing an email address make it anonymous?+
Not in the way people hope, and data-protection regulators generally treat it as pseudonymisation rather than anonymisation. The trouble is the size of the input space: email addresses, phone numbers and postcodes come from a finite and guessable set, so anyone holding a list of candidates can hash every one and match the digests against yours. One-wayness protects a value with a lot of unpredictability behind it, not one that can be enumerated. Making a digest resist that takes a secret key or a per-record salt the other party does not hold — which a plain hash of the raw address is not.
Why does changing one character change the whole hash?+
That is deliberate, and it has a name: the avalanche effect. A cryptographic hash is designed so that altering a single bit of the input changes about half the output bits, with no visible relationship between the two results. It is what stops an attacker from steering the output — crafting a near-miss that slips past a comparison, or nudging an input towards a target digest. The practical consequence catches people out — a digest tells you whether two inputs match and never how close they are, so a document with one typo corrected and an unrelated document both look equally different. When you want to know what changed, compare the texts.
Why do two tools give different hashes for the same text?+
Nearly always because they are not hashing the same bytes. A trailing newline is the usual culprit: a text file almost always ends with one and a text box usually does not, and one extra byte changes the digest completely. After that come line endings, since a file written on Windows carries a carriage return before every newline, and character encoding, where the same visible text as UTF-8 and as UTF-16 is two different byte sequences. If a checksum will not match, compare the byte counts before suspecting the hash.
How do I check a download against the checksum on the page?+
Hash the file itself, not a description of it, which means using the file hash tool rather than this one — pasting a file's contents into a text box will not reproduce its checksum. Then compare the two strings character by character, or paste both somewhere they can be diffed, because eyes are unreliable on 64 hexadecimal characters and the interesting failures differ in the middle. A mismatch means the file is not the one that was published: a truncated download, the wrong version, or something worse.
Used in these workflows
Related tools
UUID Generator
Generate one or many random UUID v4 identifiers.
Password Generator
Generate strong, random passwords with custom rules.
Morse Code Translator
Convert text to Morse code and back, with audio playback.
Caesar Cipher / ROT13
Encrypt or decrypt text with a shift cipher, including ROT13.