array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'tr', ), 'this' => array ( 0 => 'function.hash-init.php', 1 => 'hash_init', ), 'up' => array ( 0 => 'ref.hash.php', 1 => 'Hash İşlevleri', ), 'prev' => array ( 0 => 'function.hash-hmac.php', 1 => 'hash_hmac', ), 'next' => array ( 0 => 'function.hash-pbkdf2.php', 1 => 'hash_pbkdf2', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'tr', 'path' => 'reference/hash/functions/hash-init.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_init — Ardışık aşlama bağlamını ilklendirir
$algo
,$sabitler
= 0,$anahtar
= "",$seçenekler
= []Ardışık aşlama bağlamını ilklendirir.
algo
Aşlama algoritmasının ismi ("md5", "sha256", "haval160,4" vb.). Desteklenen algoritmaların listesi hash_algos() işlevinde bulunabilir.
sabitler
İleti aşının üretimi için isteğe bağlı sabitler. Şimdilik tek bir
sabit desteklenmektedir: HASH_HMAC
.
Bu sabit belirtildiği takdirde, anahtar
bağımsız değişkeni de belirtilmelidir.
anahtar
sabitler
bağımsız değişkeninde
HASH_HMAC
belirtildiği takdirde, HMAC aşlama
yöntemi ile kullanılacak paylaşımlı gizli anahtar.
seçenekler
Çeşitli aşlama algoritmaları için seçenekleri içeren dizi. Şimdilik sadece, MurmurHash türevleri "seed" bağımsız değişkenini desteklemektedir.
hash_update(), hash_update_stream(), hash_update_file(), ve hash_final() işlevlerinde kullanılmak üzere bir Aşlama Bağlamı özkaynağı döndürür.
algo
bilinmiyorsa veya kriptografik olmayan bir aşlama
algoritmasıysa bir ValueError istisnası oluşur.
Sürüm: | Açıklama |
---|---|
8.1.0 | seçenekler bağımsız değişkeni eklendi. |
8.0.0 |
Artık algo bilinmiyorsa veya kriptografik
olmayan bir aşlama algoritmasıysa ya da anahtar
boşsa ValueError istisnası oluşuyor. Evvelce
false döner ve bir E_WARNING iletisi
çıktılanırdı.
|
7.2.0 |
Kriptografik olmayan aş işlevlerinin (adler32, crc32, crc32b, fnv132,
fnv1a32, fnv164, fnv1a64, joaat) ve HASH_HMAC
sabitinin kullanımı iptal edildi.
|
7.2.0 | resource türünde bir değer yerine HashContext kabul ediliyor. |
Örnek 1 - Ardışık aşlama örneği
<?php
$hash = hash('sha256', 'Pijamalı hasta yağız şoföre çabucak güvendi.');
$ctx = hash_init('sha256');
hash_update($ctx, 'Pijamalı hasta ');
hash_update($ctx, 'yağız şoföre çabucak güvendi.');
$incremental_hash = hash_final($ctx);
echo $incremental_hash, PHP_EOL;
var_dump($hash === $incremental_hash);
?>
Yukarıdaki örneğin çıktısı:
04eb8190a875ba9b6d05edbb0873e47ad41c48c2fac96e404040568868f3f20d bool(true)