Tool Guide

Hash Generator

Generate and inspect hashes (MD5, SHA-1, SHA-256, SHA-512) entirely in your browser. This guide explains how the tool behaves, what hashing is good for, and a few important caveats so you don't accidentally use hashes where you really need encryption.

Overview

Tool

Hash Generator

The Hash Generator is a small, focused tool for computing message digests like MD5, SHA-1, SHA-256, and SHA-512. It's useful when you need to compare content, verify integrity, or debug how different libraries produce hashes — without sending any input to a server.

Common usage patterns

Guide

Quick hash compare

  • Paste or type the original text (a string, JSON, or ID).
  • Select the algorithm: MD5, SHA-1, SHA-256, or SHA-512.
  • Compute the hash and copy the hex output.
  • Compare the result with what your application, API, or external tool produced.

Guide

Verifying file or payload integrity

For files or large payloads, you often receive a published hash (e.g. on a release page or API docs). The tool can help you verify that what you have matches what was published:

  • Hash the expected content in your environment.
  • Paste the known-good hash from documentation or release notes.
  • Confirm they match exactly, including casing and length (hex output).

Guide

Hashing vs. encryption (very important)

Hash functions are one-way — they're not meant for recovering the original input. This means:

  • Hashing is good for checksums, signatures, and "did this change?" checks.
  • Hashing is not a replacement for encryption or proper password storage.
  • If you need to protect secrets, look at encryption and modern password hashing schemes (e.g. Argon2, bcrypt, scrypt) instead.

Output formats & details

Guide

Hex output

By default, the Hash Generator renders digests as lowercase hexadecimal strings, which is the most common format for hashes in logs, APIs, and documentation. For example:

  • MD5 produces a 128-bit digest → 32 hex characters (e.g. 9e107d9d372bb6826bd81d3542a419d6).
  • SHA-1 produces 160 bits → 40 hex characters.
  • SHA-256 produces 256 bits → 64 hex characters.
  • SHA-512 produces 512 bits → 128 hex characters.

Guide

Text vs. raw bytes

The tool treats your input as UTF-8 text before hashing. This is usually what you want for:

  • JSON bodies or plain text payloads.
  • IDs, tokens, configuration values.
  • Log lines or small snippets from your application.

If your protocol hashes raw binary data (e.g. file bytes, network packets), make sure you're feeding the same bytes into both your code and this tool — otherwise you'll get different hashes even if the text looks the same.

Edge cases & gotchas

Guide

Whitespace & normalization

Hash functions are sensitive to every byte — even a single space or newline will change the digest. Common pitfalls:

  • Extra newline characters when copying from terminals or logs.
  • Different line endings (\n vs. \r\n).
  • Leading or trailing spaces around values (especially in config files or environment variables).

If hashes don't match, check for invisible characters first — trim carefully, or compare byte-by-byte if needed.

Guide

MD5 / SHA-1 for security

MD5 and SHA-1 are widely considered broken for security-sensitive use cases (like signatures or password storage). They can still be acceptable for:

  • Non-adversarial integrity checks (e.g. "did this file change during download?").
  • Legacy systems where they're part of the protocol.

For anything that involves attackers or untrusted input, prefer SHA-256 or stronger algorithms plus proper HMAC / signing schemes.

How it works internally

Internals

Hashing pipeline

The Hash Generator uses browser-native primitives (like the Web Crypto API) where available, and falls back to small, well-tested implementations in other environments. At a high level:

  • Convert the input text to a UTF-8 byte array.
  • Feed the bytes into the selected hash algorithm.
  • Render the resulting digest as a hex string.

All computation happens locally in your browser. No data is sent to Birdor's servers.

Internals

Privacy & performance

Hash inputs often contain sensitive information (tokens, IDs, user data). The tool is built with that assumption:

  • No server-side logging or storage of your input.
  • No analytics attached to the content you hash.
  • For larger inputs, operations are optimized to avoid blocking the UI where possible.

Related tools & docs

Tools

When debugging protocols, it's common to use the Hash Generator alongside Base64 and JSON tools to check "encode → hash → compare" flows end to end.