PHP sha1_file() fonksiyonu

Örnek

"test.txt" adlı metin dosyasının SHA-1 hashasını hesaplar:

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

Yukarıdaki kodun çıktısı:

aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d

Tanım ve Kullanım

sha1_file() fonksiyonu, dosyanın SHA-1 hashasını hesaplar.

sha1_file() fonksiyonu, Amerika Birleşik Devletleri Güvenli Hash Algoritması 1'i kullanır.

RFC 3174'ten açıklama - Amerika Birleşik Devletleri Güvenli Hash Algoritması 1: SHA-1, adı "İleti Özeti" olan 160 bitlik bir çıktı üretir. İleti Özeti, bir imza oluşturabilir veya doğrulayabilir olan bir imza algoritmasına girilebilir. İleti Özeti'ni imzalamak, İleti'yi imzalamaktan daha verimli bir süreç sağlar, çünkü İleti Özeti genellikle İleti'den çok daha küçük bir boyutta olacaktır. Sayısal imza doğrulayıcısı, sayısal imza oluşturucusu gibi aynı dağıtım algoritmasını kullanmalıdır.

Başarı durumunda hesaplanmış SHA-1 dağılımını döndürür, başarısız durumda FALSE döndürür.

Sözdizimi

sha1_file(dosya,ham)
Parametreler Açıklama
dosya Gerekli. Hesaplanacak dosyayı belirler:
ham

Opsiyonel. Ondalık veya ikili çıktı formatını belirleyen boolean değer:

  • TRUE - Orjinal 20 karakterlik ikili format
  • FALSE - Varsayılan. 40 karakterlik ondalık sayı

Teknik Ayrıntılar

Dönüş Değeri: Başarı durumunda hesaplanmış SHA-1 dağılımını döndürür, başarısız durumda FALSE döndürür.
PHP Sürümü: 4.3.0+
Güncelleme Günlüğü:

PHP 5.0'daham Parametreler seçmeli.

PHP 5.1'den itibaren sha1_file() fonksiyonunu kaplama yoluyla kullanabilirsiniz. Örneğin: sha1_file("http://codew3c.com/..")

Daha fazla örnek

Örnek 1

"test.txt" dosyasının SHA-1 dağılımını dosyada saklayın:

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

test.txt dosyasının değiştirilip değiştirilmediğini (yani SHA-1'nin değiştirilip değiştirilmediğini) test edin:

<?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.";
  }
?>

Yukarıdaki kodun çıktısı:

Dosya tamamdır.