(PHP 5 >= 5.5.0, PHP 7, PHP 8)
password_needs_rehash — Belirtilen aş ile belirtilen seçeneklerin eşleşmesini doğrular
Bu işlev, belirtilen aşın belirtilen algoritma ve seçeneklerle yeniden aşlanması gerekip gerekmediğine bakar. Gerekliyse, aşın yeniden aşlanması gerektiği varsayılır.
aşpassword_hash() işleviyle oluşturulan aş.
algoParolaya karıştırma uygulamak için kullanılacak algoritmayı belirten parola algoritması sabiti.
seçeneklerSeçenekleri içeren ilişkisel bir dizi. Her algoritma için desteklenen seçenekler parola algoritması sabitleri bölümünde bulunabilir.
Aş, verilen algo ve seçeneklerle
eşleşecek şekilde yeniden aşlanmalıysa true, aksi takdirde false döndürür.
| Sürüm: | Açıklama |
|---|---|
| 7.4.0 |
algo için artık bir dizge gerekiyor, ancak
geriye uyumluluk için hala tamsayılar kabul ediliyor.
|
Örnek 1 - password_needs_rehash() kullanımı
<?php
$parola = 'rasmuslerdorf';
$aş = '$2y$10$YCFsG6elYca568hBi2pZ0.3LDL5wjgxct1N8w/oLR/jfHsiQwCqTS';
$algorithm = PASSWORD_BCRYPT;
// bcrypt'in cost (maliyeti), donanımın geliştirilmesine bağlı olarak
// zamanla değişebilir
$sçnkler = array('cost' => 12);
// Saklı aşı düz metin parola ile doğrula
if (password_verify($parola, $aş)) {
// Aşlama algoritmasının veya seçeneklerin değişip değişmediğine bak
if (password_needs_rehash($aş, $algorithm, $sçnkler)) {
// Gerekliyse, yeni bir aş oluştur ve eskisinin yerine koy
$yeniAş = password_hash($parola, $algorithm, $sçnkler);
// Kullanıcı kaydını $yeniAş ile güncelle
}
// Kullanıcıya oturum aç
}
?>