Comment obtenir le hachage MD5 d'un fichier

Comment obtenir le hachage MD5 d'un fichier
L'algorithme de message-digeur, communément appelé hachage MD5, est un type de fonction de hachage cryptographique principalement utilisé pour vérifier l'intégrité des fichiers. MD5 est un digest de message 128 bits produit après avoir exécuté la fonction MD5 contre un fichier.

MD5 a ses défauts et n'est donc pas un très bon choix pour certaines méthodes de chiffrement, mais elle est très bien adaptée à la vérification des fichiers. Il fonctionne en créant une somme de contrôle d'un fichier et en comparant le résultat au original. Cela signifie que s'il y a des modifications dans un fichier, il n'y a aucun moyen qu'il puisse produire une valeur de digestion similaire à l'original. La valeur reste constante, peu importe où généré ou combien de fois plus longtemps que le fichier reste inchangé.

Pour ce guide, nous chercherons des moyens de générer une valeur de hachage MD5 d'un fichier. Cela vous permettra de vérifier l'intégrité des fichiers à partir de sites distants ou sur votre machine locale.

Installer md5sum

Dans les systèmes Linux et presque majeurs UNIX et UNIX, ils sont préinstallés avec un outil MD5. Le plus courant est md5sum. Par défaut, vous devriez le trouver disponible dans votre système.

$ quel md5sum
/ usr / bin / md5sum

Si vous n'avez pas l'installation de l'outil, vous pouvez utiliser le gestionnaire de packages de votre système.

Debian / Ubuntu
Sur Ubuntu et d'autres distributions basées sur Debian, utilisez APT comme:

Mise à jour Sudo apt-get
sudo apt-get install md5sum -y

Rehl / centos
Sur Rehl et Centos, utilisez Yum comme:

Mise à jour Sudo Yum
sudo yum install md5sum

Arc / manjaro
Si vous êtes sur Manjaro ou d'autres distributions basées sur une arche, utilisez Pacman en utilisant la commande:

Sudo Pacman -Sy
sudo pacman -s md5sum

Feutre
Enfin, sur les systèmes Fedora, utilisez la commande DNF comme:

Mise à jour Sudo DNF
sudo dnf installer md5sum

Générer md5sum d'un fichier

Avec l'outil installé, nous pouvons procéder et générer un MD5SUM pour un fichier. Vous pouvez utiliser n'importe quel fichier de base disponible dans votre système. Dans mon exemple, j'utilise les / etc / hôtes disponibles dans les systèmes Linux.

Pour générer le MD5SUM d'un fichier, utilisez simplement la commande md5sum suivie du nom de fichier, que vous pouvez voir dans la commande ci-dessous:

sudo md5sum / etc / hôtes

La commande ci-dessus doit générer une valeur de hachage du fichier comme indiqué dans la sortie ci-dessous:

F0EA6F62E5A12ED9AEE557B23842C6F6 / ETC / HOSTS

Une fois que le contenu du fichier change, la valeur md5sum devient complètement différente. Par exemple, ajoutez une valeur au fichier / etc / hosts.

sudo nano / etc / hôtes

Ajoutez l'entrée suivante dans le fichier (n'hésitez pas à passer à toutes les manières qui vous semblent appropriés).

192.168.0.20 Host local

Si vous essayez de calculer la valeur MD5 du fichier avec le nouveau contenu comme:

sudo md5sum / etc / hôtes

La valeur de hachage est différente comme indiqué dans la sortie ci-dessous:

F4B7F54D5B85A9E73E3C8960C6E9319E / ETC / HOSTS

Si vous revenez le fichier à son contenu d'origine, la valeur MD5SUM est similaire à l'original, vous permettant de savoir quand un fichier a changé.

NOTE: La valeur MD5 sera similaire à l'original même si le fichier est renommé. En effet.

Vérifiez les fichiers en ligne

Supposons que vous souhaitiez vérifier l'intégrité d'un fichier et vous assurer qu'il est infiltré. Pour ce faire, tout ce dont vous avez besoin est la valeur MD5 d'origine. Dans mon exemple, j'utilise un package Deb simple de MySQL à partir de la ressource ci-dessous:

https: // dev.mysql.com / téléchargements / mysql /

Téléchargez le fichier avec wget en utilisant la commande comme:

wget https: // dev.mysql.com / get / downloads / mysql-8.0 / libmysqlclient21_8.0.25-1debian10_amd64.deb

Une fois le fichier téléchargé:

Vérirons maintenant la valeur MD5 à l'aide d'une commande:

$ md5sum libmysqlclient21_8.0.25-1debian10_amd64.deb

Si le fichier n'a pas été modifié de quelque manière que ce soit, vous devez obtenir une valeur similaire à celle de l'original comme indiqué:

62ea69f71defbfdac7a60c124f5769c7 libmysqlclient21_8.0.25-1debian10_amd64.deb

Conclusion

Ce tutoriel a examiné une méthode simple pour vérifier la somme de contrôle MD5 des fichiers et vérifier leur état de modification.

Voici un exercice rapide pour vous.

Exercer

Créez un script bash simple qui vérifie si une valeur MD5 de fichier a une modification enregistrée toutes les 5 minutes. Si le fichier a changé, supprimez le fichier et fermez le système.

Cela devrait être un exercice amusant!