La vérification de la somme de contrôle (ou empreinte) permet de savoir si le fichier téléchargé est bien le même que celui normalement proposé par un tiers. Nous vous proposons plusieurs moyens de mener à bien cette opération sur Windows, macOS et Linux.
La pratique n’est guère répandue et est pourtant bien utile. Il existe plusieurs raisons pouvant pousser à vérifier qu’un fichier est bien ce qu’il prétend être. La principale est la sécurité : on veut s’assurer qu’un fichier téléchargé est celui que l’éditeur concerné pense proposer. C’est d’autant plus utile qu’il est déjà arrivé que des sites officiels soient piratés et que les fichiers proposés soient infectés par des malwares.
Les contrôles d’intégrité permettent donc de s’assurer que le téléchargement est bien identique à ce que les développeurs avaient l’intention de proposer, puisque les sommes de contrôle sont – normalement – calculées avant mise à disposition sur les serveurs. Attention, dans le cas d’un piratage, il est possible que l’information affichée sur le site ait été elle-même modifiée. Ce sont cependant des cas rares.
L’autre grande raison à cette vérification d’intégrité est qu’un téléchargement peut mal se passer. Les données peuvent être corrompues, ce qui peut être particulièrement problématique dans le cas d’une image ISO qui servira à installer un système d’exploitation. Dans nos exemples, nous nous servons justement de l’image ISO d’Ubuntu 22.04.2 (la dernière révision LTS).
Windows : en passant par la ligne de commande
Nous nous concentrons sur Windows 10 et 11, les seules versions supportées actuellement par Microsoft. On peut se servir de PowerShell pour lancer cette vérification, par exemple depuis le Terminal, intégré dans Windows 11 et installable sur Windows 10 depuis le Microsoft Store (gratuit).
Dans le cas de notre image ISO, le « checksum » est celui-ci :
b98dac940a82b110e6265ca78d1320f1f7103861e922aa1a54e4202686e9bbd3
La commande qui nous intéresse dans PowerShell se nomme « Get-FileHash ». Commencez par ouvrir une session PowerShell ou Terminal (par exemple en ouvrant le menu Démarrer puis en écrivant les premières lettres de ce que vous souhaitez lancer), puis entrez la commande suivante, sans valider :
Get-FileHash
Appuyez sur espace, puis faites glisser le fichier qui vous intéresse dans la fenêtre du Terminal. Le chemin d’accès va s’écrire de lui-même, ce qui vous permettra de valider. Le résultat donné sera forcément pour la fonction de hachage SHA256, les anciennes fonctions MD5 et SHA-1 étant obsolètes.
Vous obtiendrez alors un résultat comme celui-ci, qui correspond à l’information fournie par l’entreprise :

Conséquence, l’image ISO est bien ce qu’elle prétend être. Attention, l’opération peut durer plus ou moins longtemps en fonction de la taille du fichier et surtout des performances de votre ordinateur.
Windows : en passant par un utilitaire
Il existe de nombreuses manières d’obtenir l’empreinte d’un fichier sous Windows. Nous allons parler ici d’OpenHashTab, une extension pour le shell de Windows et s’intégrant dans la fenêtre Propriétés d’un fichier ou d’un dossier.
Rien à écrire ici, il suffira de faire un clic droit sur un élément et d’aller chercher la ligne « Propriétés ». Les informations qui nous intéressent se trouvent dans l’onglet Sommes :

Après calcul des sommes (attendre que la barre verte soit remplie), la zone blanche affiche les informations pour MD5, SHA-1, SHA256 et SHA512. Un double-clic permet de copier l’information dans le presse-papier. On peut également coller dans le champ « Comparer à » l’empreinte fournie par Canonical, la fenêtre affichant alors ce dont il s’agit. Ici, on voit bien que le résultat correspond.
macOS : en passant par la ligne de commande
Là encore, une commande en ligne existe et on peut la lancer depuis le Terminal. Le maniement est globalement le même que dans le cas précédent, via la commande ci-dessous :
shasum -a 256
Après avoir ajouté une espace, on fait glisser le fichier dans la fenêtre depuis le Finder, afin que le chemin d’accès s’inscrive tout seul. Après quoi on valide. Une fois que le calcul est terminé, on obtient le résultat suivant :

Il s’agit bien de l’empreinte SHA256 fournie par Canonical, ce qui valide l’intégrité du fichier.
Linux : en passant par la ligne de commande
Linux possède aussi sa fonction en ligne de commande pour vérifier l’empreinte SHA256 d’un fichier. Elle se nomme sha256sum et s’utilise de la même manière que ce que l’on a déjà vu.
sha256sum
Pas besoin ici de paramètres ou autres, il suffit de laisser une espace après la commande et de faire glisser le fichier, toujours pour compléter le chemin d’accès.

Encore une fois, on peut voir que la somme de contrôle fournie correspond à celle attendue.
Autres exemples d’applications
Les moyens de vérifier une empreinte ne manquent pas, quelle que soit la plateforme. Il existe même des applications mobiles pour le faire, sur Android comme sur iOS, mais nous ne traitons ici que le cas des personnes sur ordinateurs, beaucoup plus à même de faire face à ce genre de besoin.
Voici donc quelques exemples d’autres petites applications, à commencer par QuickHash, que l’on peut utiliser sur les trois plateformes majeures (dans le cas de macOS, uniquement sur les Mac Intel malheureusement). Elle a exactement la même interface sur les trois systèmes et se présente ainsi :

Il suffit de faire glisser un fichier dans la fenêtre pour que le calcul commence. On sélectionne ensuite à gauche la fonction qui nous intéresse pour en afficher les informations. On peut également coller l’empreinte fournie par l’éditeur dans le champ « Expected Hash Value », l’application affichant alors un message pour avertir du succès ou de l’échec de la comparaison.
Sur macOS, Hash/Check est une petite application universelle, gratuite, disponible sur l'App Store et particulièrement légère. L’interface est réduite à sa plus simple expression, avec un fichier à faire glisser et des empreintes SHA256, 384 et 512 s’affichant ensuite. Ici aussi, un champ permet de coller l’empreinte obtenue chez l’éditeur, l’application affichant la correspondance en vert si les empreintes sont identiques, ou en rouge si elles ne correspondent pas.

Sur Linux, GtkHash fournit le même genre de service. On peut cliquer dans le champ Fichier ou y faire glisser l’élément à contrôler. Comme précédemment, on peut coller l’empreinte obtenue à la source dans le champ « Vérifier ». Après calcul de la somme via le bouton « Hachage » en bas à droite, l’application indiquera par des pastilles vertes si les informations correspondent.
