Özel anahtar şifreleme protokolündeki anahtar nasıl değiştirilir?


12

Windows NT istemci bazı anahtar ile iletileri bir dizi şifrelemek için bir kesintisiz şifrelemeyi kullanarak bir sunucu ile "güvenli" iletişim kurabilecek bir noktadan noktaya protokolü kullanılmıştır . Sunucu ayrıca yanıtını aynı anahtarıyla şifreler . Ama bu anahtarın nasıl farkında?kkk

Daha genel: Alice ve Bob aynı özel anahtar üzerinde çalışan bir şifreleme / şifre çözme algoritması kullanıyorsa, bu anahtarı değiştirmenin güvenli bir yolu nedir? (farklı bir anahtar kullanmadan)k

Bu, her zaman kendime sorduğumda, özel anahtar şifrelemesini incelerken.


Yanıtlar:


6

Çoğu özel anahtar algoritması, mevcut hesaplama altyapısı göz önüne alındığında, bir sayının çarpanlarına ayrılması gibi belirli hesaplamaların fizibilitesine dayanır.

Aynı zamanda, çoğu şifreleme ve şifre çözme için kullanıldığında hesaplama açısından yoğundur ve bu nedenle mesaj akışının tamamı özel anahtarlar kullanılarak şifrelenmez. Bunun yerine, mesaj başka (daha az yoğun) bir algoritma kullanılarak şifrelenir ve bu şifreleme için kullanılan anahtar Özel Anahtar kullanılarak şifrelenir.

Elbette, işaret ettiğiniz gibi, güvenli anahtar değişimi, belirli bir şekilde ele alınabilecek bir sorun olmaya devam etmektedir:

  • Diffie-Hellman Anahtar Değişimi : Anahtarları güvenli bir şekilde değiştirmek için modüler artimetik kullanır.
  • Tek / Çoklu Anahtar Dağıtım Merkezi (KDC) : Güvenilir üçüncü taraf tabanlı biletleme sistemini kullanır.
  • Kerberos Kimlik Doğrulama Protokolü : KDC tabanlı nispeten karmaşık bir protokol.

7

Alice ve Bob aynı özel anahtar üzerinde anlaşmak istediklerinde, en popüler yöntem Diffie-Hellman kullanmaktır . Aşağıdaki gibi çalışır:

  1. n=13g=17

  2. bir=3b=7

  3. Alice hesaplar: ve Bob hesaplar: , bu durumda ve ve birbirlerinin değerlerini değiştirirler (sohbet yoluyla olabilir), yani herkes bilir ve değerleri .bir=gbirşıknB=gbşıknbir=12B=4birB

  4. Alice şunları hesaplar: ve Bob şunu hesaplar: , bu durumda .K=BbirşıknK=birbşıknK=12

Şimdi Alice ve Bob , anahtar olarak değeri üzerinde anlaştılar . ve değeri ve çok büyük asal sayılar olduğundan, kulak misafiri onları çarpanlarına ayırıp anahtarın kendisini hesaplamak neredeyse imkansızdır.Kng

Özel anahtar şifrelemesindeki bir sorun, ortadaki adam saldırısıdır ve bu, özel anahtar şifrelemesine göre ortak anahtar şifrelemesini seçmenin ana nedenlerinden biridir.


5

İlk olarak, bir terminoloji noktası: tarif ettiğiniz şey simetrik şifrelemedir ve katılımcılar arasında paylaşılan bir anahtar genellikle gizli anahtar olarak bilinir; “Özel anahtar” genellikle bir anahtarın ortak anahtar şifrelemesinde yalnızca bir katılımcının bildiği kısmı anlamına gelir .

Gizli bir anahtarı yaymanın iki yolu vardır: fiziksel olarak güvenli bir şekilde taşınabilir veya başka bir şifreleme biçimi, genellikle ortak anahtarlı şifreleme kullanılarak taşınabilir.

Gizli bir iletişim kanalı gerektirmeyen bir gizli anahtarı değiştirmenin yolları vardır. En popüler Diffie-Hellman anahtar değişim protokolüdür. Diffie-Hellman prensibi, her katılımcının kendi anahtar çiftini oluşturması ve bir ortak anahtardan ve bir özel anahtardan çok sayıda inşa eden bir matematik işlemi olmasıdır. Bu matematiksel işlem çok ilginç bir özelliğe sahiptir: büyük sayı Alice'in özel anahtarından ve Bob'un ortak anahtarından veya Bob'un özel anahtarından ve Alice'in ortak anahtarından yapılabilir; aynı numarayı her iki şekilde de alırsınız. Böylece Alice ve Bob ortak anahtarlarını değiştirirler ve her iki taraf da daha sonra gizli anahtar olarak kullanılabilecek çok sayıda numarayı bilir. Bir kulak misafiri her iki ortak anahtarı da bulabilir, ancak büyük sayıları yalnızca ortak anahtarlardan bulmak imkansızdır.

Diffie-Hellman anahtar değişimi, kimin dinlediğine bakılmaksızın iki tarafın bir sırrı değiştirmesine izin verir. Bununla birlikte, Alice'in Bob'u doğrulamaması veya tam tersi. Bu nedenle, ortadaki bir adam saldırısına uygundur : Mallory, Alice'le (Bob ile konuştuğuna inanan) anahtar değişimini ve Bob'la (Alice ile konuştuğuna inanan) ayrı ayrı anahtar değişimini gerçekleştirir ve böylece veya en azından sırrı bil.

