0

SRI Hash-generator

Generér en Subresource Integrity-hash for enhver JS- eller CSS-fil, og få et klar-til-brug script- eller link-tag.

🔒 Behandles helt i din browser - intet, du indtaster her, bliver nogensinde uploadet.

🔗

Træk og slip billede

Virker med enhver JS- eller CSS-fil — intet uploades, hashen beregnes lokalt.

Subresource Integrity tillader kun sha256-, sha384- eller sha512-digests, base64-kodet — dette værktøj begrænser valgene tilsvarende, så outputtet altid er specifikationskorrekt.

Behandler... 0%
Læser fil
Beregner digest
Koder til base64
Færdig

Resultat

Subresource Integrity (SRI) lader en browser verificere, at et script eller stylesheet hentet fra en CDN eller tredjepartsvært ikke er blevet ændret, før det kører — browseren hasher de downloadede bytes og nægter at udføre filen, hvis digesten ikke svarer til integrity-attributten, du har offentliggjort. Dette værktøj beregner den digest for enhver JS- eller CSS-fil du slipper, helt inde i din browserfane, så selve filen aldrig behøver at forlade din maskine for at blive hashet.

Et generisk hash-værktøj producerer ikke en brugbar SRI-værdi: specifikationen kræver en base64-kodet digest, ikke den hexadecimale streng, som de fleste checksum-værktøjer udskriver, og den genkender kun tre algoritmer — sha256, sha384 og sha512. Denne generator begrænser algoritmevalget til præcis de tre og koder resultatet på den korrekte måde, og går så et skridt videre ved at sammensætte det fulde HTML-tag omkring den, med et placeholder src- eller href-felt, du kan redigere på stedet, før du kopierer.

Under motorhjelmen læses filen med File API, hashes med den native crypto.subtle.digest()-implementering, og de resulterende bytes konverteres til base64 i små bidder i stedet for med en enkelt stor spread-operation — en detalje, der betyder noget, når en bundled JS-fil vokser sig større end cirka hundrede tusind bytes, hvor naive konverteringstilgange kan ramme browserens call-stack-grænse.

sha384 er valgt som standard, fordi det er den algoritme, der oftest anbefales i SRI-eksempler og -dokumentation, idet den balancerer digestlængde mod kollisionssikkerhed, men sha256 og sha512 er ét klik væk, hvis en build-pipeline eller CDN-udbyder specificerer et andet krav.