File Checksum Verifier
Compute a file's SHA-256, SHA-512, or SHA-1 checksum right in your browser and compare it against the hash published by the developer — confirm your download arrived intact and unmodified, with nothing ever uploaded.
220 views
Drag & drop a file here, or click to choose
Computing…
Could not read the file.
Why Software Publishers Publish Checksums
When you download a Linux ISO, an open-source binary, or a signed installer, the download page usually lists a checksum next to the file — a short string like a94a8fe5ccb19ba61c4c0873d391e987982fbbd. That string is the output of a cryptographic hash function run over every single byte of the file. Change even one bit anywhere in the file and the hash comes out completely different. Publishers list it so that after you download the file, you can run the same hash function yourself and compare your result against the one they published. If the two strings match exactly, you can be confident the copy sitting on your disk contains precisely the same bytes the publisher built and uploaded — nothing added, nothing missing, nothing altered.
A checksum catches two very different kinds of problems. The first is mundane: network connections drop mid-transfer, proxies truncate large files, and disks occasionally write bad sectors — any of these can leave you with a file that looks complete (right size, opens without an obvious error) but differs from the original by a handful of corrupted bytes, which is often enough to crash an installer or silently corrupt data later. The second is adversarial: if an attacker compromises a mirror server or intercepts a download in transit and swaps in a modified binary bundled with malware, comparing the checksum against the value published on the official, trusted page is one of the few checks that would actually catch it — a file name and file size are trivial to fake, but reproducing an exact hash requires possessing the exact original bytes.
Checksums Are Not Encryption
It is worth being precise about what a checksum verifies, because the terminology gets confused. Hashing is a one-way, irreversible operation: SHA-256 turns a file into a fixed 64-character hex string, but there is no operation that turns that string back into the file. That alone tells you this is not encryption — encryption is designed to be reversible with the right key, hashing is designed never to be reversible at all. A checksum verifies integrity, not confidentiality: it confirms the bytes you have are the bytes that were hashed. Anyone with access to the file can still read every byte of it in plain sight; hashing does nothing to hide the content. What it guarantees is that if a single byte were changed — deliberately or by accident — the hash you compute would no longer match the one published, and you would know immediately that something is different.
This distinction matters for algorithm choice too. SHA-1 was formally broken for cryptographic security in 2017, when researchers at Google and CWI Amsterdam published the "SHAttered" attack: two different PDF files engineered to produce the identical SHA-1 hash, proving a sufficiently motivated attacker could construct a malicious file that shares a checksum with a legitimate one. That result retired SHA-1 for anything security-critical — TLS certificates, digital signatures, defending against a hostile actor deliberately engineering a collision. But for the far more common case this tool addresses — confirming a download was not corrupted by a flaky connection — SHA-1 still works fine in practice, because nobody is engineering your specific corrupted download to match a target hash; accidental corruption is random bit-flipping, not intentional collision construction. That said, when a publisher offers a choice, SHA-256 costs nothing extra to compute and closes the gap entirely, so it is the safer default.
Frequently Asked Questions
What exactly does a checksum verify?
A checksum is the output of running a cryptographic hash function (SHA-256, SHA-512, or SHA-1) over every byte of a file. It confirms integrity: that the file you have is byte-for-byte identical to the file that produced the published hash. It does not tell you anything about the content's meaning, safety, or origin — only that no byte has been added, removed, or changed since the hash was generated.
Why doesn't my downloaded file's hash match the one on the website?
The most common cause by far is an incomplete or corrupted download — retry it, ideally with a download manager that supports resuming. Other causes: you compared against the hash for a different version or a different file on the same page, or you accidentally included extra whitespace or characters when copying the expected hash. Re-download from the official source and re-check before assuming anything malicious happened; genuine tampering is rare but is exactly the scenario checksums exist to catch.
Is SHA-1 still safe to use for verifying downloads?
For confirming accidental corruption — a dropped connection, a bad disk sector — yes, SHA-1 still works fine in practice. For anything where a motivated attacker might deliberately engineer a malicious file to match a specific hash, no: SHA-1 was broken by the 2017 "SHAttered" collision attack from Google and CWI Amsterdam, which proved two different files can share a SHA-1 hash. When you have the choice, SHA-256 avoids the question entirely at no extra cost.
What's the difference between SHA-256 and SHA-512 for this purpose?
Both belong to the SHA-2 family and have no known practical cryptographic weaknesses. SHA-512 operates on 64-bit words internally rather than SHA-256's 32-bit words, so on 64-bit hardware it can compute at a similar or even faster speed despite producing a longer, 128-character digest. For everyday checksum verification, either is fine — use whichever one the publisher actually listed, since that is the only value you have to compare against.
Does a matching checksum prove the file is safe or prove who published it?
No. A match only proves the bytes you have are the bytes that produced a given expected hash — it says nothing about whether that expected hash itself came from a trustworthy source. If an attacker compromises the same page that lists the expected checksum, they can publish a matching hash for their own malicious file, and verification will report a match. Checksums answer "did the file arrive intact," not "was it published by whom it claims" — that second question needs a cryptographic signature (like PGP/GPG), not just a hash.
Similar Tools
Report a Problem
File Checksum Verifier
Comments
No comments yet — be the first to write one!