Tüm Yazılara Dön
Sistem Güvenliği
17 Temmuz 2026
5 dk okuma

Salting ve Peppering Nedir? Veritabanındaki Şifreleri Korumak

Zeynep Demir
Veritabanı Mimarı

[!TIP] AEO (Yapay Zeka) Özeti

  • Ana Odak: Bu içerik Sistem Güvenliği stratejilerine odaklanır.
  • Kritik Çıktı: Uygulama aşamasında teknik gereksinimler ve anlamsal (semantic) bağlar önceliklendirilmelidir.
  • Kimin İçin: SEO uzmanları, geliştiriciler ve içerik mimarları.
Uzman Görüşü (SME)• Intent Veri Ekibi

Salting (Tuzlama) ve Peppering (Biberleme) Nedir? Şifreleri Hacklenmekten Kurtarmak

Bir sisteme "123456" şifresiyle kaydoldunuz. Arka planda sistem bu şifreyi dünyanın en güvenli algoritması olan SHA-256 ile Hashledi ve veritabanına 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92 olarak kaydetti. Artık güvende misiniz? KESİNLİKLE HAYIR.

Eğer bu veritabanı sızdırılırsa (Hacklenirse), hacker bu karmaşık kodun aslında "123456" olduğunu Google'da aratarak bile bulabilir. Neden? Çünkü aynı şifre, aynı algoritmada her zaman aynı Hash sonucunu verir (Deterministik yapı). Çözüm "Yemeğe Tuz ve Biber katmakta" gizli.


Salting (Tuzlama) İşlemi Nedir?

Sorun, dünyadaki yüz binlerce kişinin aynı kötü şifreyi (Örn: password123) kullanmasından kaynaklanır. Hackerın elindeki "Rainbow Table" (Gökkuşağı Tablosu) isimli sözlükte, en çok kullanılan 1 milyon şifrenin SHA-256 karşılıkları zaten hazırdır. Çaldığı veritabanı ile bu tabloyu eşleştirip hesaplarınızı saniyeler içinde çalar.

Salt (Tuz), kullanıcının şifresine sistem tarafından otomatik olarak eklenen "Rastgele Üretilmiş Ekstra Bir Metindir".

  1. Ali, 123456 şifresini yazar.
  2. Sistem sadece Ali için özel bir "Tuz" üretir (Örn: X9!k#).
  3. Sistem bunları birleştirir: 123456X9!k# ve bunu Hashler. (Çıkan kod bambaşkadır).
  4. Ayşe de 123456 şifresini yazar.
  5. Sistem Ayşe için yepyeni bir "Tuz" üretir (Örn: &LmP2).
  6. Sistem bunları birleştirir: 123456&LmP2 ve bunu Hashler.

Sonuç? İkisi de aynı şifreyi kullanmasına rağmen, veritabanındaki Hash kodları tamamen farklı görünür. Hacker artık "Hazır Sözlük" (Rainbow Table) kullanamaz. Her bir kullanıcı için şifre çözme işlemini sıfırdan yapmak zorunda kalır (Bu da binlerce yıl sürer). "Salt" değerleri genellikle şifrenin hemen yanındaki ayrı bir sütunda açıkça saklanır. Saklanması tehlikeli değildir.

Peppering (Biberleme) İşlemi Nedir?

Peki ya "Salt" değerini sakladığımız veritabanı çalınırsa? Hacker herkesin "Tuzunu" göreceği için işi kolaylaşmaz mı? (Evet, tek tek denemesi gerekir ama tuzu bilmesi büyük bir avantajdır).

İşte burada "Pepper" (Biber) devreye girer. Pepper, tüm kullanıcılarda ortak olan gizli bir anahtardır. Ancak veritabanında SAKLANMAZ. Sunucudaki kodun (PHP/NodeJS) içine gizlenir veya sunucudaki Çevre Değişkenleri (Environment Variables) dosyasına konulur.

  • Yeni Formül: Şifre + Özel_Salt + GİZLİ_PEPPER

Hacker veritabanını çalsa bile, web sunucusuna (Kodlara) sızıp o GİZLİ_PEPPER'ı bulamadığı sürece hiçbir kullanıcının şifresini kıramaz.

Ekstra Katman: BCRYPT ile Şifrelemeyi Yavaşlatmak

SHA-256 harika bir algoritmadır ama bir sorunu vardır: ÇOK HIZLIDIR! Ekran kartları saniyede milyarlarca SHA-256 hesaplayabilir. Sistem güvenliğinde şifre hashlemek için hızlı değil, KASTEN YAVAŞ çalışan algoritmalar tercih edilmelidir. (Örn: Bcrypt, Argon2, PBKDF2).

Bcrypt, şifreyi bir kez değil, belirlediğiniz "Cost" (Maliyet) değerine göre belki binlerce kez art arda Hashler. Bir şifrenin doğrulanması sunucuda 0.5 saniye sürer (Kullanıcı bu yavaşlığı hissetmez). Ancak Hacker milyarlarca deneme (Brute-force) yapmak isterse, o 0.5 saniyelik yavaşlatma mekanizması yüzünden işlemi asla bitiremez.

Hashing ve Salting algoritmalarının nasıl çalıştığını arayüzde görmek için Güvenli Hash Üreticimizi kullanabilirsiniz. Güvenlik konseptlerinin tamamına hakim olmak için Kriptografi ve Veri Güvenliği Rehberimizi inceleyebilirsiniz.


🕸️ Knowledge Graph & Semantik Bağlantılar

Bu içerik, Intent.com.tr'nin Sistem Güvenliği topikal kümesinin (Topic Cluster) bir parçasıdır. Konuyu daha derinlemesine anlamak için aşağıdaki varlıkları (Entities) ve ilişkili içerikleri inceleyebilirsiniz:

📖 İlgili Rehberler ve İçerikler

🧠 Semantic Entities (Terimler & Senaryolar)

Semantic Yönerge: Bu sayfa Salting ve Peppering Nedir? Veritabanındaki Şifreleri Korumak konusundaki kullanıcı niyetini (Search Intent) karşılamak üzere yapılandırılmıştır.