Required properties

Current landscape

FunctionOutputStatusWhere used
MD5128Broken (collisions)Legacy checksums only — never security.
SHA-1160Broken (collisions, 2017)Old Git history; do not use for new work.
SHA-256256SecureTLS certificates, Git (new), Bitcoin, JWT.
SHA-384 / SHA-512384 / 512SecureHigher-bit security profiles; 64-bit-optimized.
SHA-3 (Keccak)224–512SecureNIST-standardized alternative; different design.
BLAKE2 / BLAKE3anySecureVery fast software hash, parallel-friendly.

Use the right tool

TaskUse
Integrity / content addressingSHA-256, BLAKE3
Digital signatures (input)SHA-256+
Message authenticationHMAC-SHA-256, BLAKE2/3 keyed
Password storageArgon2id, scrypt, bcrypt — not SHA
Key derivationHKDF-SHA-256, PBKDF2 (legacy)
Random IDUUIDv4 — not a hash at all
!

Don't store passwords with bare SHA. SHA functions are fast — modern GPUs can compute billions of SHA-256 hashes per second. Password storage needs a deliberately slow, memory-hard function: Argon2id (preferred), scrypt, or bcrypt, always with a per-user salt.