File Hasher & Checksum Verifier

Compute the MD5, SHA-1, SHA-256, SHA-512, and BLAKE3 digests of some text, or of one or more local files, then paste an expected checksum to check a file against it. Chosen files are read and hashed via the File API.

This is generated in browser and is not sent to pah.moi servers.

About this tool3 paragraphs

A large file is hashed a chunk at a time, so a multi-gigabyte image never has to fit in the tab's memory. Files up to 8 MiB are read in one go; past that the page walks 4 MiB slices, reports progress, and hands the event loop back between chunks so the tab stays responsive. Several files can be picked at once, each getting its own table of digests.

A pasted checksum is normalised before it is compared: a BSD SHA256 (file) = <hex> line, a GNU <hex> file line and a bare digest all reduce to the same hex, and what was actually compared is shown. Its length is what names the algorithm, so a mismatch can say which digest it thought you meant. Text that is not hex, or a length no algorithm here produces, is reported as unrecognised rather than as a mismatch: calling it a mismatch would claim a comparison that never happened.

MD5 and SHA-1 are computed, and flagged. Legacy checksums are real, and a tool that refuses to produce one just sends you somewhere with no warning attached; both carry a badge saying they are broken for anything security-bearing. A digest tells you two files are the same bytes. It tells you nothing about where either came from, and a checksum is only worth as much as the place you got it from.

Use it locally This tool has a native command line twin. Build hash-cli from the site's source with:
cargo build --release --bin hash-cli
Source and licence terms