Функция PHP sha1_file()
Пример
Рассчитайте хэш SHA-1 текстового файла «test.txt»:
<?php
$filename = "test.txt";
$sha1file = sha1_file($filename);
echo $sha1file;
?>
Вывод кода выше будет:
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
Определение и использование
Функция sha1_file() вычисляет хэш SHA-1 файла.
Функция sha1_file() использует американский алгоритм безопасного хеширования 1.
Из RFC 3174 - Алгоритм безопасного хэширования США 1: «SHA-1 создает 160-битный вывод, называемый дайджестом сообщения. Затем дайджест сообщения может быть введен, например, в алгоритм подписи, который генерирует или проверяет подпись для сообщения. Подписание дайджеста сообщения, а не самого сообщения, часто повышает эффективность процесса, поскольку дайджест сообщения обычно намного меньше по размеру, чем само сообщение.Проверитель цифровой подписи должен использовать тот же алгоритм хеширования, что и создатель. цифровой подписи».
Эта функция возвращает вычисленный хэш SHA-1 в случае успеха или FALSE в случае неудачи.
Синтаксис
sha1_file(file,raw)
Значения параметров
Parameter | Description |
---|---|
file | Required. The file to be calculated |
raw | Optional. A boolean value that specifies hex or binary output format:
|
Технические детали
Возвращаемое значение: | Возвращает вычисленный хэш SHA-1 в случае успеха или FALSE в случае ошибки. |
---|---|
Версия PHP: | 4.3.0+ |
Список изменений: | Начиная с PHP 5.1, можно использовать sha1_file() с обертками, например, sha1_file("https://w3schools.com/..") |
Дополнительные примеры
Пример
Сохраните хеш SHA-1 «test.txt» в файле:
<?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.
❮ Справочник по строкам PHP