Penjana Hash SRI
Jana hash Subresource Integrity untuk sebarang fail JS atau CSS dan dapatkan tag skrip atau pautan yang sedia ditampal.
🔒 Diproses sepenuhnya dalam penyemak imbas anda — tiada apa yang anda masukkan di sini pernah dimuat naik.
Keputusan
Subresource Integrity (SRI) membolehkan pelayar mengesahkan bahawa skrip atau helaian gaya yang diambil daripada CDN atau hos pihak ketiga tidak diubah sebelum ia berjalan — pelayar meng'hash' bait yang dimuat turun dan enggan melaksanakan fail tersebut jika digest tidak sepadan dengan atribut integrity yang anda terbitkan. Alat ini mengira digest tersebut untuk sebarang fail JS atau CSS yang anda lepaskan, sepenuhnya di dalam tab pelayar anda, jadi fail itu sendiri tidak perlu meninggalkan mesin anda untuk di'hash'.
Alat hash generik tidak akan menghasilkan nilai SRI yang boleh digunakan: spesifikasi memerlukan digest berenkod base64, bukan rentetan heksadesimal yang dipaparkan oleh kebanyakan alat 'checksum', dan ia hanya mengenali tiga algoritma — sha256, sha384 dan sha512. Penjana ini mengehadkan pilihan algoritma kepada ketiga-tiganya sahaja dan mengekod hasilnya dengan cara yang betul, kemudian melangkah lebih jauh dengan mengarang tag HTML penuh di sekelilingnya, dengan ruang letak src atau href yang boleh anda sunting di tempat sebelum menyalin.
Di sebalik tabir, fail dibaca dengan File API, di'hash' dengan pelaksanaan crypto.subtle.digest() asli, dan bait hasilnya ditukar kepada base64 dalam ketulan kecil dan bukannya dengan satu operasi sebaran ('spread') besar — satu perincian yang penting apabila fail JS terbundel berkembang melebihi kira-kira seratus ribu bait, di mana pendekatan penukaran naif boleh melanggar had tindanan panggilan pelayar.
sha384 dipilih secara lalai kerana ia adalah algoritma yang paling kerap disyorkan dalam contoh dan dokumentasi SRI, mengimbangi panjang digest terhadap rintangan perlanggaran, tetapi sha256 dan sha512 hanya satu klik sahaja jika saluran binaan atau pembekal CDN menetapkan keperluan yang berbeza.