SHA-256 ist eine kryptografische Hashfunktion aus der SHA-2-Familie. Sie wurde von der NSA entworfen und von NIST in FIPS 180-4 standardisiert. Jede Eingabe wird zu einem festen 256-Bit-Digest, also 64 Hex-Zeichen.
Die Funktion verarbeitet Daten in 512-Bit-Blöcken und mischt sie über 64 Runden. Schon eine minimale Änderung an der Eingabe führt zu einem völlig anderen Ergebnis.
Für vollständiges SHA-256 sind keine praktischen Kollisions- oder Preimage-Angriffe bekannt. Darum wird es für TLS, Datei-Integrität, Bitcoin, Git, JWT HS256 und HMAC-SHA256 breit eingesetzt.
Für Passwortspeicherung ist SHA-256 trotzdem ungeeignet, weil es zu schnell ist. Dafür braucht man langsame, gesalzene Verfahren wie Argon2id, scrypt oder bcrypt.
Für neue Prüfsummen und Signatur-Digests ist SHA-256 heute meist die vernünftige Standardwahl statt MD5 oder SHA-1.