İçeriğe geç
parazade

Bcrypt Nedir?

Yayın: · Son güncelleme:

Bcrypt Nedir? Kısaca

Bcrypt, kullanıcı şifrelerini güvenli biçimde saklamak için tasarlanmış, her şifreye otomatik salt ekleyen ve ayarlanabilir maliyet faktörüyle kasıtlı olarak yavaş çalışan bir şifre özetleme (hash) algoritmasıdır.

Bcrypt nedir?
İçindekiler
  1. Bcrypt nedir?
  2. Neden yavaş olması avantajdır?
  3. Salt nasıl kullanılır?

Bcrypt nedir?

Bcrypt, 1999 yılında Niels Provos ve David Mazières tarafından tanıtılan bir şifre özetleme algoritmasıdır. Temelinde Blowfish adlı şifreleme algoritması bulunur. Amacı, bir web sitesinin veri tabanı çalınsa bile kullanıcı şifrelerinin kolayca ortaya çıkmasını önlemektir.

Doğru tasarlanmış bir sistem şifrenizi düz metin olarak saklamaz. Yalnızca şifrenizin özetini tutar; giriş yaptığınızda girdiğiniz şifrenin özetini hesaplayıp kayıtlı değerle karşılaştırır.

Neden yavaş olması avantajdır?

MD5 ya da SHA-256 gibi genel amaçlı özet fonksiyonları hızlı çalışmak için tasarlanmıştır. Bu hız, veri tabanını çalan bir saldırganın saniyede milyarlarca tahmin yapabilmesine yol açar. Bcrypt ise bilinçli olarak yavaştır.

Algoritmada "maliyet faktörü" adı verilen bir ayar bulunur. Bu sayı bir arttığında hesaplama süresi yaklaşık iki katına çıkar. Örneğin bir giriş işleminin 0,1 saniye sürmesi kullanıcı için fark edilmez, ama milyonlarca tahmin yapmaya çalışan saldırgan için işi çok uzatır. Bilgisayarlar hızlandıkça maliyet faktörü artırılabilir.

Salt nasıl kullanılır?

Bcrypt her şifre için rastgele bir salt üretir ve bunu özetin içine kaydeder. Böylece aynı şifreyi kullanan iki kullanıcının özetleri bile farklı olur ve hazır rainbow table listeleri işe yaramaz.

Geliştiriciyseniz şifre saklama işlemini kendiniz yazmak yerine, kullandığınız dilin güvenilir bcrypt ya da benzeri bir kütüphanesini tercih edin. Kullanıcı olarak ise bilmeniz gereken şudur: en iyi algoritma bile "123456" gibi bir şifreyi korumakta zorlanır, bu yüzden uzun ve benzersiz şifreler kullanın.

Sıkça Sorulan Sorular

Bcrypt bir şifreleme yöntemi mi?

Hayır, bcrypt bir şifre özetleme algoritmasıdır. Şifreler geri çözülmez; giriş sırasında yeniden özetlenip kayıtlı değerle karşılaştırılır.

Bcrypt yerine başka algoritmalar var mı?

Evet, scrypt ve Argon2 gibi şifre saklamaya özel algoritmalar da yaygın olarak önerilir. Ortak özellikleri yavaş çalışmaları ve salt kullanmalarıdır.

İlgili terimler