Hash Generator
Generate MD5, SHA-1, SHA-256 and SHA-512 hashes from text or files, all at once. Free, fast, and your files never leave your device.
Four algorithms, computed together
Paste text or choose a file and the tool returns MD5, SHA-1, SHA-256 and SHA-512 side by side, each with its own copy button. You do not pick an algorithm first, because when you are matching a published checksum you often do not know which one the publisher used until you look at the length of the string they gave you. Having all four on screen removes that step.
SHA-1, SHA-256 and SHA-512 are calculated by the browser's built in Web Crypto API, which is the same audited implementation the browser uses for its own cryptography. MD5 is not offered by Web Crypto, precisely because it is considered broken, so this page includes a compact implementation of the RFC 1321 algorithm in JavaScript to fill the gap. Text mode encodes what you type as UTF-8 before hashing, and file mode reads the file into memory, so the bytes hashed are exactly the bytes on disk. Nothing is uploaded in either mode, and the status line reports how many bytes were processed so you can confirm the right file was read.
What a hash is for
A hash is a fixed length fingerprint of some data. Change one byte anywhere in the input and the output changes completely. That single property is what makes hashes useful, and the uses fall into a few groups.
Integrity checking is the most common: a publisher states the hash of a file, you compute the hash of the copy you downloaded, and if the two strings match, your copy is byte for byte identical to theirs. Deduplication is second: hashing a large set of files and comparing the digests finds exact duplicates far faster than comparing file contents. Change detection is third: storing the hash of a configuration file or a document tells you later whether anything was altered, without keeping a copy. Hashes also serve as cache keys and as short identifiers for content in version control systems.
Two things a hash is not. It is not encryption, because there is no key and no way to turn a digest back into the original data. And it is not a password storage method on its own, which is the next section.
Why MD5 and SHA-1 are not security tools
A cryptographic hash is supposed to make it infeasible to find two different inputs with the same output. That property is called collision resistance, and both MD5 and SHA-1 have lost it. Practical MD5 collisions have been demonstrated for many years and can now be produced very cheaply. SHA-1 fell publicly in 2017, when researchers produced two different PDF files with the same SHA-1 digest, and the attack was extended to chosen prefix collisions in 2019.
The consequence is specific rather than general. It means you must not rely on MD5 or SHA-1 where an attacker could benefit from crafting a second file that matches a known digest: signing, certificates, verifying downloads against a hostile network, or proving a document has not been substituted. It does not mean the digests are useless. MD5 remains a perfectly reasonable way to find duplicate photos on your own drive or to check that a copy across a flaky USB cable did not corrupt, because there is no adversary in either scenario. Use SHA-256 whenever the answer matters to someone other than you.
Passwords are a separate matter again. None of these four algorithms should be used to store passwords, even SHA-512. They are designed to be fast, which is the opposite of what password storage needs. Purpose built password hashes such as bcrypt, scrypt and Argon2 are deliberately slow and salted, and that is what a login system should be using.
A worked example you can check right now
Type the three letters abc into the text box, with no trailing space or newline, and press generate. The results should read exactly as follows. MD5 gives 900150983cd24fb0d6963f7d28e17f72. SHA-1 gives a9993e364706816aba3e25717850c26c9cd0d89d. SHA-256 gives ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. These are the standard published test vectors for those algorithms, so if you see them, the tool is behaving correctly and you have a quick way to verify any other hashing tool as well.
Now add a single full stop so the input reads abc. and generate again. Every digest is entirely different, with no resemblance to the previous set. That is the avalanche effect, and it is why a matching hash is strong evidence of an identical file while a mismatched hash tells you nothing about how large the difference was.
Verifying a download, step by step
Download the file, then find the checksum the publisher provides. It is usually on the same page as the download link or in a small file named something like SHA256SUMS. Switch this tool to File mode, select the downloaded file, and press generate. Compare the publisher's string with the matching row here.
A few details save time. Comparison is case insensitive, since hex digests are written in upper or lower case interchangeably, so ignore the difference. Ignore surrounding whitespace and any filename printed after the hash. Check the first six and last six characters carefully rather than skimming the middle, or paste both into a text comparison tool. If the hash does not match, download again before assuming anything is wrong, because a truncated download is a far more common cause than tampering. And remember where the checksum came from: a hash published on the same page that an attacker could have modified proves only that your copy matches whatever that page claims.
Related tools
If you only need one algorithm, the single purpose pages are lighter: MD5 Hash Generator, SHA-256 Hash Generator and SHA-512 Hash Generator. For related jobs, Base64 Encode and Decode handles reversible encoding rather than one way hashing, and Password Strength Checker is the right place to look if passwords are what brought you here.
Questions about hashing
Which hash should I use to verify a download?
Whichever one the publisher lists, which for modern software is almost always SHA-256. Compute it in File mode and compare the two strings, ignoring case and any filename printed alongside.
Is MD5 safe to use?
Not for anything security related, because collisions can be produced cheaply. It is still fine for non adversarial jobs such as spotting duplicate files or checking a copy completed intact.
Can a hash be reversed to get my data back?
No. Hashing discards information and there is no key, so the original input cannot be recovered. Short or common inputs can sometimes be guessed by looking them up in precomputed tables, which is a different thing from reversing the maths.
Should I hash passwords with SHA-256?
No. These algorithms are built for speed, which helps an attacker guessing at scale. Password storage needs a slow, salted algorithm such as bcrypt, scrypt or Argon2.
Is my file or text sent anywhere?
No. Hashing runs entirely in your browser, using the Web Crypto API for the SHA family and an inline implementation for MD5, so the data never leaves your device.
How large a file can I hash?
The file is read into memory, so the practical limit is the memory available to your browser. Everyday documents, archives and installers are fine, while very large files are better handled by a command line tool on the same device.