Checksummen (Hashes)

Checksumme (Hash) aus einem Text berechnen

Gib hier einen Text ein, aus dem die Checksumme gebildet werden soll:

Konvertierunsfehler vorbehalten!

XOR-Checksumme

Die XOR-Checksumme beträgt:
00

SHA1-Checksumme

Die SHA1-Checksumme beträgt:
da39a3ee5e6b4b0d3255bfef95601890afd80709

SHA224-Checksumme

Die SHA224-Checksumme beträgt:
d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f

SHA256-Checksumme

Die SHA256-Checksumme beträgt:
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

SHA384-Checksumme

Die SHA384-Checksumme beträgt:
38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95b

SHA512-Checksumme

Die SHA512-Checksumme beträgt:
cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e

zum Seitenanfang

Erläuterungen

Was sind Checksummen?

Eine Checksumme ist eine Zahl, die aus einer Berechnung von Daten mittels unterschiedlicher Art und Weise (Kryptografie) erstellt wird. Diese Berechnungen haben einen konstanten Schlüssel, das heißt, alle Rechner, die eine Checksumme aus den gleichen Daten berechnen, ermitteln den selben Wert.

Mittels Checksummen lässt sich prüfen, ob Daten fast 100-prozentig erfolgreich übertragen wurden, sei es beim Kopieren oder über Netzwerk. Sie dienen zur Verifizierung. Kleinste Veränderungen an den Ursprungsdaten erzeugen eine komplett andere Hash. In einigen PeerToPeer-Anwendungen kommen Checksummen automatisch zum Einsatz. Nach Erhalt der Daten werden diese automatisch verifiziert.

Aus einer Checksumme kann man nicht direkt die ursprünglichen Daten wiederherstellen. Sie sind nicht rückübersetzbar. Deshalb sind Checksummen die ideale Weise für Benutzer- und Passwortverwaltung. Nirgends braucht man einen Benutzernamen oder ein Passwort zu speichern, und keiner kann diese Daten klauen. Hat ein Benutzer sein Passwort vergessen, selbst schuld. Hier hilft nur eine Neuanmeldung.

Die Qualität von Checksummen testet man mit den sogenannten Kollisionen. Als Kollision wird bezeichnet, wenn 2 oder mehrere Datenursprünge die gleiche Checksumme erzeugen. Bei einer kleinen Datenmenge ist so etwas unwahrscheinlich. Wird die Datenmenge größer, wird auch die Wahrscheinlichkeit auf eine Kollision größer.

Die XOR-Checksumme

Verrechnet man die alle Bytes von Daten mit der mathematischen XOR-Funktion, erhält man die XOR-Checksumme, welche 1 Byte (8 Bit) groß ist. Der Wert kann dezimal von 0 bis 255 betragen. Er wird in der Regel hexadezimal dargestellt, also 00 bis ff.

Die XOR-Checksumme prüft das Vorhandensein aller Zeichen, nicht deren Reihenfolge. Vertauscht man in den Ursprungsdaten 2 Zeichen miteinander, erhält man bereits eine Kollision.

Anwendung findet die XOR-Checksumme bei Verifizierungen von Daten zeilenweise. Beispiel: GPS-Empfänger senden die NMEA-Daten am Ende jeder Zeile mit der XOR-Checksumme. Die anwendende Software kann prüfen, ob die gesamte Zeile empfangen wurde. Zum Verifizieren größerer Daten ist die XOR-Checksumme aufgrund der hohen Kollisionswahrscheinlichkeit ungeeignet.

Der Vorteil der XOR-Checksumme besteht in der gering benötigten Rechenleistung zum Bilden und Verifizieren. Deshalb kann sie in Echtzeit bei Übertragungen (Streamen) auf schwachen Rechnern eingesetzt werden.

md5sum

Mit Beginn der Datenübertragung über das Internet wurde schnell klar, dass man eine bessere Checksumme zum Verifizieren braucht. Deshalb wurde zu Beginn der 1990er Jahre die md5sum eingeführt.

Sie erzeugt mittels eines kryptografischen Verfahrens eine 128 Bit (16 Bytes) große Checksumme. Somit verringert sich die Kollisionswahrscheinlichkeit auf etwa 0.003% gegenüber der XOR-Checksumme.

In heutiger Zeit erzeugen die Experten bereits nach wenigen Sekunden eine Kollision. Deshalb sollte md5sum in Zukunft nicht mehr angewendet werden. Man überlegt, die md5sum nicht mehr weiter zu beteitzustellen.

SHA1

Etwa zur gleichen Zeit führte man die SHA1 ein, was im Ergebnis eine 160-Bit-Checksumme (20 Bytes) erzeugt. Somit sank die Kollisionswahrscheinlichkeit auf etwa 3% gegenüber der md5sum.

Auch hier erzeugen heutzutage die Experten eine Kollision nach wenigen Sekunden. Deshalb sollte SHA1 auch in Zukunft nicht mehr eingesetzt werden.

SHA256

Wie der Name schon sagt, erzeugt SHA256 eine 256 Bit (32 Byte) große Checksumme. Somit verringert sich die Kollisionswahrscheinlichkeit auf ewa 0.01% gegenüber SHA1.

Wie auf verschiedenen Quellen zu lesen ist, ist es einigen Experten nach monate langer Rechenzeit auf mehreren Rechnern gelungen, eine einzige Kollision zu erzeugen. Einen Nachweis dafür kann ich nicht liefern.

Deshalb gilt heute SHA256 als relativ sicher und kann eingesetzt werden.

SHA512

Hier sinkt rein rechnerisch die Kollisionswahrscheinlichkeit auf etwa 0.006% gegenüber SHA256. Wer ganz sicher sein will, kann dieses Verfahren benutzen.

Möchte man SHA512 sehr oft einsetzen, sollte man bei schwächeren Rechnern die benötigte Rechenleistung und -zeit beachten.

Andere Verfahren zum Bilden von Checksummen

Es gibt viele andere Verfahren, die zum Bilden von Checksummen entworfen wurden. Die hier genannten Beispiele sind standardisiert.

Hashes von sha256, sha384 und sha512 gehören zur Klasse SHA-2. Inzwischen gibt es die Klasse SHA-3.

Man sollte beachten, dass der Empfänger von Daten in der Lage sein muss, die Daten zu verifizieren. Eine Installation weiterer Software wäre störend für den Empfänger. Im privaten Einsatz kann man durchaus andere Verfahren einsetzen.

zum Seitenanfang

Anwendung unter Linux

SHA256-Checksumme von einer Datei anzeigen

sha256sum meineDatei.txt

SHA256-Checksumme von einer Datei in die Datei sha256.txt schreiben

sha256sum meineDatei.txt > sha256.txt

Mittels SHA256-Checksumme Datei(en) überprüfen

sha256sum -c sha256.txt

Die Anwendung md5sum funktioniert analog zu diesem Beispiel.

zum Seitenanfang