23/11/2024

Commandes et Système

Linux : comment vérifier l’intégrité d’un fichier grâce à son empreinte SHA256 ?

I. Présentation

Dans ce tutoriel, nous allons apprendre à utiliser la commande sha256sum pour vérifier l'intégrité d'un fichier (que l'on appellera message) à la suite d'un téléchargement. Grâce à cette commande, nous allons obtenir l'empreinte de ce fichier, que l'on appelle aussi "somme de contrôle" ou "checksum" en anglais.

Si un fichier n'a plus la même empreinte après avoir été transféré d'une machine A vers une machine B, ceci remet en cause son intégrité. Ceci signifie que le fichier a pu être altéré de façon volontaire ou accidentelle. Lors d'un téléchargement de fichier, ce dernier a pu être corrompu à cause d'une perte de paquets liée au réseau local ou d'un dysfonctionnement sur le serveur qui transmet le fichier. À l'inverse, si l'empreinte du fichier téléchargé est identique à celle du fichier d'origine, on peut affirmer que l'intégrité a été préservée. On peut affirmer que la version du fichier stocké sur le serveur est identique, au bit près, à celle stockée sur ma machine : le fichier peut être utilisé en toute sérénité.

II. Utilisation de la commande sha256sum

Lorsque l'on télécharge l'exécutable d'un logiciel ou une image ISO, il est fréquent d'avoir accès à la somme SHA256 (ou éventuellement SHA1 ou MD5) du fichier. L'éditeur met à disposition cette information pour que l'on puisse vérifier l'intégrité du fichier téléchargé.

Prenons l'exemple d'Ubunut, dont les images ISO sont téléchargeables sur cette page :

Si l'on clique sur "Ubuntu 23.04 (Lunar Lobster)", on aura accès à une liste de fichiers. Dans le cadre de cet exemple, il y a deux fichiers particulièrement intéressants :

  • SHA256SUMS : il donne accès à l'empreinte SHA256 de plusieurs fichiers mis à disposition sur cette page de téléchargement
  • ubuntu-23.04-desktop-amd64.iso : l'image ISO pour installer Ubuntu Desktop

Ubuntu - Fichier ISO et fichier checksum

Si l'on regarde le contenu du fichier SHA256SUMS, on constate qu'il y a la somme de contrôle SHA256 de plusieurs fichiers, dont le fichier "ubuntu-23.04-desktop-amd64.iso".

Somme SHA256 d'une image ISO Ubuntu

Désormais, à partir d'une machine sous Linux, on peut télécharger le fichier avec wget (ou d'une autre façon...) :

wget https://releases.ubuntu.com/lunar/ubuntu-23.04-desktop-amd64.iso

Télécharger image ISO Ubuntu

Quelques minutes plus tard, le téléchargement est terminé ! J'ai en ma possession l'image ISO d'Ubuntu. Mais, le fichier a-t-il conservé son intégrité pendant le téléchargement ?

La seule façon de le savoir, c'est de comparer la valeur fournie sur le site d'Ubuntu avec celle obtenue si l'on effectue le calcul de l'empreinte sur la version locale du fichier ISO. Pour cela, on va utiliser la commande sha256sum, comme ceci :

sha256sum ubuntu-23.04-desktop-amd64.iso

Quelques secondes plus tard, l'information est retournée :

Linux - Exemple sha256sum

L'empreinte entre les deux fichiers (version du serveur et version locale) est identique ! Ceci signifie que l'intégrité de mon fichier a été conservée ! Ma version est strictement identique à celle stockée sur les serveurs de Canonical, l'éditeur d'Ubuntu.

Sachez que vous pouvez aussi obtenir l'empreinte SHA256 de plusieurs fichiers. Ceci est utile si vous avez besoin de comparer la valeur entre deux fichiers :

sha256sum fichier1.txt fichier2.txt

III. Conclusion

Désormais, lorsque vous téléchargez un fichier et que l'éditeur met à votre disposition l'empreinte SHA256, vous serez en mesure de vérifier l'intégrité du fichier avant de l'utiliser !

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

1 commentaire sur “Linux : comment vérifier l’intégrité d’un fichier grâce à son empreinte SHA256 ?

  • L’option -c de sha256sum permet de lui donner à manger directement le fichier SHA256SUMS qui fait qu’il dire juste « OK/NOK » et nous évitera de faire la vérification nous-même (et donc de limiter les erreurs).

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.