Security Tools

Hash Generator

Hash text or files with MD5, SHA-1, SHA-224, SHA-256, SHA-384 and SHA-512 side by side, and paste a published checksum to find out which algorithm matches your download.

Private by design: anything you enter is processed in your browser only. It is never uploaded to or logged on our servers. Files are hashed locally and never uploaded. Share links contain only typed text, never file contents.

0 bytes (UTF-8). Line breaks and trailing spaces are part of the input and change the hash.
Hashes

About cryptographic hash functions

A hash function turns input of any length into a fixed-length fingerprint called a digest. The same input always produces the same digest, and changing even a single byte produces a completely different one. That makes hashes ideal for checking that a download was not corrupted or tampered with, detecting duplicate files, building cache keys and signing data.

MD5 (128-bit) and SHA-1 (160-bit) are fast and still widely published as checksums, but both are broken for security purposes: practical collision attacks exist, so they must not be used for signatures or certificates. SHA-224, SHA-256, SHA-384 and SHA-512 belong to the SHA-2 family and are the current standard for integrity checks, TLS, code signing and blockchains.

To verify a file checksum, open the File tab, drop the file, and paste the checksum published by the vendor into the Compare field. The tool tells you which algorithm matches, comparing hex case-insensitively and also accepting Base64 digests such as those used in Subresource Integrity attributes.

Plain hashes are not suitable for storing passwords because they are designed to be fast, which helps attackers guess at billions of attempts per second. Use a slow, salted algorithm such as bcrypt (try the bcrypt generator), scrypt or Argon2 instead, and use the HMAC generator when you need to authenticate a message or webhook with a secret key. All hashing here runs locally using the Web Crypto API, SparkMD5 and js-sha256 (for SHA-224); no data is uploaded.

Reference Guide

Supported algorithms:

AlgorithmBitsHex charsBase64 charsStatusTypical uses
MD5 128 32 24 Broken Non-security checksums, cache keys, deduplication
SHA-1 160 40 28 Broken Git object IDs, legacy checksums
SHA-224 224 56 40 Secure Specifications that require it, space-constrained protocols
SHA-256 256 64 44 Secure File checksums, TLS certificates, code signing, Docker digests
SHA-384 384 96 64 Secure Subresource Integrity, TLS cipher suites
SHA-512 512 128 88 Secure Linux download checksums, Ed25519, sha512crypt

Command-line equivalents (shown for SHA-256; swap in the algorithm you need):

TaskCommandOther algorithms
Linuxsha256sum file.isomd5sum, sha1sum, sha224sum, sha384sum, sha512sum
macOSshasum -a 256 file.iso-a 1, 224, 384, 512; md5 file.iso
Windows PowerShellGet-FileHash -Algorithm SHA256 file.isoMD5, SHA1, SHA384, SHA512 (no SHA-224)
Windows cmdcertutil -hashfile file.iso SHA256MD5, SHA1, SHA384, SHA512
OpenSSL (any OS)openssl dgst -sha256 file.iso-md5, -sha1, -sha224, -sha384, -sha512
Verify a checksum listsha256sum -c SHA256SUMSSame -c flag for the other *sum tools
Hash a stringprintf '%s' 'Hello, World!' | sha256sumecho without -n adds a newline and changes the hash
SRI valueopenssl dgst -sha384 -binary app.js | openssl base64 -APrefix the result with sha384-

As a Subresource Integrity attribute, the SHA-384 of the sample is written integrity="sha384-VIXMmzNltDBd+06DN+ClmKV0+CQr8XKJ4N1sIKPNRKCJ3harSrMI9j5EsRcOtfUV" (Base64, not hex). Git object IDs are SHA-1 too, but git hash-object file differs from sha1sum file because Git hashes a blob <size> header before the content.

Digests of the sample text Hello, World! (13 bytes, no trailing newline):

MD565a8e27d8879283831b664bd8b7f0ad4
SHA-10a0a9f2a6772942557ab5355d76af442f8f65e01
SHA-22472a23dfa411ba6fde01dbfabf3b00a709c93ebf273dc29e2d8b261ff
SHA-256dffd6021bb2bd5b0af676290809ec3a53191dd81c7f70a4b28688a362182986f
SHA-3845485cc9b3365b4305dfb4e8337e0a598a574f8242bf17289e0dd6c20a3cd44a089de16ab4ab308f63e44b1170eb5f515
SHA-512374d794a95cdcfd8b35993185fef9ba368f160d8daf432d08ba9f1ed1e5abe6cc69291e0fa2fe0006a52570ef18c19def4e617c33ce52ef0a6e5fbe318cb0387

Example input

Hello, World!

This sample loads automatically when you open the tool. Use Load Sample to bring it back.

Frequently Asked Questions

Use SHA-256 or SHA-512 for integrity checks and signatures. MD5 and SHA-1 are broken for security purposes and should only be used for legacy checksums. For passwords use a slow hash such as bcrypt instead.

No. Cryptographic hashes are one-way functions. Short or common inputs can still be guessed with lookup tables, which is why passwords need salted, slow hashing.

Open the File tab, choose the downloaded file and paste the checksum published by the vendor into the compare box. The tool highlights the algorithm that matches.

No. Hashing runs locally in your browser and nothing is sent to a server.