SRI maišos generatorius
Sugeneruokite antrinių išteklių vientisumo maišą bet kuriam JS arba CSS failui ir gaukite paruoštą įklijuoti scenarijų arba nuorodos žymą.
Rezultatas
Papildomų išteklių vientisumas (SRI) leidžia naršyklei patikrinti, ar scenarijus arba stiliaus lapas, gautas iš CDN arba trečiosios šalies prieglobos, nebuvo pakeistas prieš jį paleidžiant – naršyklė sumaišo atsisiųstus baitus ir atsisako vykdyti failą, jei santrauka neatitinka jūsų paskelbto vientisumo atributo. Šis įrankis apskaičiuoja bet kurio JS arba CSS failo santrauką, kurią įtraukėte, visiškai naršyklės skirtuke, todėl pačiam failui niekada nereikia palikti jūsų įrenginio, kad būtų atlikta maiša.
Bendrasis maišos įrankis nesukuria tinkamos SRI reikšmės: specifikacijai reikalingas base64 koduotas santrauka, o ne šešioliktainė eilutė, spausdinama dauguma kontrolinės sumos įrankių, ir jis atpažįsta tik tris algoritmus – sha256, sha384 ir sha512. Šis generatorius apriboja algoritmo pasirinkimą iki tų trijų ir teisingai užkoduoja rezultatą, tada žengia dar vieną žingsnį toliau, aplink jį sudarydamas visą HTML žymą su vietos rezervavimo src arba href lauku, kurį galite redaguoti prieš kopijuodami.
Po gaubtu failas skaitomas naudojant failų API, maišoma naudojant vietinį crypto.subtle.digest() diegimą, o gauti baitai konvertuojami į base64 mažais gabalėliais, o ne atliekant vieną didelę sklaidos operaciją – detalė, kuri yra svarbi, kai JS failo paketas išauga daugiau nei maždaug šimtą tūkstančių baitų, kur naiviai naršyklės konversijos iškvietimai gali pasiekti naivių konversijų apribojimų.
sha384 pasirinktas pagal numatytuosius nustatymus, nes tai SRI pavyzdžiuose ir dokumentuose dažniausiai rekomenduojamas algoritmas, subalansuojantis santraukos ilgį ir atsparumą susidūrimui, tačiau sha256 ir sha512 yra vienu spustelėjimu, jei kūrimo dujotiekio arba CDN teikėjas nurodo kitokį reikalavimą.