What is a cryptographic hash?
A cryptographic hash function maps input of any size to a short fixed-length digest. Changing even one bit of input typically produces a completely different digest, which makes hashes useful for integrity checks, deduplication, and (with proper algorithms) digital signatures.
Hashes are one-way in practice: you cannot recover the original message from the digest alone. That property is distinct from encryption, which is designed to be reversible with a key.
How to use this tool
- Type or paste text to hash it as UTF-8 bytes, or drop a file (or use Choose file) to hash its exact binary contents.
- Read the MD5, SHA-1, SHA-256, and SHA-512 rows as they update automatically.
- Toggle Uppercase hex if you need capital A–F digits for documentation or vendor samples.
- Use each row's Copy button to grab a digest for tickets, build logs, or checksum files.
- Click Clear all to reset text and any selected file.
Common use cases
- Release artifacts: Publish SHA-256 or SHA-512 checksums so downloaders can verify packages were not tampered with in transit.
- Cache keys: Derive stable keys from canonical serialized content in build systems and CDNs.
- Data pipelines: Compare file versions quickly by comparing digests instead of full binary diffs.
- Debugging APIs: Confirm that the JSON body you hashed locally matches what a server logged.
Security and privacy notes
Treat public hashes as fingerprints, not secrets. If you need authenticity, combine hashing with a secret key (HMAC) or use digital signatures. Never use fast hashes alone to store user passwords.
This page uses the browser's Web Crypto API for SHA algorithms and a local MD5 implementation for compatibility. Nothing is sent to our infrastructure for hashing unless you navigate to a different tool that explicitly performs network calls.