0

SRI-Hash-Generator

Generieren Sie einen Subresource Integrity-Hash für jede JS- oder CSS-Datei und erhalten Sie ein fertig einfügbares Skript oder Link-Tag.

🔗

Bild ziehen & ablegen

Funktioniert mit jeder JS- oder CSS-Datei – es wird nichts hochgeladen, der Hash wird lokal berechnet.

Subresource Integrity erlaubt nur sha256-, sha384- oder sha512-Digests, Base64-kodiert – dieses Tool schränkt die Auswahl entsprechend ein, sodass die Ausgabe immer spezifikationsgerecht ist.

Buy Me a Coffee at ko-fi.com
Verarbeitung... 0%
Datei lesen
Computing-Zusammenfassung
Codierung nach Base64
Fertig

Ergebnis

Mit Subresource Integrity (SRI) kann ein Browser überprüfen, ob ein von einem CDN oder einem Drittanbieter-Host abgerufenes Skript oder Stylesheet vor der Ausführung nicht geändert wurde. Der Browser hasht die heruntergeladenen Bytes und verweigert die Ausführung der Datei, wenn der Digest nicht mit dem von Ihnen veröffentlichten Integritätsattribut übereinstimmt. Dieses Tool berechnet diesen Digest für jede JS- oder CSS-Datei, die Sie einfügen, vollständig in Ihrem Browser-Tab, sodass die Datei selbst nie Ihren Computer verlassen muss, um gehasht zu werden.

Ein generisches Hash-Tool erzeugt keinen verwendbaren SRI-Wert: Die Spezifikation erfordert einen Base64-codierten Digest, nicht die hexadezimale Zeichenfolge, die die meisten Prüfsummen-Tools drucken, und es erkennt nur drei Algorithmen – sha256, sha384 und sha512. Dieser Generator beschränkt die Auswahl des Algorithmus auf genau diese drei und kodiert das Ergebnis auf die richtige Art und Weise. Anschließend geht er noch einen Schritt weiter, indem er das vollständige HTML-Tag darum herum erstellt, mit einem Platzhalter-SRC- oder Href-Feld, das Sie vor dem Kopieren direkt bearbeiten können.

Unter der Haube wird die Datei mit der Datei-API gelesen, mit der nativen crypto.subtle.digest()-Implementierung gehasht und die resultierenden Bytes in kleinen Blöcken in Base64 konvertiert und nicht mit einem einzigen großen Spread-Vorgang – ein Detail, das wichtig ist, sobald eine gebündelte JS-Datei etwa hunderttausend Bytes überschreitet, bei denen naive Konvertierungsansätze an die Call-Stack-Grenze eines Browsers stoßen können.

sha384 ist standardmäßig ausgewählt, da es sich um den in SRI-Beispielen und Dokumentationen am häufigsten empfohlenen Algorithmus handelt, der die Digest-Länge gegen Kollisionsresistenz abwägt, aber sha256 und sha512 sind nur einen Klick entfernt, wenn eine Build-Pipeline oder ein CDN-Anbieter eine andere Anforderung spezifiziert.