Generator skrótów SRI
Generuj skrót Subresource Integrity dla dowolnego pliku JS lub CSS i uzyskaj gotowy do wklejenia znacznik script lub link.
🔒 Przetwarzane w całości w Twojej przeglądarce — nic, co tu wpiszesz, nie zostanie nigdy przesłane.
Wynik
Subresource Integrity (SRI) pozwala przeglądarce zweryfikować, czy skrypt lub arkusz stylów pobrany z CDN lub zewnętrznego hosta nie został zmodyfikowany przed uruchomieniem – przeglądarka haszuje pobrane bajty i odmawia wykonania pliku, jeśli skrót nie pasuje do opublikowanego atrybutu integrity. To narzędzie oblicza ten skrót dla dowolnego upuszczonego pliku JS lub CSS, w całości w karcie przeglądarki, więc sam plik nie musi opuszczać Twojego komputera, aby został zhaszowany.
Ogólne narzędzie do skrótów nie wygeneruje użytecznej wartości SRI: specyfikacja wymaga skrótu zakodowanego w Base64, a nie ciągu szesnastkowego drukowanego przez większość narzędzi do sum kontrolnych, i rozpoznaje tylko trzy algorytmy – SHA-256, SHA-384 i SHA-512. Ten generator ogranicza wybór algorytmu dokładnie do tych trzech i koduje wynik we właściwy sposób, a następnie idzie o krok dalej, tworząc wokół niego pełny znacznik HTML z zastępczym polem src lub href, które można edytować przed skopiowaniem.
W kulisach plik jest odczytywany za pomocą File API, haszowany natywną implementacją crypto.subtle.digest(), a wynikowe bajty są konwertowane na Base64 w małych fragmentach, a nie za pomocą pojedynczej operacji rozproszenia – szczegół, który ma znaczenie, gdy zbudowany plik JS przekroczy około stu tysięcy bajtów, gdzie naiwne podejścia do konwersji mogą napotkać limit stosu wywołań przeglądarki.
Domyślnie wybrany jest SHA-384, ponieważ jest to algorytm najczęściej zalecany w przykładach i dokumentacji SRI, równoważący długość skrótu z odpornością na kolizje, ale SHA-256 i SHA-512 są dostępne za jednym kliknięciem, jeśli system budowania lub dostawca CDN określi inne wymagania.