Hash Identifier

Paste a hash or digest and find out which algorithm likely produced it.

Likely hash schemes

About this tool

The Hash Identifier inspects a hash string and tells you which algorithm or password-hashing scheme most likely produced it. Recognition is purely structural — the tool never tries to crack or reverse the hash, it only classifies the format.

How it works

Why a hash can have several answers

Many cryptographic hashes share the same output size, so a bare digest is genuinely ambiguous — you cannot tell a 256-bit SHA-256 from a SHA3-256 or a BLAKE2s-256 by looking at it alone. That is why the tool lists every match instead of guessing one, and labels each with a confidence level.

Privacy

Everything runs locally in your browser via WebAssembly. The hash you paste is never uploaded to a server.

FAQ

Why do I get several candidates for one hash?

Because many algorithms share an output size, a bare digest is genuinely ambiguous — a 64-char hex string could be SHA-256, SHA3-256, or BLAKE2s-256. The tool lists every structural match ordered by how common it is, and tags each with a high / medium / low confidence: prefixed formats like $2b$ (bcrypt) or $argon2id$ are high confidence, bare hex/base64 digests are low.

Does it tell me the hashcat mode to use?

Yes — when a candidate maps to a single Hashcat -m mode number (e.g. bcrypt = 3200, NetNTLMv2 = 5600) it is included with the match, so you can go straight from identification to a cracking or auditing command. Grouped ambiguous candidates that span multiple modes don't carry a number.

Can this tool crack or reverse the hash?

No. Recognition is purely structural: it looks at prefixes, length, and character set to classify the format. It never attempts to recover the original password or plaintext, and since it runs entirely in your browser the hash is never sent anywhere.

What happens if my string isn't a known hash format?

You get an explicit "no match" result (and an error for empty input) rather than a bad guess. Common causes: extra whitespace, a truncated digest, or an encoded wrapper (e.g. hex wrapped in base64) — try trimming or decoding one layer first.

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool hash-identifier '$2b$12$R9h/cIPz0gi.URNNX3kh2OPST9/PgBkqquzi.Ss7KIUgO2t0jWMUW'

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/hash-identifier/?input=%242b%2412%24R9h%2FcIPz0gi.URNNX3kh2OPST9%2FPgBkqquzi.Ss7KIUgO2t0jWMUW

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.