Saldırgan iletileri arayabilir ve enjekte edebilirse, katılımcıların birbirlerini doğrulaması için daha fazla şifreleme gerekir. (Pasif bir saldırgan, altta yatan taşıma protokolünün kimlik doğrulaması sağladığı anlamına gelir.) Kolay yol, her bir katılımcının birbirlerinin ortak anahtarını zaten bilmesidir. Alice Bob'un ortak anahtarını biliyorsa:

  • Alice ona bir meydan okuma göndererek Bob'un kimliğini doğrulayabilir: Bob'un ortak anahtarıyla şifrelenmiş rastgele bir değer ( nonce ). Bob bu değerin şifresini çözebilir ve geri gönderebilirse Alice gerçekten Bob ile konuştuğunu bilir.
  • Bob, açık anahtarıyla imzalanmış bir mesaj göndererek Alice ile kimlik doğrulaması yapabilir. Alice, Bob ile gerçekten konuştuğunu kontrol etmek için imzayı doğrular.

Bu yöntemlerden birini (veya yine bir başka varyantı) bir yönde ve aynı veya farklı bir yöntemi diğer yönde kullanan veya yalnızca bir yönde kimlik doğrulaması yapan birçok varyant vardır. Örneğin, SSL / TLS (HTTPS, SMTPS, IMAPS, vb. Gibi birçok protokol için şifreleme katmanı) birkaç farklı şifre kombinasyonu kullanabilir ve genellikle sunucuyu istemciye doğrular, ancak isteğe bağlı olarak istemciyi de doğrulayabilir. Diffie-Hellman bu uygulama için yavaş ve hantaldır; açık anahtar dağıtımı ile en yaygın algoritma RSA'dır .

Elbette Alice ve Bob birbirlerinin ortak anahtarını önceden bilmiyor olabilirler. Bu yüzden bunun yerine bir güven zincirine güveniyorlar: Bob, Alice'e ortak anahtarını gönderir ve üçüncü bir partiden bu anahtarın gerçekten Bob'un ortak anahtarı olduğunu onaylayan imzalı bir açıklama gönderir. Bu imzalı ifadeye sertifika adı verilir ve üçüncü kısma sertifika yetkilisi denir . Üçüncü taraf Bob tarafından biliniyor olabilir veya kimliği dördüncü bir tarafça teyit edilebilir vb. Sonunda bu güven zinciri (… Bob için kefil olan Charlie için Dominique kefilleri) Bob'un zaten güvendiği bir taraf Ron'a ulaşmalıdır, yani Bob'un Ron'un ortak anahtarı vardır ve Ron'a sadece geçerli sertifikaları imzalaması için güvenir.

Açık anahtarlı kriptografiye dayanmayan protokoller vardır. Özellikle Kerberos protokolü, hem istemci hem de sunucu arasında bağlantı kurmak için hem unix tabanlı hem de Windows tabanlı ağlarda kullanılır. Kerberos, anahtar dağıtım merkezi (KDC) adı verilen merkezi bir kimlik doğrulama sunucusu kullanır . KDC, kullanıcının parolasını bir veritabanında saklamalıdır ve istemci normal olarak kullanıcıdan parolayı ister. Parolayı göstermekten kaçınmak için, protokol parolayı doğrudan kullanmaz, ancak bir şifreleme karması veya daha genel olarak parolaya uygulanan bir anahtar türetme işlevi .

Bu paylaşılan sır ile istemci ve KDC güvenli bir kanal kurar ve KDC istemciye bir “bilet” gönderir. Bilet, bir oturum anahtarı (yani yeni oluşturulan bir gizli anahtar) yanı sıra, KDC ile istemcinin iletişim kurmak istediği sunucu arasında paylaşılan başka bir simetrik anahtarla şifrelenmiş anahtarın bir kopyasını içerir. Istemci daha sonra bu şifreli kopyayı sunucuya iletir. Sunucu, oturum anahtarını almak için bu iletinin şifresini çözer ve oturum anahtarıyla şifrelediği ve istemciye geri gönderdiği bir nonce oluşturur. İstemci daha sonra sunucu ile güvenli bir kanal başlatır, oturum anahtarıyla şifrelenir ve nonce kodunun şifresini çözebileceğini göstererek başlar: bu, istemcinin sunucuda kimliğini doğrular. Bir Kerberos oturum kuruluşu, Needham-Schroeder protokolünün bir çeşididir .

C Kriptografların çok denemesi, ancak bunu yapmanın en iyi yolu ulaşılamaz bir hesaplama gücü gerektiriyor.



3

Her zaman önemsiz bir çözüm vardır: kullanıcılar anahtarları karşılar ve değiştirirler. Bu birçok durum için çok pratik değil, mümkün.

Diffie-Hellman (DH) anahtar değişim protokolüne ek olarak, kuantum anahtar dağıtım protokolleri de vardır. En bilinen QKD protokollerinden biri Bennett-Brassard protokolü BB84'tür .

P=N-P

Kapak tarafında, MITM saldırısı BB84 için de bir sorundur ve kullanıcıların bu sorunun üstesinden gelmek için kimlik doğrulamalı kanal kullandıklarını varsaymak gerekir (ancak bu genellikle bir kimlik doğrulama anahtarını önceden paylaşmalarını gerektirir ve biz de bir kare geri döndük).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.