filetity
What to hash
Text
LocalThe file is read and hashed on this device. Nothing is uploaded, which is the only way a checksum check makes sense: sending the file to a server to be verified means trusting the server you were verifying against.

TEXT OR FILE -> HASH · Local tool

Hash Generator

Generate MD5 and SHA hashes of text or a file, and check a published checksum.

Last updated

How do I check a downloaded file against its checksum?

Hash the file and compare the result to the checksum the publisher printed. filetity does this in your browser: drop the file in, and it produces MD5, SHA-1, SHA-256, SHA-384 and SHA-512 at once, then paste the published checksum and it says which one matched. Nothing is uploaded, which is the only way the check means anything, since sending the file to a server to be verified means trusting that server instead. A mismatch means the file is not the one the checksum describes, from a corrupted download or a tampered mirror, and it should be fetched again rather than opened.

  1. 01 / Your device

    the file stays here

  2. 02 / Browser memory

    the work runs locally

  3. 03 / Back to you

    saved on this device

When you would use this

Situations, not settings.

An installer downloaded from a mirror
The publisher printed a checksum for exactly this reason. Comparing it takes ten seconds and is the difference between a corrupt file and a tampered one.
Proving two files are identical
Same hash means same bytes. It settles an argument about whether a copy finished, without opening either file.
A system that demands an MD5 despite everything
Plenty of older APIs and download pages still want one. It is here, computed from RFC 1321, with what it is and is not good for stated next to it.

How it works / no cloud

A conversion engine, not an upload form.

SHA-1 through SHA-512 come from the browser's own crypto implementation, which is compiled code rather than JavaScript. MD5 is not in it, deliberately, because it is broken for anything security related, and it is also what a great many download pages still publish next to their installers. So it is implemented here from RFC 1321 and tested against that document's own seven vectors. Paste a published checksum and the page tells you which of the five it matches, ignoring the case and the filename that usually gets copied along with it.

  • Offline ready
  • Installable app
  • No file limit queue

Straight answers

No accordion. Nothing hidden.

Is it free?
Yes, with no watermark and no page limit.
Does it need an account?
No. There is no account system.
Is my file processed on my device?
Yes. The file is read by your browser and never uploaded. There is no server to send it to.
What formats are supported?
Text, or any file at all. Five hashes at once, in lowercase or uppercase hex.
What are the limits?
A file has to fit in the memory your browser will give the tab, which on a desktop is comfortably into the gigabytes.
Does it work on mobile?
Yes, on any modern mobile browser. Large files are limited by the memory the phone gives the browser.
Does it work offline?
Yes, once the page has loaded. The tool keeps working with no network connection.
Which hash should I use?
SHA-256 unless something else is asking for a specific one. MD5 and SHA-1 both have practical collision attacks, which means someone can build two different files with the same hash, so neither proves a file was not swapped deliberately. Both are still perfectly good at spotting a download that got corrupted on the way, which is what most people are doing.
How do I check a download against its checksum?
Drop the downloaded file in, then paste the checksum from the page you got it from. The matching row lights up and says which algorithm matched. If nothing matches, the file is not the one that checksum describes: download it again rather than running it.
Can a hash be turned back into the original?
No, not by reversing it, because a hash of any input is the same fixed length and the information is gone. What can be done is guessing: an attacker hashes billions of likely inputs and looks for a match, which is exactly how leaked password hashes get cracked. A hash is not encryption and a hashed password is not a safe password.
Why do I get a different hash than another tool?
Almost always the input, not the algorithm. A trailing newline changes the hash completely, and a text box that adds one gives a different answer than a file that does not. Hashing the file itself rather than its pasted contents removes the question, which is the reason the file option exists.

Keep working locally

3 available · more coming