Generate MD5, SHA-1, SHA-256, and SHA-512 hashes from text or files. Runs entirely in your browser — nothing is sent to any server.
Fast but cryptographically broken. Fine for checksums, not for security. Collisions can be generated in seconds.
Legacy algorithm. Used by Git for commit IDs. Deprecated for security use since 2017 collision attack (SHAttered).
Industry standard. Used in TLS, Bitcoin, and code signing. No known practical attacks. Recommended for most uses.
Maximum security. Faster than SHA-256 on 64-bit systems. Used in high-security contexts and digital signatures.
Check out our full suite of free tools: IP geolocation, DNS lookup, website screenshots, domain checker, crypto prices.
No. This tool runs entirely in your browser using the Web Crypto API. Your text and files never leave your device. You can verify this by disconnecting from the internet — the tool still works.
SHA-256 is the best default choice. It's secure, widely supported, and fast. Use MD5 only for non-security checksums (e.g., checking if two files are identical). Avoid SHA-1 for security purposes.
Yes. Files are processed in chunks using the streaming Web Crypto API, so memory usage stays low even for large files. SHA-256 hashing of a 1 GB file typically takes a few seconds.
A hash function takes any input (text, file, etc.) and produces a fixed-size string of characters. The same input always produces the same hash, but even a tiny change in input produces a completely different hash. This makes hashes useful for verifying data integrity and storing passwords.
MD5 is vulnerable to collision attacks — it's possible to create two different inputs that produce the same hash. This was demonstrated in practice, making MD5 unsuitable for digital signatures, certificates, or password hashing. For non-security checksums (e.g., checking download integrity), MD5 is still fine.
Upload the file here to generate its hash, then compare it with the hash provided by the source. If they match exactly, the file hasn't been modified. Use the "Compare Hashes" section below the results to check.