Fonction sha1_file() en PHP

Exemple

Calculer l'hash SHA-1 du fichier texte "test.txt":

<?php
$filename = "test.txt";
$sha1file = sha1_file($filename);
echo $sha1file;
?>

Sortie du code ci-dessus :

aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d

Définition et utilisation

La fonction sha1_file() calcule l'hash SHA-1 du fichier.

La fonction sha1_file() utilise l'algorithme de hachage Secure Hash d'Amérique 1.

L'explication de RFC 3174 - L'algorithme de hachage Secure Hash d'Amérique 1 : SHA-1 génère une sortie de 160 bits appelée résumé de message. Le résumé de message peut être entré dans un algorithme de signature capable de générer ou de vérifier une signature de message. Signer le résumé de message plutôt que le message lui-même peut améliorer l'efficacité du processus, car la taille du résumé de message est généralement beaucoup plus petite que celle du message. Le vérificateur de signature numérique doit utiliser le même algorithme de hachage que le créateur de la signature numérique.

Retourne le hachage SHA-1 calculé avec succès, ou FALSE en cas d'échec.

Syntaxe

sha1_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 20 caractères
  • FALSE - par défaut. Nombre à 40 caractères en hexadécimal

Détails techniques

Retour : Retourne le hachage SHA-1 calculé avec succès, ou FALSE en cas d'échec.
Version PHP : 4.3.0+
Journal des mises à jour :

Dans PHP 5.0,raw Les paramètres deviennent optionnels.

Depuis PHP 5.1, sha1_file() peut être utilisé via l'encapsulation. Par exemple : sha1_file("http://codew3c.com/..")

Plus d'exemples

Exemple 1

Enregistrer le hachage SHA-1 du fichier "test.txt" dans le fichier :

<?php
$sha1file = sha1_file("test.txt");
file_put_contents("sha1file.txt",$sha1file);
?>

Tester si "test.txt" a été modifié (c'est-à-dire si SHA-1 a été modifié) :

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

Sortie du code ci-dessus :

Le fichier est bon.