0

SRI-hashgenerator

Genereer een Subresource Integrity-hash voor elk JS- of CSS-bestand en ontvang een kant-en-klaar script of linktag.

🔗

Sleep afbeelding

Werkt met elk JS- of CSS-bestand: er wordt niets geüpload, de hash wordt lokaal berekend.

Subresource Integrity staat alleen sha256-, sha384- of sha512-samenvattingen toe, base64-gecodeerd - deze tool beperkt de keuzes dienovereenkomstig, zodat de uitvoer altijd spec-correct is.

Buy Me a Coffee at ko-fi.com
Verwerken... 0%
Bestand lezen
Computeroverzicht
Codering naar base64
Klaar

Resultaat

Met Subresource Integrity (SRI) kan een browser verifiëren dat een script of stylesheet dat is opgehaald van een CDN of een host van een derde partij niet is gewijzigd voordat het wordt uitgevoerd. De browser hasht de gedownloade bytes en weigert het bestand uit te voeren als de samenvatting niet overeenkomt met het integriteitskenmerk dat u hebt gepubliceerd. Deze tool berekent de samenvatting van elk JS- of CSS-bestand dat u invoert, geheel binnen uw browsertabblad, zodat het bestand zelf nooit uw machine hoeft te verlaten om te worden gehasht.

Een generieke hash-tool levert geen bruikbare SRI-waarde op: de specificatie vereist een base64-gecodeerde samenvatting, niet de hexadecimale reeks die de meeste checksum-tools afdrukken, en herkent slechts drie algoritmen: sha256, sha384 en sha512. Deze generator beperkt de algoritmekeuze tot precies die drie en codeert het resultaat op de juiste manier, en gaat vervolgens nog een stap verder door de volledige HTML-tag eromheen samen te stellen, met een placeholder src- of href-veld dat u kunt bewerken voordat u gaat kopiëren.

Onder de motorkap wordt het bestand gelezen met de File API, gehasht met de native crypto.subtle.digest()-implementatie, en de resulterende bytes worden in kleine stukjes naar base64 geconverteerd in plaats van met een enkele grote gespreide bewerking - een detail dat ertoe doet zodra een gebundeld JS-bestand voorbij grofweg honderdduizend bytes groeit, waarbij naïeve conversiebenaderingen de call-stack-limiet van een browser kunnen bereiken.

sha384 is standaard geselecteerd omdat dit het algoritme is dat het meest wordt aanbevolen in SRI-voorbeelden en -documentatie, waarbij de lengte van de samenvatting wordt afgewogen tegen de weerstand tegen botsingen, maar sha256 en sha512 zijn slechts één klik verwijderd als een build-pijplijn of CDN-provider een andere vereiste specificeert.