Text-Prüfsummen: Was eine übereinstimmende SHA tatsächlich belegt
Beim Übertragen von Text oder Einstellungen hilft eine Prüfsumme, Änderungen zu erkennen. Das setzt voraus, dass beide Seiten dieselben Daten abdecken und die Referenz vertrauenswürdig ist.
Der Algorithmus gehört zum Vergleich
Eine Hashfunktion erzeugt einen Wert fester Länge. Verwenden Sie auf beiden Seiten denselben Algorithmus; SHA-256 lässt sich nicht direkt mit SHA-512 vergleichen.
SHA-256 wird meist als 64 Hexadezimalstellen dargestellt. Mehr Eingabe verlängert den Hash nicht; er ist auch keine komprimierte Kopie, aus der das Original wiederhergestellt werden kann.
Quellen: MDN — SubtleCrypto.digest and fixed-length cryptographic digests
Ähnlicher Text kann unterschiedliche Bytes enthalten
Ein abschließendes Leerzeichen, Zeilenumbruch oder eine andere Kodierung kann den Hash bei ähnlichem Aussehen ändern. Bereinigen Sie den Text nicht zuerst, wenn Sie die genaue Übertragung prüfen wollen.
ToolRoof hasht eingegebenen Text als UTF-8, ohne Leerzeichen zu entfernen oder Unicode zu normalisieren. Das ist eine Texteingabe: Ein eingefügter Dateiname berechnet nicht den Hash des Dateiinhalts.
Die Referenz braucht eine vertrauenswürdige Quelle
Übereinstimmung mit einer vertrauenswürdigen Referenz ist ein praktischer Integritätsnachweis für die verglichenen Daten. Sie allein belegt weder Autorenschaft noch Unbedenklichkeit.
Wer Inhalt und Referenzhash ersetzen kann, kann beide weiterhin übereinstimmen lassen. Prüfen Sie die Herkunft; ein einfacher SHA-Hash ersetzt weder digitale Signaturen noch geeignete Passwortspeicherung.
Quellen: MDN — SubtleCrypto.digest and fixed-length cryptographic digests
Beispiel: der letzte Zeilenumbruch gehört zur Eingabe
Roof ohne abschließenden Zeilenumbruch umfasst 4 UTF-8-Bytes; der SHA-256-Hash beginnt mit c2f6a4d9. Ein einzelnes LF ergibt 5 Bytes und einen Hash mit dem Anfang 1e5a7f27. Ähnliches Aussehen bedeutet nicht gleiche Daten.
Die kurzen Präfixe dienen nur der Erklärung; tatsächlich verglichen wird der vollständige Hash. Prüfen Sie bei Abweichungen Zeilenumbrüche, Leerzeichen und Algorithmus, bevor Sie Manipulation vermuten.