Funkcja PHP sha1_file()
Przykład
Oblicz skrót SHA-1 pliku tekstowego „test.txt”:
<?php
$filename = "test.txt";
$sha1file = sha1_file($filename);
echo $sha1file;
?>
Wynikiem powyższego kodu będzie:
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
Definicja i użycie
Funkcja sha1_file() oblicza skrót SHA-1 pliku.
Funkcja sha1_file() korzysta z algorytmu US Secure Hash Algorithm 1.
Z RFC 3174 — amerykański algorytm bezpiecznego mieszania 1: „SHA-1 generuje 160-bitowe dane wyjściowe zwane skrótem wiadomości. Skrót wiadomości może następnie zostać wprowadzony do algorytmu podpisu, który generuje lub weryfikuje podpis dla wiadomości Podpisanie skrótu wiadomości, a nie samej wiadomości, często poprawia wydajność procesu, ponieważ skrót wiadomości jest zwykle znacznie mniejszy niż wiadomość.Weryfikator podpisu cyfrowego musi użyć tego samego algorytmu haszującego, którego użył twórca podpisu cyfrowego."
Ta funkcja zwraca obliczony skrót SHA-1 w przypadku powodzenia lub FALSE w przypadku niepowodzenia.
Składnia
sha1_file(file,raw)
Wartości parametrów
Parameter | Description |
---|---|
file | Required. The file to be calculated |
raw | Optional. A boolean value that specifies hex or binary output format:
|
Szczegóły techniczne
Wartość zwrotu: | Zwraca obliczony hash SHA-1 w przypadku sukcesu lub FALSE w przypadku niepowodzenia |
---|---|
Wersja PHP: | 4.3.0+ |
Dziennik zmian: | Od PHP 5.1 możliwe jest używanie sha1_file() z wrapperami, np. sha1_file("https://w3schools.com/..") |
Więcej przykładów
Przykład
Zapisz skrót SHA-1 „test.txt” w pliku:
<?php
$sha1file = sha1_file("test.txt");
file_put_contents("sha1file.txt",$sha1file);
?>
Sprawdź, czy zmieniono „test.txt” (to znaczy, czy zmieniono skrót 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.";
}
?>
Wynikiem powyższego kodu może być:
The file is ok.
❮ Odniesienie do ciągów PHP