SRP: Güvenli Uzak Parola Protokolü
SRP'nin, sunucuda parola saklamadan istemcinin ve sunucunun karşılıklı kimlik doğrulaması yapmasını nasıl sağladığını anlayın.
SRP: Güvenli Uzak Parola Protokolü, CoddyKit'te ücretsiz bir Cryptology Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Cryptology Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cryptology Academy kursu toplamda 4 dersten oluşur.
SRP'ye Genel Bakış ve Tarihçesi
Güvenli Uzaktan Parola (SRP) protokolü, Stanford'da Tom Wu tarafından geliştirilmiş ve 2000 yılında RFC 2945 olarak yayımlanmıştır; daha sonra geliştirilmiş SRP-6a sürümü tanımlanmıştır. SRP, parolanın kendisini, şifrelenmiş biçimde dahi, hiçbir zaman iletmeden paylaşılan bir parolaya dayalı karşılıklı kimlik doğrulaması sağlar.
Sunucu Parola Değil, Doğrulayıcı Saklar
SRP kaydı sırasında istemci, v = g^x mod N biçiminde bir parola doğrulayıcısı hesaplar; burada x = H(salt || password) ve N büyük bir güvenli asal sayıdır. Sunucu yalnızca tuzu ve v doğrulayıcısını saklar. Sunucunun veritabanı ele geçirilse bile saklanan doğrulayıcı parolayı doğrudan açığa çıkarmaz.
SRP Oturum Anahtarı Oluşturma
SRP girişinde istemci ve sunucu, paylaşılan bir oturum anahtarı oluşturan Diffie-Hellman benzeri bir değiş tokuş gerçekleştirir. Her iki taraftaki hesaplama paroladan türetilen değeri içerir; bu nedenle ortaya çıkan oturum anahtarını doğru biçimde yalnızca sırasıyla parolayı ve doğrulayıcıyı bilen kişi hesaplayabilir.
SRP'de Karşılıklı Kimlik Doğrulama
SRP karşılıklı kimlik doğrulaması sağlar: istemci parolayı bildiğini, sunucu ise meşru doğrulayıcıyı tuttuğunu kanıtlar. Bu, sahte bir sunucunun parola bilgilerini toplamaya çalışabileceği kimlik avı saldırılarını önler; çünkü sahte sunucu gerçek doğrulayıcı olmadan SRP değiş tokuşunu doğru biçimde tamamlayamaz.
Doğrulayıcı Hesaplama
Doğrulayıcı, x = H(salt || password) olmak üzere v = g^x mod N biçiminde hesaplanır; burada g bir üreteç, N ise 2048 bit veya daha büyük bir güvenli asaldır. Ayrık logaritma problemi, v değerinden x'i geri elde etmeyi hesaplama açısından olanaksız kılar. Parola yalnızca SRP değiş tokuşunun tamamı başarıyla tamamlanarak doğrulanabilir.
SRP-6a İyileştirmeleri
SRP-6a, k = H(N, g) çarpan parametresini ekleyerek ve istemci ile sunucudaki hesaplama sırasını değiştirerek özgün SRP-3 ve SRP-6 tasarımlarındaki zayıflıkları giderir. Bu değişiklikler bazı ikiye bir tahmin saldırılarını önler ve sunucunun katkısının protokolün erken aşamasında bağlanmasını sağlar.
Üretim Sistemlerinde SRP
SRP gerçek dünyada önemli ölçüde kullanılmıştır. Apple, hesap parolasını Apple sunucularına açıklamadan cihazların anahtar zinciri verilerini alabilmesi için iCloud Anahtar Zinciri eşzamanlamasında SRP kullanır. 1Password, sunucu tarafında kimlik bilgilerinin açığa çıkmasını önlemek için kimlik doğrulama modelinde SRP kullanmıştır.
SRP Kimlik Avını Önler
SRP, hem parolayı hem de sunucunun doğrulayıcısını bağlayan bir oturum anahtarı oluşturduğundan kimlik avı sunucusu SRP el sıkışmasını doğru biçimde tamamlayamaz. Kimlik avı sitesine SRP üzerinden bağlanan bir kullanıcının kimlik doğrulaması başarısız olur; bu da geleneksel parola gönderiminde bulunmayan yerleşik bir kimlik avı karşıtı özellik sağlar.
SRP'nin Sınırlamaları
SRP, büyük (2048 bitten büyük) tamsayılarla modüler üs alma gerektirdiğinden hesaplama açısından maliyetlidir. Doğru biçimde uygulanması karmaşıktır; parametre doğrulamadaki pek çok ince hata, uygulama güvenlik açıklarına yol açmıştır. Protokol ayrıca değiş tokuşun kendisinin pasif olarak dinlenmesini önlemek için güvenli bir kanal (TLS) gerektirir.
TLS-SRP Şifre Takımları
RFC 5054, SRP karşılıklı kimlik doğrulamasını doğrudan TLS el sıkışmasına entegre eden TLS-SRP şifre takımlarını tanımlar. Bu, şifrelenmiş karşılıklı kimlik doğrulamasını korurken sunucu sertifikası gereksinimini ortadan kaldırır. Ancak FIDO2 ve OPAQUE daha modern alternatifler olarak ortaya çıktığından TLS-SRP uygulamada sınırlı ölçüde benimsenmiştir.
SRP ve Modern Alternatifler
SRP çığır açıcı olsa da OPAQUE gibi modern alternatifler daha güçlü güvenlik güvenceleri (ön hesaplamaya direnç) sağlar ve FIDO2/geçiş anahtarları parolaları tamamen ortadan kaldırır. Yeni sistemlerde OPAQUE veya FIDO2 tercih edilir; ancak parola tabanlı karşılıklı kimlik doğrulaması gerektiren ve kimlik avına karşı açıklık barındırmayan sistemler için SRP hâlâ geçerli bir seçimdir.
SRP Doğrulayıcı Denetimi
SRP'de sunucu, kullanıcının parolası yerine ne saklar?
Ders Özeti: SRP Kimlik Doğrulaması
SRP bir parola doğrulayıcısı saklar (parolanın kendisini değil), DH benzeri bir değiş tokuş yoluyla paylaşılan bir oturum anahtarı oluşturur ve kimlik avına direnen karşılıklı kimlik doğrulaması sağlar. SRP-6a, tahmin saldırılarına direnç ekleyerek özgün sürümü geliştirir. Apple'ın iCloud Anahtar Zinciri ve 1Password, SRP'yi üretimde kullanır. OPAQUE ve FIDO2, yeni sistemler için modern haleflerdir.
Sıkça Sorulan Sorular
“SRP: Güvenli Uzak Parola Protokolü” dersi ücretsiz mi?
Evet — “SRP: Güvenli Uzak Parola Protokolü” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Cryptology Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cryptology Academy kursu toplamda 4 dersten oluşur.
“SRP: Güvenli Uzak Parola Protokolü” dersinde ne öğreneceğim?
SRP'nin, sunucuda parola saklamadan istemcinin ve sunucunun karşılıklı kimlik doğrulaması yapmasını nasıl sağladığını anlayın. Cryptology Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Cryptology Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Cryptology Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“SRP: Güvenli Uzak Parola Protokolü” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Cryptology Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Cryptology Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Temel Parola Kimlik Doğrulama Sorunu
- SRP: Güvenli Uzak Parola Protokolü
- PAKE Protokolleri ve Özellikleri
- Parolasız Kimlik Doğrulama: WebAuthn ve FIDO2