Aynı kerelik ped ile şifreleme neden iyi değil?


20

mesajını bir kerelik pad k ile şifrelemek için E n c ( m 1 , k ) = m 1k yaparsınız .m1kEnc(m1,k)=m1k

Aynı kullanın Başka bir mesaj şifrelemek m 2 olsun e n C ( m, 2 , k ) = m 2k ve almak şifreli iki XOR yerine eğer ( m, 1k ) ( m, 2k ) = m 1m 2km2Enc(m2,k)=m2k

(m1k)(m2k)=m1m2

böylece, tamam öğrenmek becuse bazı bilgiler kaçağı olduğundan , ama neden güvenli değildir? Ben (diyelim) öğrenmek için hiçbir yolu yoktur m 1 bildiğim sürece m 2 . Peki neden k'yi iki kez kullanmak yanlıştır ?m1m2m1m2k


evet, bu tohumlama. Temel olarak, crypto.se ve cs.se arasındaki sınır çizgisi hakkındaki tartışmayı tohumlama.
Ran G.Mar

Kullanılan etiketlerin tartışması için lütfen buraya bakın .
Raphael

Gerçekten netleştiren bir görselleştirme gördüğümü hatırlıyorum, ama şimdi bulamıyorum. Neden bahsettiğimi bilen var mı? (Umarım ECB linux-pinguin, vb.Gibi başka bir kripto resmiyle karıştırmamam gerekir)
G.

1
@RanG. : sağ - ilgili kripto.se sorusu şurada: Bir kerelik pad anahtar yeniden yararlanıyor?
David Cary

Yanıtlar:


14

Öğrenmenin bir yolu yok (söyle) m1m2

(m2k)m2=k

k

Bir şifreleme sistemini kırmak için kullanılan bu genel strateji, bilinen bir düz metin saldırısı olarak bilinir . AES ve RSA gibi birçok sistemin bu saldırılara karşı güvenli olduğuna inanılmaktadır. Ancak bir defaya mahsus ped, her şifreleme için yeni bir ped kullanılmadığı sürece onlara karşı tamamen güvensiz hale gelir, bu yüzden "tek seferlik pedler" olarak adlandırılırlar.


11

Tam olarak belirttiğiniz nedenden dolayı güvensiz - bazı bilgi sızıntıları var.

Temel olarak, düz metinler (İngilizce metin, bilinen yapıya sahip dosyalar, vb.) Hakkında herhangi bir varsayımınız varsa, kolay bir istatistiksel analize yol açar. Muhtemelen iki kez kullanılması , saldırının pratikliğini önemli ölçüde değiştirmez, ancak rastgele olmayan bir düz metinle birçok kez kullanılması, sonunda anahtarı kurtarmak için yeterli bilgiyi ortaya çıkarır.

Son olarak, yalnızca kullanma yeteneğiniz varsa iki kez kullanma yeteneğiniz varsa, sadece bir kez kullanma yeteneğiniz de vardır - kısıtlama, bu bir kerelik pedlerin potansiyel olarak bilinmeyen ve zaman içinde kullanılmamasına ve birçok kez zarar görmemesidir.

m1m2 .

Bilinen düz metin saldırıları oldukça yaygındır, bildiğiniz bir şeyi şifrelemek için bir şifreleme mekanizmasını zorlamak oldukça kolaydır. Değilse, genellikle makul istatistiksel varsayımlar yapabilirsiniz.


Buna ek olarak, bir zaman pedleri, şifreli metni ve hatta düz metnin bir kısmını biliyorsanız, anahtarın karşılık gelen kısmını hemen kurtarabileceğiniz özelliğine sahiptir, bu da aynı ped ile şifrelenen gelecekteki mesajların bir kısmının etkin bir şekilde gönderildiği anlamına gelir. açık (daha basit metinleri tahmin etmeyi, anahtarın daha fazlasını ortaya çıkarmayı vb. kolaylaştırır). E-posta veya HTTP istekleri gibi birçok şeyi şifreliyorsanız, saldırgan bu protokollerin yapısı nedeniyle neredeyse her zaman düz metnin bir kısmını bilebilir.
Ben

6

(m1k)(m2k)=m1m2

günlük226=4.7

Bir defalık pad'i iki kez kullanmak istiyorsanız, önce mesajınızı sıkıştırmanız gerekir. Ve o zaman bile, neredeyse mükemmel bir sıkıştırma algoritması kullanmazsanız ve tek seferlik pedi birden çok kez kullanırsanız, mesajları teorik olarak kurtarmak için yeterli entropi kalır. Pratikte ne kadar zor olacağını bilmiyorum.


4

m1m2m1m2

Aslında, birçok durumda, çok basittir. İşte basit bir görselleştirme.


2

İşte matematiğe başvurmadan yaklaşımı temsil etmenin sezgisel bir yolu. Diyelim ki aynı zaman dilimi tarafından şifrelenmiş iki şifreli mesajınız var.

  1. Mesajlardan birinde bulunabilecek bir kelime veya kelime öbeğini tahmin edin. Diyelim ki "Hava raporu"
  2. Mesaj 1'den başlayarak ilk harf konumunda "Hava Durumu Raporu" nun oluştuğunu varsayın.
  3. Bir zaman aralığının ilk 14 karakterini geri hesapla.
  4. Geri hesaplanan OTP'yi kullanarak iletinin 2 ilk 14 karakterini şifresini çözün.
  5. Düz metin gobble-di-gook gibi görünüyorsa, 2. adıma geri dönün ve 2. harf konumunda tekrarlayın. Bununla birlikte, anlamlı bir metin alırsanız (örneğin, "Günaydın I" sonra tebrikler, OTP'nin ilk 14 karakterini (ve her harfin ilk 14 karakterini) çalıştınız.
  6. Rastgele harfler dışında bir şey atmadan mesaj 1'in sonuna ulaşırsanız, mesaj 1'de "Hava Durumu Raporu" ifadesinin oluşmadığı sonucuna varabilirsiniz. "Sevgili Albay gibi farklı bir ifadeyle 1. adıma geri dönün "
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.