chain
?
Hash Identifier
⌃⏎ run · clear · / focus input
Identified as
send output to
no matches
Result appears here as you type
runs in your browser · nothing uploaded
// about this tool

Hash Identifier Online

Updated 2026-08-01

Paste a hash and this tells you what produced it — MD5, SHA-1, SHA-256, SHA-512, bcrypt, Argon2 and more — by reading its length, character set and any format prefix. It understands the sha256: form used for Docker and OCI image digests, and the $2y$/$argon2id$ modular-crypt formats that password hashes use.

It will not reverse a hash, because a hash cannot be reversed: the input is not stored in the output. What it does is answer the question you usually actually have when a bare digest turns up in a lockfile, a CI log or a database column — what is this, and where did it come from? Where a length is genuinely ambiguous, every plausible algorithm is listed rather than guessing one.

// how to use

  1. 1 Paste the hash — a bare digest, or one with an `algo:` prefix like `sha256:8cbdea5f…`.
  2. 2 The identifier reads its length and format and names the algorithm that produced it.
  3. 3 Where a length is ambiguous (32 hex is MD5, NTLM or MD4), every plausible candidate is listed.

// examples

A Docker image digest
Input
sha256:8cbdea5f3e3073f6952af2b00fa7447a92cf67b628682a72729641eb7b6a1ec3
Output
SHA-256 — 64 hex characters, 256-bit
A bare 32-character digest
Input
c614b34a5a07e330f1bd160cffbed477
Output
MD5 — 32 hex characters, 128-bit (also possible: NTLM, MD4)
A password hash that names itself
Input
$2y$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy
Output
bcrypt — 60 modular-crypt characters

// common uses

Working out what a `sha256:` digest in a Dockerfile or lockfile refers to Telling an MD5 apart from an NTLM hash of the same length Checking whether a digest was truncated or partially copied Recognising a bcrypt or Argon2 password hash in a database dump

// faq

Can this reverse a hash back to the original text?
No, and nothing can. A cryptographic hash is one-way by design — the input isn't stored in the output. Sites that appear to reverse hashes are looking the digest up in a precomputed table of already-known inputs; they fail on anything not already in that table. This tool identifies what produced a digest, it doesn't undo it.
What does the `sha256:` prefix mean?
It's the OCI/Docker image-digest format. You'll see it in Dockerfiles, `docker images --digests` output, Kubernetes manifests and CI logs, where it pins an image to one exact build. The part after the colon is an ordinary SHA-256 digest in hex.
Why does one hash match several algorithms?
Identification is based on length and character set, and different algorithms can produce the same length. A 32-character hex string is 128-bit, which MD5, NTLM and MD4 all output. Nothing in the digest itself distinguishes them — only knowing where it came from does.
How is a bcrypt or Argon2 hash different?
Those are password hashes in modular-crypt format: they carry their own algorithm ID, cost parameter and salt inside the string (`$2y$10$…`). That's why they're identified exactly rather than guessed — the string states what it is.
Is my hash uploaded anywhere?
No. Identification runs entirely in your browser from the digest's own shape, so nothing you paste leaves your machine.

Use this via API

Get a free API key →
curl -X POST https://thesnaptools.com/api/v1/tools/hash-identifier \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"sha256:8cbdea5f3e3073f6952af2b00fa7447a92cf67b628682a72729641eb7b6a1ec3"}'
Esc
↑↓ navigate open Esc close