FormatterHQ

Hash & Cryptography

Generate MD5, SHA-1, SHA-2, SHA-3, BLAKE, CRC and other hashes and checksums, compute HMACs, create and verify bcrypt hashes and generate strong passwords.

Adler-32 Hash Generator Generate the Adler-32 hash of any text or file online. Instant 32-bit checksum in hex, computed in your browser. Argon2 Hash Generator Hash and verify passwords with Argon2id, Argon2i or Argon2d using custom memory, iterations and parallelism. Runs locally via WebAssembly. ASN.1 Decoder Parse DER/BER ASN.1 structures from PEM, Base64 or hex into a readable tree with OID names, strings, times and integers. Bcrypt Hash Checker Check whether a password matches a bcrypt hash, like PHP password_verify, entirely in your browser. Bcrypt Hash Generator Generate a bcrypt password hash ($2y$) with a configurable cost factor, compatible with PHP password_hash and Laravel. BLAKE2b Hash Generator Generate BLAKE2b hashes (128–512 bits) with optional keyed MAC mode, from text or files. BLAKE2s Hash Generator Generate BLAKE2s hashes (128–256 bits), the 32-bit-optimised BLAKE2 variant, with optional key. BLAKE3 Hash Generator Generate BLAKE3 hashes from text or files — the fast, parallel successor of BLAKE2. Checksum Calculator Calculate MD5, SHA-1, SHA-256, SHA-512, CRC-32 and more checksums of a file or text at once. CRC-16 Hash Generator Calculate CRC-16 checksums (ARC, MODBUS, CCITT, XMODEM, KERMIT, X-25, USB) for text or files. CRC-32 Hash Generator Generate the CRC-32 hash of any text or file online. Instant 32-bit checksum in hex, computed in your browser. CSR Decoder Decode a PKCS#10 certificate signing request to check the subject, SANs, key size and signature before you send it to a CA. CSR Generator Generate an RSA private key and certificate signing request (CSR) with SANs in your browser — the private key never leaves your device. DER to PEM Converter Convert binary DER (.der, .cer) certificates and keys, or their hex/Base64 dump, into PEM text with the right BEGIN/END header. ECDSA & Ed25519 Key Generator Generate elliptic-curve key pairs (P-256, P-384, P-521) and Ed25519 keys as PEM or JWK for JWT signing, TLS and APIs. Encrypt & Decrypt Text Encrypt or decrypt text with AES, Triple DES, Rabbit, RC4 or Blowfish using a secret passphrase — in your browser. Hash Identifier Identify hash types from their format: MD5, SHA-1/256/512, bcrypt, Argon2, sha512crypt, NTLM, MySQL, phpass, Django and more. HMAC Generator Generate HMAC-SHA256, HMAC-SHA1, HMAC-SHA512, HMAC-MD5 and SHA-3 HMACs with a secret key, as hex or Base64. Htpasswd Generator Create .htpasswd entries for Apache and Nginx basic auth with bcrypt, APR1-MD5 or SHA-1 — one username:password per line. JWK to PEM Converter Convert JSON Web Keys or a whole JWKS (RSA, EC, OKP) into PEM public (SPKI) and private (PKCS#8) keys. JWT Encoder & Generator Create and sign JSON Web Tokens with HS256, RS256, ES256, PS256 or EdDSA using a secret or PEM key. Signing happens in your browser. JWT Verifier Verify a JWT signature with a shared secret, PEM public key, X.509 certificate or JWKS and check exp, nbf, iss and aud claims. Keccak Hash Generator Generate original Keccak-224/256/384/512 hashes, including the Keccak-256 used by Ethereum and Solidity. MD2 Hash Generator Generate the MD2 hash of any text or file online. Instant 128-bit digest in hex, computed in your browser. MD4 Hash Generator Generate the MD4 hash of any text or file online. Instant 128-bit digest in hex, computed in your browser. MD5 Hash Generator Generate the MD5 hash of any text or file online. Instant 128-bit digest in hex, computed in your browser. Memorable Password Generator Generate easy-to-remember passphrases from random English words, with separators, numbers and symbols. NTLM Hash Generator Generate the Windows NTLM (NT) password hash — MD4 of the UTF-16LE password — online. Password Generator Generate strong random passwords with custom length and character sets, using a cryptographically secure source. Password Strength Checker Estimate password entropy and crack time for online and offline attacks, and spot common patterns — checked privately in your browser. PBKDF2 Hash Generator Generate PBKDF2-HMAC-SHA256/512 derived keys and Django-style password hashes with your own salt and iteration count, using WebCrypto. PEM to DER Converter Convert PEM certificates, keys and CSRs to binary DER: view it as hex or Base64 or download the .der file. PEM to JWK Converter Convert PEM public keys, private keys and certificates (RSA, EC, Ed25519) to JSON Web Keys or a JWKS with a thumbprint kid. RIPEMD-160 Hash Generator Generate the RIPEMD-160 hash of any text or file online. Instant 160-bit digest in hex, computed in your browser. RSA Key Pair Generator Generate RSA 2048, 3072 or 4096-bit public/private key pairs in PEM (PKCS#8, PKCS#1) or JWK format with WebCrypto, entirely offline. Scrypt Hash Generator Derive scrypt password hashes and keys with custom N, r, p and salt; output as hex, Base64 and common encoded formats. Self-Signed Certificate Generator Create a self-signed SSL/TLS certificate and RSA key for localhost, dev servers or internal tools. Generated locally with WebCrypto. SHA-1 Hash Generator Generate the SHA-1 hash of any text or file online. Instant 160-bit digest in hex, computed in your browser. SHA-2 Hash Generator Generate SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 or SHA-512/256 hashes from text or files. SHA-224 Hash Generator Generate the SHA-224 hash of any text or file online. Instant 224-bit digest in hex, computed in your browser. SHA-256 Hash Generator Generate the SHA-256 hash of any text or file online. Instant 256-bit digest in hex, computed in your browser. SHA-384 Hash Generator Generate the SHA-384 hash of any text or file online. Instant 384-bit digest in hex, computed in your browser. SHA-512 Hash Generator Generate the SHA-512 hash of any text or file online. Instant 512-bit digest in hex, computed in your browser. SHA-512/224 Hash Generator Generate the SHA-512/224 hash of any text or file online. Instant 224-bit digest in hex, computed in your browser. SHA-512/256 Hash Generator Generate the SHA-512/256 hash of any text or file online. Instant 256-bit digest in hex, computed in your browser. SHA3-224 Hash Generator Generate the SHA3-224 hash of any text or file online. Instant 224-bit digest in hex, computed in your browser. SHA3-256 Hash Generator Generate the SHA3-256 hash of any text or file online. Instant 256-bit digest in hex, computed in your browser. SHA3-384 Hash Generator Generate the SHA3-384 hash of any text or file online. Instant 384-bit digest in hex, computed in your browser. SHA3-512 Hash Generator Generate the SHA3-512 hash of any text or file online. Instant 512-bit digest in hex, computed in your browser. SHAKE-128 Hash Generator Generate SHAKE-128 extendable-output (XOF) hashes of any length from text or files. SHAKE-256 Hash Generator Generate SHAKE-256 extendable-output (XOF) hashes of any length from text or files. SRI Hash Generator Generate Subresource Integrity (SRI) sha384 hashes and ready-to-paste <script> or <link> tags with integrity and crossorigin attributes. SSH Key Generator Generate OpenSSH key pairs (Ed25519, RSA, ECDSA) in id_ed25519 / id_rsa format with fingerprint — created locally, like ssh-keygen. SSL Certificate Decoder (X.509) Decode PEM or DER X.509 SSL/TLS certificates: subject, issuer, SANs, validity, key type, extensions and SHA-256 fingerprints. TOTP / 2FA Code Generator Generate live TOTP 2FA codes from a Base32 secret or otpauth:// URI, create new secrets and QR codes for authenticator apps. Whirlpool Hash Generator Generate the Whirlpool hash of any text or file online. Instant 512-bit digest in hex, computed in your browser. WordPress Password Hash Checker Check if a password matches a WordPress user_pass hash ($wp$ bcrypt, $P$ phpass or legacy MD5). WordPress Password Hash Generator Create a WordPress password hash for the wp_users table: bcrypt for WordPress 6.8+ or phpass for older versions. xxHash Generator Generate xxHash XXH32, XXH64, XXH3 and XXH128 hashes with an optional seed.

