Fonction md5_file() PHP

Exemple

Calculer l'empreinte MD5 du fichier texte "test.txt" :

<?php
$filename = "test.txt";
$md5file = md5_file($filename);
echo $md5file;
?>

Sortie du code ci-dessus :

d41d8cd98f00b204e9800998ecf8427e

Définition et utilisation

La fonction md5_file() calcule l'empreinte MD5 du fichier.

La fonction md5_file() utilise la sécurité des données RSA, y compris l'algorithme de résumé de message MD5.

Explication provenant de RFC 1321 - Algorithme de résumé de message MD5 : L'algorithme de résumé de message MD5 prend une information de toute longueur en entrée et la convertit en une valeur de "empreinte digitale" ou "résumé de message" de 128 bits pour représenter cette entrée, et utilise cette valeur convertie comme résultat. L'algorithme MD5 est principalement conçu pour les applications de signature numérique ; dans ces applications de signature numérique, les fichiers plus grands sont compressés de manière sécurisée avant l'encryption (le processus d'encryption ici est réalisé en configurant une clé privée sous un système de cryptage [comme RSA] avec une clé publique) .

Pour calculer l'empreinte MD5 d'une chaîne de caractères, utilisez md5() Fonction.

Syntaxe

md5_file(file,raw)
Paramètres Description
file Obligatoire. Spécifie le fichier à calculer.
raw

Optionnel. Booléen, spécifie le format de sortie en hexadécimal ou binaire :

  • TRUE - format binaire original de 16 caractères
  • FALSE - par défaut. Nombre à 32 caractères en hexadécimal

Détails techniques

Retour : Retourne l'hash MD5 calculé avec succès, ou FALSE en cas d'échec.
Version PHP : 4.2.0+
Journal des mises à jour :

Dans PHP 5.0, une nouvelle fonction a été ajoutée raw Paramètres.

Depuis PHP 5.1, vous pouvez utiliser md5_file() en encapsulant. Par exemple : md5_file("http://w3cschool.com.cn/..")

Plus d'exemples

Exemple 1

Enregistrer l'hash MD5 du fichier "test.txt" dans le fichier :

<?php
$md5file = md5_file("test.txt");
file_put_contents("md5file.txt",$md5file);
?>

Vérifiez si "test.txt" a été modifié (c'est-à-dire si l'hash MD5 a été modifié) :

<?php
$md5file = file_get_contents("md5file.txt");
if (md5_file("test.txt") == $md5file)
  {
  echo "Le fichier est bon.";
  }
else
  {
  echo "Le fichier a été modifié.";
  }
?>

Sortie du code ci-dessus :

Le fichier est bon.