MD5, SHA-256, BLAKE3, xxHash: Which Checksum Should You Use?
TeraCopy supports a large number of checksum algorithms. Most use cases - verifying a file copy, testing a drive, checking a download - don't require strong cryptography. What matters is speed and the ability to detect accidental corruption, such as bad sectors, dropped network packets, or a failing cable. For those purposes, even a fast non-cryptographic hash is perfectly reliable.
Strong cryptographic hashing is only necessary when you need to guarantee that a file hasn't been intentionally tampered with.
Fast hashes - best for copy verification and testing
These algorithms are designed for speed. They can process files several times faster than SHA-256 while still detecting any accidental corruption with very high confidence. Use them when verifying file copies, backing up drives, or testing media.
| Algorithm | Notes |
|---|---|
| xxHash 3 (64-128) | Fastest available. Excellent for large transfers and drive testing. |
| xxHash (32-64) | Slightly slower than xxHash 3, but still very fast. |
| BLAKE3 | Fast and modern. More widely supported than xxHash outside of TeraCopy. |
| CRC32 | Extremely fast and universally supported. Good for quick checks. |
| Adler-32 | Faster than CRC32 but slightly weaker. Rarely needed today. |
Recommendation: Use xxHash 3 or BLAKE3 for copy verification and drive testing. Use MD5 or CRC32 if you need to share checksum files with other tools or people.
Cryptographic hashes - for security and distribution
Use these when you need to prove a file hasn't been tampered with - for example, verifying a downloaded installer or signing a release package.
| Algorithm | Notes |
|---|---|
| SHA-2 (256-512) | Industry standard. Use SHA-256 for most purposes. |
| SHA-3 (224-512) | Newer design, same trust level as SHA-2. Less common. |
| BLAKE2b / BLAKE2s | Fast cryptographic hash, good alternative to SHA-3. |
| Keccak (224-512) | The hash underlying SHA-3. |
| RIPEMD (128-320) | Used in some older tools and blockchain applications. |
| Streebog (256-512) | Russian national standard (GOST R 34.11-2012). |
| Whirlpool | Strong but slow. Rarely required outside specific compliance contexts. |
| Tiger / Tiger 2 | Designed for 64-bit platforms. Largely superseded by BLAKE2. |
Obsolete - avoid for new work
These algorithms have known weaknesses and should not be used for anything security-sensitive. They may still appear in legacy checksum files or older software.
| Algorithm | Notes |
|---|---|
| MD5 | Cryptographically broken, but still widely used for non-security checksums. Fine for accidental corruption detection. |
| SHA-1 | Deprecated for security use. Still common in older checksum files. |
| MD4 | Predecessor to MD5. No practical use case today. |
| MD2 | Very old and slow. No reason to use it. |
| GOST | Older Russian hash standard, superseded by Streebog. |
| Panama | Experimental design, rarely supported elsewhere. |
| RadioGatun (32-64) | Experimental predecessor to Keccak. No practical use. |
| Grindahl (256-512) | Obscure academic algorithm. |