Create SHA hashes from text, or check a downloaded file against its published checksum. Files never leave your computer.
How to generate a hash
Type or paste text into the box. All four hashes update as you type.
To hash a file instead, click Choose a file and select it.
Click Copy next to the hash you need.
Checking a download with a checksum
Software sites often publish a SHA-256 checksum next to the download link. It lets you confirm the file you got is exactly the one they released and was not damaged or tampered with on the way.
Download the file.
Choose it with the file button above.
Compare the SHA-256 result with the checksum on the website. If every character matches, the file is good. Capital letters do not matter.
Hash lengths
Algorithm
Length (hex characters)
Status
SHA-1
40
Broken, use only for old checksums
SHA-256
64
Secure, most widely used
SHA-384
96
Secure
SHA-512
128
Secure
Things to watch for
Hashes are very picky. "hello" and "hello " (with a space) give totally different results, and so do Windows and Mac line endings. If your hash does not match what you expected, check for trailing spaces or a missing new line at the end of the text.
Frequently asked questions
What is a hash?
A hash is a fixed length fingerprint of some data. The same input always gives the same hash, but even a tiny change, like one extra space, gives a completely different one. You cannot turn a hash back into the original text.
Which hash should I use?
SHA-256 is the standard choice today. SHA-512 is even stronger. SHA-1 is considered broken for security purposes and should only be used to match old checksums.
Why is there no MD5 option?
Browsers do not include MD5 in their built in crypto tools because it has been broken for years. If you only need to match an old MD5 checksum, a command like md5sum on Linux or Get-FileHash on Windows will do it.
Can I hash passwords with this for my app?
No. Plain SHA hashes are too fast for storing passwords and are easy to brute force. Use a password hashing function such as bcrypt, scrypt or Argon2 in your app.
Is the file uploaded?
No. The file is read and hashed by your browser. That is why even large files work without a progress bar for uploading.