2011-01-09 15 views
8

Şu anda kullanıcıların kimliklerini güvenli bir şekilde doğrulamayı içeren bir proje üzerinde çalışıyorum. SRP hakkında çok şey okudum ve hala temel kavramlarımı ele geçirmeyi başaramadım. Fikri ve SÖİ'nin ustalıkla uygulanmasını açıklarsanız minnettar olurum.Güvenli Uzaktan Parola (SRP) sözleşmesiz terimlerle

Not: Lütfen SRP ile ilgili web sitelerine bağlantılar göndermeyin; Şiddetli bir dilde SRP'yi açıklayan bir yazı olmadığı sürece.

cevap

9

Zaten parola kabul etmiş olan iki tarafla başlayın.

Protokolün ilk bölümünde, her iki taraf rasgele bir sayı üretir ve rastgele paylaşılmış bir sırrı kabul etmek için şifreyi ve şifreyi içeren bazı düzgün matematikler kullanır. Bu, her seferinde farklı bir şekilde yapılır (şifre aynı olsa bile), tel üzerinde dinleyen kimse paylaşılan sırrı belirleyemez ve yalnızca her iki tarafın şifreyi bilmesi durumunda çalışır. (İlgili matematikler, Diffie-Hellman ile yakından ilişkili olan ayrı bir logaritma problemine dayanmaktadır.)

Taraflar daha sonra birbirleriyle aynı ortak sırrı kabul ettiklerini kanıtlamak için devam ederler (örn.), tekrar dinleyen herkese açıklamadan. Bu daha (farklı) düzgün matematik alır. Her iki tarafın da aynı paylaşılan sırra sahip olduklarından memnun olduklarından, bundan sonra oturum anahtarlarını türetebilirler ve şifre seçiminde iletişim kurmaya başlayabilirler.

+0

Yani, üzerinde anlaşılan "parola" bir yere mi saklıyorlar? Şifre bozulabilir mi? – Anup

+0

Sunucu, yalnızca paroladan türetilen bir veri bloğunu saklar. Kullanılan mekanizmalar, şifrenin veri bloğundan belirlenmesinin mümkün olmadığı anlamına gelir, ne de veri bloğu şifre gibi kullanılmış olabilir. – crazyscot

+0

Bu nedenle, bir kamu-özel anahtar çifti oluşturmak için bir kamu-özel anahtar çifti oluşturmak için bir KDF kullanarak bu etkili bir eşdeğerdir (siyah kutu perspektifinden), daha sonra gelecekteki bağlantıların kimliğini doğrulamak için standart ortak anahtar kimlik doğrulaması kullanarak sunucuya genel yarısı verir mi? – Ajedi32