Warum SHA-256-Hashwerte unterschiedlich sind und wie Sie eine Datei prüfen

Zwei SHA-256-Berechnungen über dieselben Bytes ergeben immer denselben Hashwert. Wenn sich die Werte tatsächlich unterscheiden, prüfen Sie zuerst die ausgewählte Datei, den Algorithmus und unsichtbare Zeichen. Ein unvollständiger Download, ein Leerzeichen oder ein Zeilenumbruch reicht in der Regel aus, um das Ergebnis zu verändern. Vergleichen Sie vor der Verwendung einer heruntergeladenen Datei ihren vollständigen Hashwert mit dem Wert aus einer vertrauenswürdigen Quelle.

Datei oder Text prüfen?

Um ein heruntergeladenes PDF, Archiv oder Programm zu prüfen, verwenden Sie das Werkzeug SHA-256-Prüfsumme einer Datei berechnen. Es berechnet SHA-256 über die Bytes der ausgewählten Datei. Kopieren Sie deren Inhalt nicht in ein Textfeld: Dabei können sich die Kodierung oder die Zeilenenden verändern.

Zum Vergleichen einer Zeichenfolge verwenden Sie das Werkzeug SHA-256-Prüfsumme aus Text erstellen. Es kodiert den eingegebenen Text in UTF-8 und berechnet anschließend seinen Hashwert, einschließlich Leerzeichen und Zeilenumbrüchen. Eine Textdatei und der auf dem Bildschirm angezeigte Text bestehen deshalb nicht unbedingt aus denselben Bytes.

Einen Download Schritt für Schritt prüfen

  1. Suchen Sie den Hashwert auf der offiziellen Website des Herausgebers, passend zur richtigen Version und Datei. Ein ZIP-Archiv und das darin enthaltene Dokument haben unterschiedliche Hashwerte.
  2. Prüfen Sie, ob der Referenzwert mit SHA-256 berechnet wurde. Ein hexadezimaler SHA-256-Wert besteht aus 64 Zeichen. Der Standard legt eine Ausgabe von 256 Bit fest. NIST-Referenz.
  3. Klicken Sie im Dateiwerkzeug auf „Datei auswählen“. Prüfen Sie den angezeigten Namen und die Größe und klicken Sie anschließend auf „SHA-256 berechnen“.
  4. Verwenden Sie „Hash kopieren“ und vergleichen Sie alle 64 Zeichen mit dem Referenzwert. Die Schaltfläche kopiert nur den Hashwert; den Vergleich müssen Sie selbst vornehmen. Die hexadezimalen Buchstaben A–F und a–f stehen für dieselben Werte.
  5. Führen Sie die Datei bei einer Abweichung nicht aus. Prüfen Sie die erwartete Version und laden Sie die Datei erneut aus der offiziellen Quelle herunter. Bleibt die Abweichung bestehen, bitten Sie den Herausgeber um Bestätigung.

Ein Beispiel mit nur einem Zeilenumbruch

Geben Sie im Textwerkzeug genau abc ein, ohne Anführungszeichen, Leerzeichen oder Zeilenumbruch. Klicken Sie auf „Hash berechnen“. Die drei UTF-8-Bytes lauten hexadezimal 61 62 63. Das Ergebnis ist:

ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad

Setzen Sie den Cursor anschließend hinter das c, drücken Sie einmal die Eingabetaste und starten Sie die Berechnung erneut. Mit diesem LF-Zeilenumbruch umfasst die Eingabe vier Bytes: 61 62 63 0a. Das Ergebnis lautet nun:

edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb

Um diese Ergebnisse mit Dateien nachzuvollziehen, speichern Sie die erste in UTF-8 ohne BOM und ohne abschließenden Zeilenumbruch, die zweite mit genau einem abschließenden LF. Das Dateiwerkzeug sollte entsprechend 3 und 4 Byte anzeigen. Manche Editoren fügen automatisch einen Zeilenumbruch hinzu: Prüfen Sie diese Einstellung.

Unsichtbare Unterschiede

Ein Leerzeichen hinter einem Wort, ein Tabulator oder eine leere Zeile gehören zum Inhalt. LF- und CRLF-Zeilenenden verwenden unterschiedliche Bytes. Eine UTF-8-Datei mit BOM hat außerdem zusätzliche Bytes am Anfang, die beim selben Text ohne BOM fehlen.

Auch Akzente können überraschen: Ein é und ein e mit einem nachfolgenden kombinierenden Akzent können auf dem Bildschirm gleich aussehen und trotzdem unterschiedlich dargestellt sein. Das Textwerkzeug normalisiert sie nicht automatisch. Mit dem Werkzeug Zeichenkodierung prüfen und in UTF-8 umwandeln können Sie BOM und Zeilenenden von Textdateien bis 5 MiB untersuchen. Die vorgeschlagene Kodierung muss bestätigt werden; ohne BOM lässt sie sich nicht immer eindeutig bestimmen. Wandeln Sie die Datei nicht um, bevor Sie ihren ursprünglichen Hashwert geprüft haben.

Was die Prüfung aussagt

Eine SHA-256-Übereinstimmung ist eine starke Integritätsprüfung, aber keine mathematische Garantie für Eindeutigkeit: Hashfunktionen sind so ausgelegt, dass Kollisionen schwer zu finden sind. RFC 6234.

Sie beweist nicht, dass die Datei harmlos ist oder tatsächlich von der angegebenen Person stammt. Liefert ein Angreifer sowohl eine veränderte Datei als auch deren Hashwert, stimmen beide überein. Die Herkunft des Referenzwerts bleibt entscheidend. Eine digitale Signatur, die mit einem vertrauenswürdigen Schlüssel geprüft wurde, bietet eine gesonderte Echtheitsprüfung.

Checkliste vor der Bewertung

  • Dieselbe Datei, dieselbe Version und derselbe Algorithmus
  • Referenzwert aus einer vertrauenswürdigen Quelle
  • Vollständigen Hashwert verglichen, ohne Groß- und Kleinschreibung als Abweichung zu werten
  • Keine Bearbeitung, Umwandlung oder erneuter Export zwischen den Berechnungen

Häufige Fragen

Ändert sich der Hashwert, wenn ich eine Datei umbenenne?

Nein: Der Name fließt nicht in die Berechnung ein. Wenn Sie dagegen Metadaten ändern, die innerhalb der Datei gespeichert sind, ändern sich ihre Bytes und in der Regel auch ihr Hashwert.

Kann ich die Datei aus ihrem SHA-256-Hashwert wiederherstellen?

SHA-256 ist keine Verschlüsselung und hat keinen Entschlüsselungsschlüssel. Ein Hashwert dient zum Vergleichen von Daten, nicht zu ihrer Wiederherstellung oder zum Verbergen eines vorhersehbaren Geheimnisses.

Warum lässt sich eine große Datei nicht verarbeiten?

Die Berechnung bleibt im Browser, aber die Datei wird vollständig in den Arbeitsspeicher geladen. Die verwendete API verarbeitet die Eingabe nicht als Datenstrom; die praktische Grenze hängt deshalb vom Gerät und vom Browser ab. Die Seite und ihre Ressourcen werden dennoch von der Website geladen. MDN-Dokumentation.