Ce dont vous avez besoin
Le fichier téléchargé, la somme de contrôle que l'éditeur indique pour lui, et un navigateur ou un terminal. Pour vérifier un court texte plutôt qu'un fichier, utilisez plutôt le générateur de hachage. Si l'éditeur propose plusieurs algorithmes, SHA-256 ou SHA-512 est celui à utiliser.
Lire le résultat
Une somme de contrôle change complètement dès qu'un seul octet change. Prenons un fichier de 14 octets, release-notes.txt, contenant Hello, world! suivi d'un saut de ligne :
| Algorithme | Somme de contrôle de release-notes.txt |
|---|---|
| CRC-32 | 7b55a718 |
| MD5 | 746308829575e17c3331bbcb00c0898b |
| SHA-1 | 09fac8dbfd27bd9b4d23a00eb648aa751789536d |
| SHA-256 | d9014c4624844aa5bac314773d6b689ad467fa4e1d1a50a1b8a99d5a95f72ff5 |
Remplacez le point d'exclamation par un point d'interrogation et le SHA-256 devient 84c8826b6695ba4f02c9b9a31bb13e2f3fe83c4288cee2f09277e54f5b06ba8d. Rien dans les deux valeurs ne se ressemble, et c'est tout l'intérêt : vous n'avez jamais besoin de comparer « à quel point » deux sommes de contrôle sont proches. Elles concordent exactement ou le fichier est différent.
En ligne de commande, la même vérification avec un fichier SHA256SUMS ressemble à ceci :
$ sha256sum -c SHA256SUMS
release-notes.txt: OK
et après la modification d'un caractère :
release-notes.txt: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
Dans le calculateur, coller une valeur MD5 alors que seul SHA-256 est coché donne Aucune correspondance, avec une indication que la valeur attendue ressemble à du MD5. Cochez cet algorithme et la comparaison s'exécute de nouveau.
Pièges courants
- Comparer des algorithmes différents. Une valeur SHA-1 ne correspondra jamais à un résultat SHA-256. Comptez les caractères si la page ne précise rien.
- Hacher du texte au lieu du fichier. Saisir
Hello, world!dans un outil de hachage de texte donne315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3, car le fichier contient aussi un saut de ligne. Le texte et les fichiers sont hachés octet par octet. - Vérifier une copie modifiée. Les transferts qui convertissent les fins de ligne, ainsi que les outils qui décompressent ou recompressent les archives, modifient les octets. Hachez le fichier exactement tel qu'il a été téléchargé.
- Obtenir la somme de contrôle au même endroit que le fichier. Si un miroir a été compromis, sa somme de contrôle peut l'être aussi. Préférez le site HTTPS du projet lui-même, et un fichier de sommes de contrôle signé lorsqu'il existe.
- S'inquiéter de la casse. PowerShell affiche l'hexadécimal en majuscules et
sha256sumen minuscules. C'est la même valeur, et le calculateur ignore la casse.
Pour aller plus loin
Pourquoi un tout petit changement brouille toute la valeur, et pourquoi MD5 et SHA-1 ne sont plus fiables face à des attaquants, est expliqué dans Comment fonctionne le hachage.