Başlamadan önce soruna cevap vereyim, evet. Bitwarden şifrelerini sunucu üzerinde depoluyor ama nasıl depoluyor? Bitwarden'ı bir kuryeye anahtarını ise müşteriye benzetebilirsin şifrelerini sunucu içerisinde taşıyarak sana ulaştırıyor ancak ne taşıdığını bilmiyor çünkü veriler şifreli.
Bitwarden'ın nasıl çalıştığını anlamak için basit bir örnek vereyim. Diyelim ki, senin adın Ayşe ve Bitwarden'a kaydoluyorsun. Kendine
“ayşegüvenli99!” gibi bir Master şifre belirliyorsun. Bu Master şifre, tüm şifrelerini koruyan tek anahtar olacak. Laptopunda Bitwarden'a giriş yaptığında, bu şifreyi giriyorsun; laptopun, şifreni özel bir algoritma (
PBKDF2) ile işleyerek bir anahtar üretiyor. Bu anahtar, örneğin email şifren
“email123” ve banka şifren
“banka456” gibi şifrelerini şifreliyor. Şifrelenmiş haliyle bu veriler (yani “vault”), Bitwarden'ın sunucularına gönderilip saklanıyor. Ama önemli bir detay var: Bu şifrelenmiş veriyi sadece senin laptopun çözebiliyor, çünkü anahtar sadece senin Master şifrenle üretildi ve Bitwarden bu şifreyi ya da anahtarı asla bilmiyor.
Şimdi, telefonunda Bitwarden'a girmek istediğini düşünelim. Uygulamayı açıp aynı Master şifreyi (
“ayşegüvenli99!”) giriyorsun. Telefonun da aynı algoritmayı kullanarak aynı anahtarı üretiyor ve sunucudan indirdiği şifrelenmiş Vault'u açıyor. Böylece, email ve banka şifrelerine telefonundan da ulaşabiliyorsun. Bitwarden, şifrelerini bulutta saklıyor ama onları şifreli tutuyor; bu şifreleri çözmek tamamen senin Master şifrene bağlı. Bitwarden'ın sunucuları sadece şifrelenmiş veriyi tutuyor ve Master şifreni saklamıyor, sadece girişini doğrulamak için hash kullanıyor. Bu sistemle hem şifrelerin güvende kalıyor hem de farklı cihazlardan kolayca erişebiliyorsun.