Prüfsumme
In der Informationstechnik ist eine Prüfsumme (englisch checksum) ein Wert, mit dem die Integrität von Daten überprüft werden kann. Prüfsummen werden typischerweise bei der Datenübertragung oder der Datensicherung verwendet.
Grundsätzlich ist eine Prüfsumme ein Wert, der aus den Ausgangsdaten berechnet wurde und in der Lage ist, mindestens einen Bitfehler in den Daten zu erkennen. Je nachdem wie komplex die Berechnungsvorschrift für die Prüfsumme ist, können mehrere Fehler erkannt oder auch korrigiert werden.
Die errechnete Prüfsumme wird vom Sender mit den Daten gespeichert bzw. übertragen. Der Empfänger berechnet nun aus den empfangenen Daten nach dem gleichen Verfahren die Prüfsumme und vergleicht diese mit der übertragenen Prüfsumme des Senders. Unterscheiden sich beide Prüfsummen, liegt ein Übertragungsfehler vor. Sind die beiden Prüfsummen identisch, ist die Nachricht mit hoher Wahrscheinlichkeit korrekt übertragen worden.
Einfache Verfahren
Ein einfaches Beispiel für eine Prüfsumme ist die Quersumme oder das Paritätsbit. Allerdings werden mit diesen Verfahren beispielsweise keine „Zahlendreher“ erkannt. Fletcher’s Checksum ist etwas schwerer zu berechnen, bietet aber auch größere Sicherheit.
Prüfsummenverfahren, die mit einem gewichteten Mittelwert der Daten arbeiten, sind recht sicher gegenüber zufälligen Veränderungen, etwa Zeichenvertauschungen, -verdopplungen oder -auslassungen. Sie werden beispielsweise angewendet bei der ISBN (International Standard Book Number) und bei den EAN-Codes.
Komplexere Verfahren
Der Begriff „Prüfsumme“ wird auch für aufwendigere Prüfverfahren verwendet, die komplexere Berechnungen anstelle der einfachen Aufsummierung der Datenwerte vornehmen, so beispielsweise für die zyklische Redundanzprüfung (englisch CRC). Eine zyklische Redundanzprüfung verwendet statt einfacher Addition eine Polynomdivision und ist im Allgemeinen effektiver bei der Erkennung von Zufallsfehlern als eine primitive Prüfsumme.
Obwohl eine herkömmliche Prüfsumme nützlich ist, um vor unbeabsichtigten Änderungen zu schützen, bietet sie keine Sicherheit gegenüber beabsichtigten Datenänderungen (Manipulation), da sie trivial zu umgehen ist. Es ist deshalb oft notwendig, anstelle eines einfachen Prüfsummenverfahrens kryptografisch stärkere Algorithmen, wie Einweg-Hash-Funktionen (z. B. den Secure Hash Algorithm), zu verwenden. Diese stellen weiterhin die Grundlage elektronischer Unterschriften dar.
Siehe auch
- Prüfsummen sind Bestandteil der meisten Fehlerkorrekturverfahren.
- Mathematisches Modell vieler Prüfsummen ist die Diedergruppe.
- Prüfziffer
- Hashfunktion