Code and data

Hash generator

Hash text or a file with MD5, SHA-1, SHA-256, SHA-384 and SHA-512. Add an HMAC key when you have one, and paste an expected checksum to see whether it matches.

Algorithms

Runs in your browser. Nothing you type or open is uploaded. Free to use, no account. More code and data tools

How to use it

  1. Type the text, or choose a file.
  2. Tick the algorithms you want, and HMAC when you have a key.
  3. Copy a hash, or paste an expected checksum to compare.

Text, files and HMAC

The text is read as UTF-8. Hex and Base64 are there for a value you already have as bytes. A trailing newline is a separate byte, and the option that adds one is off until you tick it, so “hello” stays the five characters you typed. MD5 of hello is 5d41402abc4b2a76b9719d911017c592.

A file is read in pieces in this tab, so a large file stays a stream of chunks. HMAC uses the same five algorithms with the key you type. The key stays in the form and is left out of the page link. Paste an expected hash in hex or Base64 and the page names the algorithm that matches, or tells you the size it would need.

Private by design

Privacy

Everything runs in this page and stays on your device. Text you paste stays in this tab. A file is read in this tab, in pieces. The HMAC key stays in the form and is left out of the page link.

This page also shows Google ads, which can use cookies. Privacy and cookies explains how.

Questions

Which algorithms are here?

MD5, SHA-1, SHA-256, SHA-384 and SHA-512, as a plain hash or as HMAC with a key.

How is a file hashed?

The page reads the file in pieces inside this tab and updates the progress as it goes. Stop ends the read, and you can pick the file again.

Why would a pasted checksum miss?

One changed byte, a trailing newline, or hex versus the text itself, produces a different hash. The comparison names the algorithm whose length matches the checksum you pasted.

Where does the HMAC key go?

The key stays in the form until you leave the page. It is left out of the page link and out of the saved inputs.

From the same developer