Mode d'emploi
- Collez le texte du script ou de la feuille de style dans Texte du fichier, ou choisissez le fichier sous Ou un fichier.
- Choisissez l'Algorithme. Utilisez Les trois, le plus fort décide pour écrire une valeur pour chaque algorithme.
- Saisissez l'Adresse du fichier exactement comme la page le chargera. L'élément à coller apparaît dessous.
- Copiez la Valeur d'intégrité ou l'Élément à coller dans votre page. Pour vérifier une valeur que vous avez, collez-la sous Valeur d'intégrité à vérifier.
Comment la valeur est faite
La valeur d'intégrité est le nom d'un algorithme de hachage, un tiret, et l'empreinte du fichier en base64. Le navigateur hache les octets exacts du fichier : la valeur change donc si un seul octet change. Tout navigateur conforme prend en charge sha256, sha384 et sha512 (SRI, section 3.2). Le Base64 utilise l'alphabet de la RFC 4648, avec le signe = à la fin pour le remplissage (section 4).
Une valeur à plusieurs éléments, séparés par des espaces, est admise (section 3.2.1). Le navigateur utilise l'algorithme le plus fort parmi ceux qu'il connaît, si bien que sha512 l'emporte sur sha256.
intégrité = algorithme + "-" + base64(empreinte(octets))
- sha256 : 44 caractères de base64 après le tiret.
- sha384 : 64 caractères après le tiret.
- sha512 : 88 caractères après le tiret.
Ce que la vérification fait, et ce qu'elle ne couvre pas
Une vérification réussit lorsque les octets du fichier donnent l'une des valeurs de l'algorithme le plus fort de l'attribut (SRI, section 3.3). Un élément dont l'algorithme est inconnu du navigateur est ignoré. Lorsqu'il ne reste aucun élément, la vérification réussit sans rien comparer : cet outil signale donc ce cas comme non vérifié.
La valeur ne dit rien de l'origine du fichier. Elle prouve que le fichier a les octets qui ont été hachés. Recréez la valeur à chaque modification du fichier, par exemple après une mise à jour de bibliothèque, et gardez-la au même endroit que l'élément.
Le texte abc
Le texte abc correspond aux trois octets 61 62 63 en UTF-8. Choisissez sha256 et saisissez abc dans la zone de texte. La valeur d'intégrité du texte est celle du tableau, et l'élément à coller la porte avec crossorigin réglé sur anonymous.
| Algorithme | Valeur d'intégrité pour abc |
|---|---|
| sha256 | sha256-ungWv48Bz+pBQUDeXa4iI7ADYaOWF3qctBD/YfIAFa0= |
| sha384 | sha384-ywB1P0WjXou1oD1pmsZQBycsMqsO3tFjGotgWkP/W+2AhgcroefMI1i67KE0yCWn |
Questions fréquentes
Dois-je changer la valeur lorsque le fichier change ?
Oui. La valeur correspond à une suite exacte d'octets : une mise à jour de la bibliothèque, même d'une seule espace, donne une autre valeur. La vérification échoue alors jusqu'à ce que l'attribut contienne la nouvelle valeur.
Quel algorithme choisir ?
Tous les navigateurs prennent en charge les trois (SRI, section 3.2). sha384 est une empreinte plus forte que sha256 et une valeur plus courte que sha512. Choisissez Les trois pour écrire une valeur pour chacun, et le navigateur vérifiera le plus fort.
Pourquoi la valeur a-t-elle un nom d'algorithme et un tiret ?
Le nom indique au navigateur quelle empreinte calculer. Le tiret termine le nom, car les noms n'ont pas de tiret, alors que la valeur base64 peut en contenir dans son alphabet compatible avec les URL, comme le permet la section 3.5 de SRI.
L'outil envoie-t-il mon fichier à un serveur ?
Non. Votre navigateur lit le fichier et le hache avec la méthode de condensation du navigateur (crypto.subtle). La page n'effectue aucune requête réseau et ne stocke rien de ce que vous saisissez ou choisissez.
Pourquoi l'élément à coller contient-il crossorigin ?
SRI exige CORS pour une ressource d'une autre origine (section 5.3), et crossorigin réglé sur anonymous demande au navigateur d'utiliser CORS. L'élément l'inclut pour les scripts comme pour les feuilles de style.
Sources
- W3C (en anglais) : Subresource Integrity (Working Draft, 20 March 2026), sections 3.2, 3.3, 3.5 et 5.3
- IETF (en anglais) : RFC 4648, The Base16, Base32, and Base64 Data Encodings, section 4
- MDN Web Docs (en anglais) : SubtleCrypto.digest()
Chiffres et texte vérifiés pour la dernière fois le mardi 10 novembre 2026.