0

Generátor SRI hashů

Vygenerujte Subresource Integrity hash pro jakýkoli JS nebo CSS soubor a získejte připravenou značku script nebo link k okamžitému vložení.

🔒 Zpracováno výhradně ve vašem prohlížeči – nic, co zde zadáte, se nikdy nenahraje.

🔗

Přetáhněte obrázek

Funguje s jakýmkoli JS nebo CSS souborem – nic se nikam neodesílá, hash se počítá lokálně.

Subresource Integrity povoluje pouze digesty sha256, sha384 nebo sha512 kódované v base64 – podle toho tento nástroj omezuje výběr, takže výstup je vždy ve shodě se specifikací.

Zpracovává se... 0%
Načítání souboru
Výpočet hashe
Kódování do base64
Hotovo

Výsledek

Subresource Integrity (SRI) umožňuje prohlížeči ověřit, že skript nebo stylesheet načtený z CDN či od třetí strany nebyl před spuštěním změněn – prohlížeč spočítá hash stažených bajtů a odmítne soubor vykonat, pokud se digest neshoduje s publikovaným atributem integrity. Tento nástroj tento digest pro jakýkoli přetažený JS nebo CSS soubor spočítá zcela uvnitř karty prohlížeče, takže samotný soubor pro výpočet hashe nikdy neopustí váš počítač.

Obecný hashovací nástroj použitelnou SRI hodnotu nevygeneruje: specifikace vyžaduje digest kódovaný v base64, nikoli hexadecimální řetězec, který tiskne většina nástrojů pro kontrolní součty, a rozeznává pouze tři algoritmy – sha256, sha384 a sha512. Tento generátor omezuje výběr algoritmu právě na tyto tři a výsledek kóduje správným způsobem, a pak jde ještě o krok dál: sestaví kolem něj celou HTML značku s polem src nebo href, které lze před zkopírováním upravit.

Soubor se pod kapotou načítá pomocí File API, hashuje s využitím nativní implementace crypto.subtle.digest() a výsledné bajty se převádějí do base64 po malých částech, nikoli jednou velkou spread operací – detail, který je podstatný u bundlovaných JS souborů přesahujících zhruba sto tisíc bajtů, kde mohou naivní přístupy k převodu narazit na limity zásobníku volání prohlížeče.

Ve výchozím nastavení je vybrán sha384, protože jde o algoritmus nejčastěji doporučovaný v příkladech a dokumentaci k SRI, který vyvažuje délku digestu a odolnost vůči kolizím, ale sha256 a sha512 jsou vzdáleny jedno kliknutí, pokud build pipeline nebo poskytovatel CDN vyžaduje jiný.