Hash functions and what they are good for

A hash function turns any input into a fixed-size fingerprint. The same input always produces the same hash, a tiny change produces a completely different one, and for cryptographic hashes it is practically impossible to find the input from the hash. Every hash generator in this category runs in your browser and shows the digest instantly, typically as hexadecimal.

Choosing a hash algorithm

PurposeGood choicesAvoid
File integrity and checksumsSHA-256, BLAKE2/BLAKE3, CRC-32 for non-adversarial error detection—
Digital signatures and certificatesSHA-256, SHA-384, SHA-512, SHA-3MD5, SHA-1
Message authenticationHMAC with SHA-256Plain hash of secret + message
Storing passwordsbcrypt, scrypt, Argon2MD5, SHA-1, plain SHA-256
Legacy compatibilityMD5, SHA-1New security designs

MD5 and SHA-1 are broken for security purposes because collisions can be created deliberately, but they remain common as non-security checksums and in legacy systems. Fast hashes such as SHA-256 are unsuitable for passwords because attackers can try billions of guesses per second; password hashing algorithms like bcrypt are deliberately slow and salted.

Tools in this category

  • SHA-2 family (SHA-224 to SHA-512/256), SHA-3, Keccak and SHAKE, RIPEMD-160, Whirlpool, BLAKE2 and BLAKE3.
  • Checksums: CRC-16, CRC-32, Adler-32 and xxHash, plus a checksum calculator for files.
  • HMAC generator for signing webhook payloads and API requests.
  • bcrypt and WordPress password hash generators and checkers for debugging login systems.
  • Symmetric encryption and decryption, and the password generator for strong random passwords.

