Funkcja sha1_file() w PHP
Przykład
Obliczanie hasha SHA-1 pliku tekstowego "test.txt":
<?php $filename = "test.txt"; $sha1file = sha1_file($filename); echo $sha1file; ?>
Wyjście kodu powyżej:
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
Definicja i użycie
Funkcja sha1_file() oblicza hash SHA-1 pliku.
Funkcja sha1_file() używa amerykańskiego algorytmu bezpieczeństwa hash SHA-1.
Wyjaśnienie z RFC 3174 - Amerykańska algorytm bezpieczeństwa hash SHA-1 generuje 160-bitowy wynik o nazwie podsumowanie wiadomości. Podsumowanie wiadomości można wprowadzić do algorytmu podpisu, który może generować lub weryfikować podpis wiadomości. Podpisanie podsumowania wiadomości zamiast samej wiadomości zwiększa efektywność procesu, ponieważ rozmiar podsumowania wiadomości jest znacznie mniejszy niż rozmiar wiadomości. Weryfikator podpisu cyfrowego musi używać tego samego algorytmu hashowania, co twórca podpisu cyfrowego.
Zwraca obliczony SHA-1 hash, jeśli pomyślnie, w przeciwnym razie FALSE.
Sintaktyka
sha1_file(file,raw)
Parametry | Opis |
---|---|
file | Wymagane. Określa plik do obliczenia. |
raw |
Opcjonalnie. Wartość logiczna, określająca format wyjścia szesnastkowego lub binarnego:
|
Szczegóły techniczne
Zwrócona wartość: | Zwraca obliczony SHA-1 hash, jeśli pomyślnie, w przeciwnym razie FALSE. |
Wersja PHP: | 4.3.0+ |
Log aktualizacji: |
W PHP 5.0:raw Parametry są opcjonalne. Od PHP 5.1 można używać sha1_file() poprzez enkapsulację. Na przykład: sha1_file("http://codew3c.com/..") |
Więcej przykładów
Przykład 1
Zapisz SHA-1 hasha pliku "test.txt" w pliku:
<?php $sha1file = sha1_file("test.txt"); file_put_contents("sha1file.txt",$sha1file); ?>
Testuj, czy "test.txt" został zmodyfikowany (czyli SHA-1 został zmodyfikowany):
<?php $sha1file = file_get_contents("sha1file.txt"); if (sha1_file("test.txt") == $sha1file) { echo "Plik jest w porządku."; } else { echo "Plik został zmieniony."; } ?>
Wyjście kodu powyżej:
Plik jest w porządku.