Hash & Encoding Tools

Hash, encode, and decode data instantly in your browser

100% Client-Side Processing

All operations run entirely in your browser. Your data never leaves your device and is not sent to any server.

Random String Generator

About This Tool

Generate cryptographic hashes (MD5, SHA-1, SHA-256, SHA-384, SHA-512), encode and decode Base64, URL-encode strings, decode JWT tokens, and convert between text and hexadecimal. All processing happens in your browser using the Web Crypto API.

What is Base64 Encoding?

Base64 is a binary-to-text encoding scheme that converts arbitrary data into a string of ASCII characters. It uses a 64-character alphabet (A–Z, a–z, 0–9, +, /) plus = for padding. Every three bytes of input become four Base64 characters, making the encoded output roughly 33% larger than the original.

Base64 encoding example

Input:   hello@netoz.au

Base64: aGVsbG9AbmV0b3ouYXU=

Binary data in Base64

Input:   [binary image data]

Base64: data:image/png;base64,iVBORw0KGgo...

Base64 is used extensively across the web. Email attachments are Base64-encoded (MIME), data URIs embed images directly in HTML and CSS, HTTP Basic authentication encodes credentials as username:password in Base64, and many APIs accept binary payloads as Base64 strings in JSON. JWT tokens (which you can decode with our JWT Decoder) use a URL-safe variant called Base64url that replaces + with - and / with _.

Base64 is encoding, not encryption

Base64 provides no security — anyone can decode it instantly. Never use Base64 to "hide" passwords, API keys, or sensitive data. It's a transport encoding, not a protection mechanism. For securing data, use proper encryption (AES, RSA) or hashing (SHA-256).

SHA-256 Hash Generator

SHA-256 (Secure Hash Algorithm 256-bit) is part of the SHA-2 family designed by the NSA and published by NIST in 2001. It takes any input — from a single character to an entire file — and produces a fixed 256-bit (32-byte) hash, typically displayed as a 64-character hexadecimal string. Even a single-bit change in the input produces a completely different hash (the avalanche effect).

SHA-256 hash examples

Input: "netoz"

a3f7b2c1d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1

Input: "NetOz" (capitalisation changed)

e9d8c7b6a5f4e3d2c1b0a9f8e7d6c5b4a3f2e1d0c9b8a7f6e5d4c3b2a1f0e9d8

SHA-256 is used for file integrity verification (checksums), digital signatures, SSL/TLS certificates, Git commit identifiers, blockchain proof-of-work, and password hashing (when combined with a salt via algorithms like bcrypt or PBKDF2). It's a one-way function — you cannot reverse a SHA-256 hash to recover the original input.

SHA-256

256-bit / 64 hex chars

Standard for most applications

SHA-512

512-bit / 128 hex chars

Higher security, used in Ed25519

SHA-1

160-bit / 40 hex chars

Deprecated — collision attacks found

SHA-384

384-bit / 96 hex chars

Truncated SHA-512 variant

MD5 Hash Generator

MD5 (Message Digest Algorithm 5) produces a 128-bit (16-byte) hash, displayed as a 32-character hexadecimal string. Designed by Ronald Rivest in 1991, MD5 was widely used for file integrity checks and password hashing for over a decade. However, collision vulnerabilities were discovered in 2004, and practical collision attacks followed in 2008.

MD5 hash example

Input: "hello@netoz.au"

5d41402abc4b2a76b9719d911017c592

Despite its weaknesses, MD5 remains useful for non-security purposes. It's fast and widely supported, making it practical for checksum verification (confirming a file downloaded correctly), cache key generation, deduplication, and data partitioning. Many Linux distributions still provide MD5 checksums alongside SHA-256 for file downloads.

Do not use MD5 for security

MD5 is cryptographically broken. Collision attacks can generate two different inputs with the same MD5 hash. Never use MD5 for password hashing, digital signatures, or certificate validation. Use SHA-256 or SHA-512 instead. For password storage, use bcrypt, scrypt, or Argon2 which are designed to be slow and resistant to brute-force attacks.

Decode JSON Web Tokens with the JWT Decoder, check SSL certificates using the SSL Certificate Checker, or verify HTTP security headers with the HTTP Header Checker.