(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_hmac_file — Bir dosyanın içeriğinden HMAC yöntemini kullanarak bir anahtarlı ileti aşı üretir
$algo
,$dosya
,$anahtar
,$ham_çıktı
= false
Bir dosyanın içeriğinden HMAC yöntemini kullanarak bir anahtarlı ileti aşı üretir.
algo
Aşlama algoritmasının ismi (örn, "sha256"
).
Desteklenen algoritmaların listesi
hash_hmac_algos() işlevinde bulunabilir.
Bilginize:
Kriptografik olmayan aş işlevlerine izin verilmez.
dosya
Aşı hesaplanacak dosyanın yeri; fopen() sarmalayıcıları desteklenir.
anahtar
HMAC ileti aşının üretiminde kullanılacak paylaşımlı gizli anahtar.
ham_çıktı
true
olduğu takdirde ham ikil veri çıktılanır, aksi takdirde
(false
) küçük harfli onaltılıklar çıktılanır.
Hesaplanan ileti aşını, ham_çıktı
için true
belirtilmedikçe küçük harfli onaltılıklardan oluşan bir dizge olarak, aksi
takdirde ham ikil gösterimi içeren bir dizge olarak çıktılar.
dosya
okunamıyorsa false
döner.
algo
bilinmiyorsa veya kriptografik olmayan bir aşlama
algoritmasıysa bir ValueError istisnası oluşur.
Sürüm: | Açıklama |
---|---|
8.0.0 |
Artık algo bilinmiyorsa veya kriptografik
olmayan bir aşlama algoritmasıysa bir ValueError
istisnası oluşuyor. Evvelce false dönerdi.
|
7.2.0 |
Kriptografik olmayan aş işlevlerinin (adler32, crc32, crc32b, fnv132,
fnv1a32, fnv164, fnv1a64, joaat) ve HASH_HMAC
sabitinin kullanımı iptal edildi.
|
Örnek 1 - hash_hmac_file() örneği
<?php
/* Aşı hesaplanacak dosyayı oluşturalım */
file_put_contents('example.txt',
'Pijamalı hasta yağız şoföre çabucak güvendi.');
echo hash_hmac_file('sha256', 'example.txt', 'çokgizli');
?>
Yukarıdaki örneğin çıktısı:
863f6b38ab2a65abe35721011273a251026eb485f8a62926afea24188881391b