Generate MD5, SHA-1, SHA-256, SHA-384, and SHA-512 hashes from text or files instantly — all processing runs in your browser, nothing is sent to any server.
All hashing runs locally in your browser using the Web Crypto API — your text and files never leave your device.
Understanding Cryptographic Hash Functions
A cryptographic hash function transforms any input — a word, a document, an entire hard drive — into a fixed-length string called a digest or hash. The same input always produces the same output, but changing even a single character produces a completely different hash. This property makes hashes invaluable for data integrity checks, digital signatures, and file verification.
Hash functions are one-way: you cannot reverse a hash to recover the original input (without brute force). This distinguishes them from encryption, which is reversible with a key.
MD5 (128-bit) and SHA-1 (160-bit) are both cryptographically broken — collision attacks have been demonstrated practically. They should never be used for security purposes. They remain acceptable only for non-security checksums where speed matters more than integrity guarantees.
SHA-256 is the current standard for general-purpose hashing — used in TLS certificates, Bitcoin, code signing, and most modern applications. SHA-512 offers a larger digest for scenarios requiring higher collision resistance.
General-purpose hash functions like SHA-256 are designed to be fast — a modern GPU can compute over 10 billion SHA-256 hashes per second. This makes them catastrophic for password storage: an attacker with a leaked database can crack common passwords in seconds.
Password hashing requires a deliberately slow function with a built-in salt. Use bcrypt, Argon2id, or scrypt for passwords — never MD5, SHA-1, or unsalted SHA-256. Our Bcrypt Hash Generator handles this correctly.
Frequently Asked Questions
d41d8cd98f00b204e9800998ecf8427e; the SHA-256 of empty is always e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855. These are well-known fixed values, which is why hashing an empty password would be insecure — anyone with the hash could immediately identify it as empty. This is one more reason to use bcrypt with its random salt for passwords.sha256sum filename (Linux/macOS) or Get-FileHash filename (Windows PowerShell).