> For the complete documentation index, see [llms.txt](https://docs.layraweb.com.tr/merhaba/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.layraweb.com.tr/merhaba/php-tarafi/konular/guvenlik/guvenli-parola-depolama.md).

# Güvenli Parola Depolama

Güvenli parola depolama, kullanıcıların parolalarının güvenli bir şekilde saklanmasını ve yönetilmesini sağlar. Parolaların güvenliği, kullanıcı verilerinin çalınması veya kötü amaçlı saldırılara maruz kalması gibi durumlarda son derece önemlidir.

PHP'de parolaları güvenli bir şekilde depolamak için önerilen yöntem, hash fonksiyonu kullanmaktır. Hash fonksiyonu, verilen girdinin sabit uzunlukta bir çıktı üretir. Bu çıktı, kullanıcının gerçek parolası yerine depolanır. Böylece, kullanıcının parolası güvende kalır ve çalınsa bile kötü niyetli kişilerin gerçek parolayı öğrenmeleri imkansız hale gelir.

PHP'de parola oluşturma ve hashleme işlemi için password\_hash() fonksiyonu kullanılır. Aşağıdaki örnek, kullanıcının parolasını alıp hash'leyerek veritabanına kaydeden bir işlev göstermektedir:

```php
function kaydet($kullaniciAdi, $parola) {
  $hashliParola = password_hash($parola, PASSWORD_DEFAULT);
  // Veritabanına kullanıcı adı ve hashli parolayı kaydet
  // ...
}
```

Bu örnekte, password\_hash() fonksiyonu kullanıcının parolasını hash'lemek için kullanılır. Fonksiyon, salt (tuz) adı verilen bir rastgele değer de kullanarak daha güvenli bir hash oluşturur. Bu rastgele tuz değeri, hash'in tahmin edilemezliğini artırır.

Parola doğrulama işlemi için ise password\_verify() fonksiyonu kullanılır. Aşağıdaki örnek, kullanıcının verdiği parolayı doğrulayan bir işlev göstermektedir:

```php
function dogrula($kullaniciAdi, $parola) {
  // Veritabanından kullanıcı adına göre hashli parolayı getir
  // ...
  return password_verify($parola, $hashliParola);
}
```

Bu örnekte, password\_verify() fonksiyonu kullanıcının verdiği parolayı ve veritabanından getirilen hashli parolayı karşılaştırarak doğrulama işlemini gerçekleştirir.

Güvenli parola depolama, web uygulamaları için son derece önemlidir ve kullanıcı verilerinin çalınmasını önlemede önemli bir rol oynar.