Reading hash output

Digests are usually shown as hexadecimal: MD5 produces 32 hex characters, SHA-1 40, SHA-256 64 and SHA-512 128. Some systems print the same bytes in Base64 instead, which is shorter. Hashes are also case-insensitive when written in hex, so AB12 and ab12 are the same value. When comparing a hash with a published checksum, make sure you hashed exactly the same bytes: line endings and a trailing newline change the result completely.

Common tasks

  • Verify a download – hash the file and compare it with the checksum published by the vendor.
  • Debug webhook signatures – compute the HMAC of the raw body with the shared secret and compare it with the signature header.
  • Check a password hash – verify whether a password matches a stored bcrypt hash when a login fails.

The checksum calculator computes MD5, SHA-1, SHA-256, SHA-512, CRC-32 and more for a file or text at once, which is convenient when a vendor publishes several different checksums.

Hashing happens in your browser. Avoid entering real production passwords or secrets into any online tool, even one that works locally.

Frequently asked questions

Can a hash be decrypted?
No. Hashing is one-way; there is no key to reverse it. Weak or common inputs can be found by guessing and comparing hashes, which is why passwords need slow, salted algorithms.
Is MD5 still safe to use?
Not for security. MD5 collisions can be created deliberately, so it must not be used for signatures or passwords. It is still fine as a quick checksum against accidental corruption.
Which hash should I use for passwords?
Use a dedicated password hashing algorithm such as bcrypt, scrypt or Argon2. They are salted and intentionally slow, unlike general-purpose hashes such as SHA-256.
What is an HMAC?
An HMAC combines a secret key with a hash function to authenticate a message. Only someone with the key can produce the correct value, which is why webhooks and APIs use it for signatures.