Diffie-Hellman Ahahtar Değişimi (Key Exchange)

Yazan: Şadi Evren ŞEKER

Açık anahtarlama sistemlerinden birisi olan bu yöntemde amaç herkes tarafından bilinen umumî bir şifre ile sadece iki kişinin bildiği anahtarları iki tarafa ulaştırmaktır.

Sistemin çalışma mantığı basit bir matematiksel gerçeğe dayanmaktadır buna göre gab = gba

Örnek:

  1. Anahtar değişimi yapacak iki taraf da p=23 ve g=5 sayılarını kararlaştırıyorlar (bu sayılar ik itaraftan da biliniyor ve umumî şifreler).
  2. Alice hususî anahtarı olarak a=6, seçer ve Bob’a gönderir (ga mod p)
    • 56 mod 23 = 8.
  3. Bob hususî anahtarı olarak b=15, ve Alice’e gönderir (gb mod p)
    • 515 mod 23 = 19.
  4. Alice (gb mod p)a mod p denklemini hesaplar
    • 196 mod 23 = 2.
  5. Bob (ga mod p)b mod p denklemini hesaplar
    • 815 mod 23 = 2.

Sonuçta gidip gelen bilgi 8 ve 19 olmaktadır. Ayrıca herkes tarafından umumî şifrelerde bilinmektedir. Ancak 2 anahtar değerini sadece Alice ve Bob bileiblmektedir. Bu da ancak şifreyi iligli formülden geçirdikten sonra mümkün olmaktadır.

Yorumlar

  1. Huseyin Erenkoy

    Varsayalım diffie hellman algoritması üstlü sayılarla değilde vigenere şifrelemesi üzerinde çalışıyor olsaydı. Alice elindeki metni (varsayalım baba yani 1212) kendi anahtarıyla(3456) vigenere ile şifreleyip bob’a gönderse(1212+3456->4668). Bob eline ulaşan şifreli metni kendi anahtarıyla (1111)bir kez daha şifreleyip(4668+1111->5779) alice’e gönderseydi. Alice kendisine ulaşan metni kendi şifresiyle açsa (5779-3456->2323) ve bob’a geri gönderse. Bob kendine ulaşan bu metni kendi şifresiyle açsa (2323-1111->1212) alice’in metni şifrelemeden önceki haline ulaşmış olacaktı. bu durumda vigenere şifresinin ilkel olarak diffie hellman anahtar değişim protokolüne uygun olduğu söylenebilirmi? (Bu senaryo ile şifreleme işlemlerinin sonunda alice ve bob birbirlerninin anahtarlarının ne olduğunu hesaplayabilecektir, diffie hellman’ın güncel halinde bu tehlikenin önüne geçilebilinilmiştir). Literatür’de bu konu benzeri bir örnek bulamadığım için sorma ihtiyacı hissettim. Teşekkürler

  2. Şadi Evren ŞEKER Article Author

    bakın bu mesajınızda bir iki noktaya dikkat çekmek gerekir.

    1. diffie hellman anahtar değişim algoritması, açık anahtar şifrelemesinin (public key cryptography), anahtar değişimi için uyarlanmış halidir. Sizin modelinizde ise simetrik şifreleme kullanılmaktadır. Dolayısıyla, örneğin, diffie hellmanda taraflar birbirinin hususi anahtarlarını bilmezken (private key) sizin modelinizde bilmektedir.
    2. diffie hellman algoritmasında ayrık logaritma (discrete logarithm) zoruluğu bulunmaktadır sizin modelinizde ise sadece toplamanın tersi olan çıkarma işlemi üzerine bir güvenlik kurulmuş ki bunun güvenli olduğunu (tatmin edici miktarda) söyleyemeyiz.
    3. Son olarak diffie hellman algoritmasında, ikiden fazla taraf anahtar değiştirebilmektedir. Buna benzer bir soruyu bir sınıfta sınav sorusu olarak sormuş ve cevabını internette yayınlamıştım, aşağıdaki bağlantıdan okuyabilirsiniz.

    http://www.sadievrenseker.com/vg/vg_midterm_cozum.htm

    Aklıma gelen temel farklar bunlar tabi ki benim aklıma gelmeyen başka farklar da bulabiliriz 🙂

    başarılar

  3. Huseyin Erenkoy

    Almak istediğim cevap buydu hocam aslında. Afişe edilmese güzel bir sınav sorusu olurdu aslında “diffie hellman vigenre gibi ilkel bir mimari üzerine inşa edilmiş olsaydı negatif yönleri neler olurdu” 🙂

    Çok teşekkür ederim.

  4. Abdulhakim

    5 üzeri 6 mod 23 =8 nasıl 8 çıkıyor böldüm çarpdm ama sonuc bi türlü 8 çıkmadı detaylı anlatabilicek varmı ?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir