Checksum
Prüfsumme (Datenintegritätsprüfung)
Ein Wert, der aus einem Datenblock mithilfe eines bestimmten Algorithmus berechnet wird und als Fingerabdruck dient, um zu überprüfen, dass die Daten bei Speicherung oder Übertragung nicht beschädigt oder verändert wurden.
Technisches Detail
Prüfsummen reichen von einfach (Paritätsbits, Bytesumme, CRC32) bis kryptographisch (MD5, SHA-256). CRC32 (Cyclic Redundancy Check, 32-Bit) ist schnell und erkennt häufige Übertragungsfehler, ist aber nicht kollisionsresistent. MD5 erzeugt einen 128-Bit-Hash und war einst Standard, gilt heute aber als kryptographisch gebrochen. SHA-256 bietet starke Integritätsgarantien. In der Praxis stellen Software-Downloads SHA-256-Prüfsummen bereit, die Benutzer mit ihrer lokalen Berechnung vergleichen. Die Web Crypto API berechnet über subtle.digest() kryptographische Prüfsummen im Browser. Adler-32 (verwendet in zlib) ist schneller als CRC32 für die Verifizierung von Streaming-Daten.
Beispiel
```javascript
// Checksum — Web Crypto API example
const data = new TextEncoder().encode('sensitive data');
const hash = await crypto.subtle.digest('SHA-256', data);
const hex = Array.from(new Uint8Array(hash))
.map(b => b.toString(16).padStart(2, '0')).join('');
```