pense-bête de bruno sanchiz

Accueil > Linux > Lignes de commandes > md5 sha

md5 sha

Publié le 4 septembre 2015, dernière mise-à-jour le 5 août 2017, 8 visites, visites totales.

Utilité :
Lorsqu’on télécharge un fichier, le site peut proposer la valeur md5, sha256 ... Une fois télécharger on compare la valeur écrite sur le site avec celle calculée sur le fichier téléchargée. On peut voir un exemple sur mon site Avoir des infos poussées sur un ordi pour analyse

  • Si elles sont différentes, alors le fichier n’est pas le bon ( piratage, erreurs ... )
  • Si elles sont identiques, alors le fichier est probablement bon. les progrès récents en décryptage ont rendu obsolètes le md5 car il est maintenant "facile" de créer des fichiers différents avec le même md5.

sha224, sha256, sha384 et sha512

Les sha sont des codages SHA-2 hashes.
A chaque fichier différent on associe respectivement un nombre unique de 56 caractères (224 bits ), 64 (256), 72 (384) ou 128 (512) pris parmi les chiffres et les lettres de a à f.

exemple : le sha256 du fichier 20170218_br_systeme_v1.9.9 est :
e280856a468cf2b4aee7b1f567dd037bec8bec13d67cedc3a7f8a7c1fc639206ab3756458b04138f297152541113eef2af0a4e5bd1cd65eb1d90736d8516c816

On a respectivement 3 E67 possibilités différentes , 1E77 ; 4E115 ; 1E154

  • utilisation fichier par fichier : on compare le résultat de sha256sum fichier avec celui précédemment calculé ou téléchargé.
  • utilisation par répertoire : on crée un fichier machin.sha comprenant la valeur du sha256 de chaque fichier : sha256sum * > machin.sha.
    Ensuite sha256sum -c machin.sha va vérifier que le sha256 de chaque fichier correspond à celui écrit dans le fichier.sha .

md5

A chaque fichier différent on associe un nombre unique de 32 caractères pris parmi les chiffres et les lettres de a à f. On a 3.4E38 possibilités différentes.

  • utilisation fichier par fichier : on compare le résultat de md5sum fichier avec celui précédemment calculé.
  • utilisation par répertoire : on crée un fichier machin.md5 comprenant le rédultat pour chaque fichier : IFS=$'\n'; for i in $(find machin/ -type f) ; do echo $i;  md5sum $i >> machin.md5 ;done. Ensuite md5sum -c machin.md5 va vérifier les fichiers.
[bruno sanchiz]