Zum Inhalt springen
100% lokal

Subresource-Integrity-Generator

Berechnen Sie einen SRI-Hash für eingefügte Dateiinhalte und erstellen Sie das passende Script- oder Link-Tag.

Dateiinhalt
Ausgabe

Subresource-Integrity-Generator

Fügen Sie den genauen Inhalt eines Scripts oder Stylesheets ein und dieses Tool berechnet seinen Subresource-Integrity-Hash (SRI). Damit erhalten Sie ein einsatzbereites <script>- oder <link>-Tag mit dem Hash. SRI ermöglicht es dem Browser zu überprüfen, dass eine von einem CDN oder einer anderen Quelle geladene Datei nicht manipuliert wurde — der Browser weigert sich, sie auszuführen, wenn die heruntergeladenen Bytes nicht mit dem Hash übereinstimmen.

Wählen Sie SHA-256, SHA-384 oder SHA-512, oder aktivieren Sie mehrere Kästchen, um einen kombinierten Integritätswert zu erstellen, der mehrere Algorithmen gleichzeitig auflistet — der Browser wählt den stärksten aus, den er unterstützt. Wählen Sie den Tag-Typ (Script oder Link), geben Sie die Quell-URL ein und legen Sie den crossorigin-Wert fest, den Ihr CDN erwartet (anonymous ist für fast jedes öffentliche CDN korrekt). Bei einem Script-Tag können Sie auch defer oder async hinzufügen. Wechseln Sie die Ausgabe zu "Nur Integritätswert", wenn Sie nur den Attributwert benötigen.

Der Hash wird auf den genauen Bytes berechnet, die Sie einfügen — ein Browser überprüft die echten Bytes einer Ressource, daher würde eine Normalisierung hier einen Hash erzeugen, der nicht mehr mit der eigentlichen Datei übereinstimmt. Sehr große Dateien werden bis zur üblichen Größenlimit des Tools unterstützt.

Alles läuft lokal in Ihrem Browser ab: Der Inhalt, den Sie einfügen, wird nirgendwo hochgeladen. Das ist wichtig, da es sich oft um den genauen Quellcode eines Scripts handelt, das Sie gleich veröffentlichen werden. Kopieren Sie das Ergebnis, laden Sie es als TXT-Datei herunter, oder löschen Sie die Felder und beginnen Sie von neuem.

Häufige Fragen

Was ist Subresource Integrity (SRI)?
SRI ist eine Browser-Sicherheitsfunktion. Sie geben einem <script>- oder <link>-Tag ein integrity-Attribut mit dem Hash der erwarteten Datei; wenn die vom Browser geladene Datei nicht übereinstimmt, weigert sich der Browser, sie auszuführen.
Welcher Algorithmus sollte ich wählen?
SHA-384 ist der häufigste Standard und das, was die meisten CDNs standardmäßig generieren. SHA-256 ist kürzer und immer noch sicher; SHA-512 ist das stärkste, produziert aber den längsten Wert. Die Auswahl von mehr als einem ermöglicht es dem Browser, den stärksten auszuwählen, den er unterstützt.
Was macht crossorigin hier?
Es ist erforderlich zusammen mit integrity für eine Cross-Origin-Ressource, da der Browser eine CORS-Anfrage stellen muss, um die Antwort vor dem Ausführen zu überprüfen. "anonymous" ist korrekt für öffentliche CDN-Dateien, die keine Cookies benötigen.
Warum ändert sich der Hash nicht, wenn ich nur einen Tippfehler in der URL korrigiere?
Der Integritätswert hängt nur vom Dateiinhalt ab, den Sie eingefügt haben, nie von der URL — die URL ist nur der Ort, von dem das Tag dem Browser mitteilt, wo er die Datei abrufen soll.
Wird der Dateiinhalt, den ich einfüge, irgendwo hochgeladen?
Nein. Der Hash wird vollständig in Ihrem Browser mit der Web Crypto API berechnet — der Inhalt verlässt Ihr Gerät niemals.