Zum Inhalt springen
Quaestio

Prüfsumme

Geben Sie einen Text ein, dann werden die Prüfsummen mit vier Verfahren gleichzeitig berechnet.

0 Zeichen · 0 Bytes

Prüfsummen

  • SHA-1160 Bit

    Schreiben Sie etwas in das Feld oben.

  • SHA-256256 Bit

    Schreiben Sie etwas in das Feld oben.

  • SHA-384384 Bit

    Schreiben Sie etwas in das Feld oben.

  • SHA-512512 Bit

    Schreiben Sie etwas in das Feld oben.

Der Text verlässt Ihren Browser nie. Gerechnet wird mit der browsereigenen Kryptofunktion.

Einbetten

Werkzeug auf Ihrer Website einbetten

Kopieren Sie den Code und fügen Sie ihn dort ein, wo das Werkzeug erscheinen soll, etwa in einem Blogbeitrag oder auf einer Schulseite. Es ist kostenlos, der Rahmen enthält keine Werbung, und das Werkzeug rechnet im Browser der Besucher.

So funktioniert es

Eine kryptografische Prüfsumme macht aus einem Text beliebiger Länge eine feste Zahl von Zeichen. Derselbe Text ergibt immer dieselbe Summe, während die kleinste Änderung eine völlig andere ergibt.

Die Funktion geht nur in eine Richtung. Es gibt keinen Weg, von der Summe zum Text zurückzurechnen, und genau das ist ihr Sinn.

Prüfsummen dienen dazu, Dateien zu vergleichen, Änderungen zu erkennen, und als Baustein in Signaturen und Zertifikaten.

SHA-1 gilt nicht mehr als sicher. Seit 2017 gibt es praktikable Wege, zwei verschiedene Texte mit derselben SHA-1-Summe zu erzeugen, nutzen Sie es also nur zum Abgleich mit älteren Systemen.

Passwörter gehören nicht mit diesen Funktionen gespeichert. Sie sind auf Geschwindigkeit gebaut, was das Durchprobieren leicht macht. Für Passwörter nimmt man bewusst langsame Verfahren wie Argon2id, scrypt und PBKDF2. OWASP empfiehlt bcrypt nur für ältere Systeme, in denen weder Argon2id noch scrypt verfügbar ist.

Der Text wird als UTF-8 kodiert, bevor gerechnet wird, sodass Umlaute und ß hier dieselbe Summe ergeben wie in anderen korrekten Werkzeugen.

So arbeitet das Werkzeug

Der Text wird in UTF-8 umgewandelt und an die Browserfunktion crypto.subtle.digest übergeben, die SHA-1, SHA-256, SHA-384 und SHA-512 auf einmal berechnet. Die Prüfsummen werden in kleinen Hexadezimalziffern geschrieben, zwei Zeichen pro Byte: 40 Zeichen für SHA-1, 64 für SHA-256, 96 für SHA-384 und 128 für SHA-512. Sie werden bei jedem eingegebenen Zeichen neu berechnet.

Dieselben Bytes ergeben in jedem korrekten Werkzeug dieselbe Prüfsumme, aber derselbe Text kann zu verschiedenen Bytes werden. In UTF-8 ist das ü zwei Bytes lang, C3 BC, in der älteren Kodierung Latin-1 dagegen ein einziges Byte, FC. Ein Wort wie Grüße ergibt hier deshalb eine andere Prüfsumme als in einem Programm, das mit Latin-1 arbeitet.

Rechenbeispiel

abc ergibt die SHA-256-Summe ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad, denselben Wert, den das NIST in seinem Testbeispiel für den Algorithmus angibt. Folgt auf abc ein Zeilenumbruch, wie ihn der Befehl echo anhängt, lautet die Summe stattdessen edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb. Der Zeilenumbruch ist im Text nicht zu sehen, die Summe ist aber eine andere.

Grenzfälle

Das Werkzeug berechnet Prüfsummen von Text, nicht von Dateien. Die Prüfsumme einer heruntergeladenen Datei wird über die Bytes der Datei berechnet, etwa mit certutil -hashfile unter Windows oder sha256sum unter Linux. Wer den Inhalt der Datei einfügt, erhält nur dann dieselbe Summe, wenn der Text Byte für Byte gleich ist.

Zeilenenden sind der häufigste Grund, warum Prüfsummen nicht übereinstimmen. Der HTML Standard verlangt, dass ein Textfeld jedes Zeilenende in ein einzelnes LF umwandelt, Text aus einer Datei mit Windows-Zeilenenden, CR LF, erhält hier also eine andere Summe als in certutil. Leerzeichen am Zeilenende und ein abschließender Zeilenumbruch zählen ebenfalls mit.

Am 15. Dezember 2022 hat das NIST angekündigt, dass SHA-1 bis zum 31. Dezember 2030 auslaufen und durch SHA-2 oder SHA-3 ersetzt werden soll. Von den Funktionen hier gehören SHA-256, SHA-384 und SHA-512 zu SHA-2.

Quellen

So werden die Werkzeuge geprüft