Maison  >  Article  >  développement back-end  >  PHP calcule la fonction de hachage SHA-1 sha1_file() d'un fichier

PHP calcule la fonction de hachage SHA-1 sha1_file() d'un fichier

黄舟
黄舟original
2017-11-03 09:07:431479parcourir

Exemple

Calculez le hachage SHA-1 du fichier texte "test.txt":

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

Le code ci-dessus affichera :

aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d

Définition et utilisation

sha1_file() Fonction calcule le hachage SHA-1 d'un fichier.

La fonction sha1_file() utilise l'algorithme American Secure Hash 1.

Explication de la RFC 3174 - Algorithme de hachage sécurisé américain 1 : SHA-1 produit une sortie de 160 bits appelée message Digest . Le résumé du message peut être introduit dans un algorithme de signature qui génère ou vérifie la signature du message. Signer le résumé du message au lieu du message peut améliorer l'efficacité du processus, car la taille du résumé du message est généralement beaucoup plus petite que celle du message. Le vérificateur d'une signature numérique doit utiliser le même algorithme de hachage que le créateur de la signature numérique.

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

Syntaxe

sha1_file(file,raw)
Paramètre Description
fichier Obligatoire . Spécifie le fichier à calculer.
brut Facultatif. Une valeur booléenne spécifiant le format de sortie hexadécimal ou binaire :
  • 参数 描述
    file 必需。规定要计算的文件。
    raw 可选。一个规定十六进制或二进制输出格式的布尔值:
    • TRUE - 原始 20 字符二进制格式

    • FALSE - 默认。40 字符十六进制数

    TRUE - Format binaire brut de 20 caractères

  • FALSE - Par défaut. Nombre hexadécimal de 40 caractères
    返回值: 如果成功则返回已计算的 SHA-1 散列,如果失败则返回 FALSE。
    PHP 版本: 4.3.0+
    更新日志 在 PHP 5.0 中,raw 参数变成可选的。

    自 PHP 5.1 起,可以通过封装使用 sha1_file()。例如: sha1_file("http://w3cschool.cc/..")
Détails techniquesDans PHP 5.0, le paramètre brut devient facultatif.

Depuis PHP 5.1, sha1_file() peut être utilisé via l'encapsulation. Par exemple : sha1_file("http://w3cschool.cc/..")
Valeur de retour : Renvoie le hachage SHA-1 calculé en cas de succès, ou FALSE en cas d'échec.
Version PHP : 4.3.0+
Journal de mise à jour :

更多实例

实例 1

在文件中存储 "test.txt" 的 SHA-1 散列:

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

检测 "test.txt" 是否已被更改(即 SHA-1 散列是否已被更改):

<?php
$sha1file = file_get_contents("sha1file.txt");
if (sha1_file("test.txt") == $sha1file)
{
echo "The file is ok.";
}
else
{
echo "The file has been changed.";
}
?>

上面的代码将输出:

The file is ok.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn