Contenu | Rechercher | Menus

md5sum

L'outil md5sum est un utilitaire en ligne de commande qui permet de vérifier l'intégrité d'un fichier. En effet, il est tout à fait possible que des erreurs se soient introduites dans un fichier que vous récupérez depuis Internet. Ces erreurs sont généralement de deux types :

  • des données qui sont mal copiées depuis Internet ou perdues durant le transfert entre la source du fichier et votre ordinateur. Internet étant un flux d'ondes électriques, il se peut qu'il perde un peu de son intensité ou que des données soient mal relayées ;
  • un fichier qui a été modifié. Si vous récupérez un fichier quelconque depuis une source non officielle, vous pourriez télécharger une version du fichier qui a été modifiée par quelqu'un de mal intentionné.

md5sum permet de récupérer et comparer des empreintes MD5 de fichiers.

Installation

Sous Ubuntu, md5sum est normalement déjà installé et fonctionnel. Si vous n'en êtes pas certain, vérifiez dans votre gestionnaire de paquets que le paquet coreutils est correctement installé.

md5sum a été porté sous Apple® Mac OS™ X. Il est inclus de base dans Mac OS X. md5sum a aussi été porté sous Microsoft® Windows™ mais, par défaut, ce système d'exploitation ne l'inclut pas. Vous pouvez récupérer md5sum pour Windows chez etree.org (serveur alternatif) et l'enregistrer dans le dossier C:\Windows\System32. Le logiciel pourra alors être utilisé par l'invite de commande de Windows.

Exemple d'utilisation : vérifier l'intégrité d'une image CD d'Ubuntu

Sous GNU/Linux

En ligne de commande

Dans un terminal, saisissez la commande suivante :

md5sum nom_du_fichier.iso

Une série de chiffres et de lettres est retournée : l'empreinte MD5. Par exemple, quelque chose comme : "4dbbc4d4a52b1ef7b115c1f2052da723".

Comparez-la avec l'empreinte MD5 de référence. Si l'empreinte diffère, votre fichier est corrompu : il ne vous reste plus qu'à tenter de télécharger de nouveau le fichier depuis un miroir différent.

Exemple concret : pour vérifier l'empreinte de l'image du Desktop CD de Ubuntu 14.04 pour processeurs 64 bits enregistrée sur le bureau, la commande à saisir est :

md5sum ~/Bureau/ubuntu-14.04-desktop-amd64.iso

De manière graphique

Il existe plusieurs interfaces possibles pour md5sum, en fonction notamment de votre environnement.

Sous Microsoft Windows

Au préalable, il faut récupérer md5sum pour Windows comme précisé plus haut

La vérification de l'empreinte md5 sous Windows se fait à l'aide du terminal, appelé l'invite de commande. L'invite de commande peut être ouverte, sous Windows XP, en se rendant dans Menu Démarrer → Tous les programmes → Accessoires → Invite de commande MS-DOS®. Elle peut aussi être ouverte en se rendant dans Menu Démarrer → Exécuter:

  • Sous Windows 2000/XP/Vista, saisissez la commande cmd ;
  • Sous Windows 9x/ME: saisissez la commande command.

Pour vous déplacer dans l'arborescence de votre système :

  1. Saisissez d'abord le lecteur (C:, D:, E:, …) dans lequel vous avez téléchargé le fichier ISO.
  2. Utilisez la commande cd pour entrer dans le dossier dans lequel vous avez téléchargé le fichier ISO.
  3. Utilisez la commande "cd.." pour revenir dans un dossier parent (pour reculer d'un cran).
  4. Utilisez md5sum comme sous Linux.

Par exemple, si vous avez enregistré l'image du Desktop CD de Ubuntu 14.04 pour processeurs 64 bits enregistrée dans le dossier C:\Ubuntu, vous saisirez les commandes suivantes :

C:
cd \Ubuntu
md5sum ubuntu-14.04-desktop-amd64.iso

Une série de chiffres et de lettres est retournée : l'empreinte MD5. Comparez-la avec l'empreinte MD5 de référence. Si l'empreinte diffère, votre fichier est corrompu : il ne vous reste plus qu'à tenter de télécharger de nouveau le fichier depuis un miroir différent.

Pour sauvegarder dans un fichier texte la valeur MD5 retournée il est possible d'ajouter un complément de commande

C:
cd \Ubuntu
md5sum ubuntu-14.04-desktop-amd64.iso >> MD5SUM.txt

Dans l'exemple ci-dessus le fichier serait enregistré dans le répertoire "C:\Ubuntu"

L'option " » " redirige l'affichage de la console vers un fichier, elle crée le fichier si il n'existe pas et ajoute les données à la fin.

L'option " > " redirige l'affichage de la console vers un fichier, elle crée le fichier si il n'existe pas et écrase le contenus si il existe.

Sous Apple Mac OS X

  1. Ouvrez Terminal situé dans Applications / Utilitaires, saisissez :
    md5 

    Mais n'appuyez pas encore sur Entrée

  2. Faites glisser votre image sur la fenêtre par cliquer-déposer ;
  3. Appuyez sur la touche Entrée et attendez quelques minutes ;
  4. Comparez le résultat renvoyé avec l'empreinte MD5 de référence.

À propos des empreintes md5 et de md5sum

Le fichier ISO est un conteneur dans lequel se trouvent les fichiers nécessaires à l'exploitation de Ubuntu. Afin de vérifier l'intégrité de ce conteneur, les distributeurs de Ubuntu mettent à votre disposition une empreinte md5, sorte d'empreinte « digitale » numérique d'un fichier informatique.

Tout comme chaque personne a des empreintes digitales uniques, chaque fichier informatique a une empreinte md5 unique. À la moindre corruption du fichier, l'empreinte d'un fichier change. En vérifiant l'intégrité de votre fichier, vous vous assurez de disposer d'une copie conforme, d'un clone parfait du fichier d'origine.

Calculs mathématiques

L'utilitaire md5sum ne calcule pas, d'un point de vue mathématique, une empreinte aussi unique que ça. En d'autres termes il est possible qu'une même empreinte MD5 corresponde à plusieurs fichiers. La seule empreinte réellement unique est la suite des bits du fichier lui-même. Toutefois, la probabilité que deux fichiers non identiques partagent une même empreinte MD5 est faible. C'est la raison pour laquelle la comparaison d'empreintes constitue une bonne méthode pour vérifier l'intégrité de l'image CD téléchargée.

MD5 est appelé un hashage : à une suite de bits (le fichier) est associée une suite beaucoup plus petite (et de taille presque constante). Ce hashage doit être :

  1. rapide à calculer (c'est le cas !) et à vérifier,
  2. presque sans collision. Sans collision est idéal mais impossible : en réduisant la taille d'arrivée, on introduit nécessairement des collisions (argument analytique en maths). Mais il faut que ces collisions soient négligeables, et qu'elles arrivent pour des fichiers très différents (afin de bien détecter des changements partiels).
  3. non inversible (on ne peut pas retrouver le fichier d'origine à partir de son hashé).

MD5 vérifie ces différentes propriétés.

SHA-256 est devenu le nouveau standard recommandé en matière de hachage cryptographique après les attaques sur MD5 et SHA-1. Désormais (Novembre 2012), c'est plutôt SHA-2048 qui fait référence, mais seul la taille des clés change.

Voir aussi



Le contenu de ce wiki est sous licence : CC BY-SA v3.0