Kod (kriptografi) - Code (cryptography)

"Zimmermann Telgrafı "şifresi çözülen İngiliz Deniz İstihbaratı kod kırıcılar. Kelime Arizona Alman kod kitabında yoktu ve bu nedenle fonetik hecelere bölünmesi gerekiyordu.

İçinde kriptoloji, bir kodu şifrelemek için kullanılan bir yöntemdir İleti anlam düzeyinde işleyen; yani, kelimeler veya tümcecikler başka bir şeye dönüştürülür. Bir kod, "değişikliği" "CVGDK" ya da "kokteyl salonu" olarak dönüştürebilir. Birleşik Devletler. Ulusal Güvenlik Ajansı bir kodu "Düz metin öğelerinin esas olarak kelimeler, ifadeler veya cümleler olduğu ve kod eşdeğerlerinin (" kod grupları "olarak adlandırılır) tipik olarak aynı uzunluktaki anlamsız kombinasyonlarda harflerden veya rakamlardan (veya her ikisinden) oluştuğu bir ikame şifreleme sistemi olarak tanımlandı . "[1]:Cilt I, s. 12 Bir kod kitabı kelime öbeklerini veya kelimeleri şifrelemek ve şifresini çözmek için gereklidir.

Aksine, şifreler Mesajları tek tek harfler veya küçük harf grupları düzeyinde veya hatta modern şifrelerde, bireysel olarak şifreleyin bitler. Mesajlar önce bir kod ve ardından bir şifre ile dönüştürülebilir. Böyle çoklu şifreleme veya "süper şifreleme", kriptanaliz daha zor.

Kodlar ve şifreler arasındaki başka bir karşılaştırma, bir kodun tipik olarak matematik kullanılmadan doğrudan bir harfi veya harf gruplarını temsil etmesidir. Bu nedenle sayılar şu üç değeri temsil edecek şekilde yapılandırılır: 1001 = A, 1002 = B, 1003 = C, .... Elde edilen mesaj, ABC'yi iletmek için 1001 1002 1003 olacaktır. Ancak şifreler, harfleri veya harf gruplarını temsil etmek için matematiksel bir formül kullanır. Örneğin, A = 1, B = 2, C = 3, .... Böylece, ABC mesajı, her harfin değerini 13 ile çarparak sonuçlanır. ABC mesajı, bu durumda 13 26 39 olacaktır.

Kodların, duyarlılık dahil olmak üzere çeşitli dezavantajları vardır. kriptanaliz ve hantal olanı yönetmenin zorluğu kod kitapları, dolayısıyla şifreler artık modern kriptografide baskın tekniktir.

Aksine, kodlar temsili olduğu için, ayrı kod çizelgesi öğelerinin matematiksel analizine duyarlı değildirler. Örneğimizde, 13 26 39 mesajı, her sayıyı 13'e bölerek ve ardından alfabetik olarak sıralayarak kırılabilir. Bununla birlikte, kod kitabı kriptanalizinin odak noktası, şifresiz metin mesajlarında aynı frekansla eşleşen bireysel kod öğelerinin karşılaştırmalı frekansıdır. frekans analizi. Yukarıdaki örnekte, 1001, 1002, 1003 kod grubu birden fazla meydana gelebilir ve bu frekans, ABC'nin düz metin mesajlarında görülme sayısıyla eşleşebilir.

(Geçmişte veya teknik olmayan bağlamlarda, kodu ve şifre genellikle herhangi bir şekilde atıfta bulunmak için kullanılır şifreleme ).

Bir ve iki parçalı kodlar

Kodlar, karşılık gelen düz metinleriyle listelenen kod gruplarının sözlükleri olan "kod defterleri" (fiziksel veya kavramsal) tarafından tanımlanır. Kodlar, orijinal olarak, tasarlanan kodun veya kodlayıcının rahatlığı için 'düz metin sırasına' atanmış kod gruplarına sahipti. Örneğin, sayısal kod grupları kullanan bir kodda, "a" ile başlayan bir düz metin kelimesi düşük değerli bir gruba sahipken, "z" ile başlayan bir yüksek değerli gruba sahip olacaktır. Aynı kod çizelgesi, bir düz metin mesajını kodlanmış bir mesaja veya "kod çözücüye" "kodlamak" ve bir kod deteksti tekrar düz metin mesajına "çözmek" için kullanılabilir.

Kod kırıcılar için hayatı daha zor hale getirmek için kodlayıcılar, kod grupları ve eşleşen düz metnin sıralaması arasında öngörülebilir bir ilişki olmayan kodlar tasarladılar. Pratikte bu, biri kodlama için kod gruplarını bulmak, diğeri de kod çözme için düz metin bulmak üzere kod gruplarını aramak için artık iki kod kitabının gerekli olduğu anlamına geliyordu. Bu tür "iki parçalı" kodlar geliştirmek için daha fazla çaba ve dağıtmak (ve değiştirildiğinde güvenli bir şekilde atmak) için iki kat daha fazla çaba gerektiriyordu, ancak kırılması daha zordu. Zimmermann Telgrafı Ocak 1917'de 10.000'den fazla kelime öbeği ve ayrı kelime içeren Alman diplomatik "0075" iki parçalı kod sistemini kullandı.[2]

Tek seferlik kod

Tek seferlik bir kod, basit bir mesajı iletmek için yalnızca bir kez kullanılması amaçlanan önceden düzenlenmiş bir kelime, kelime öbeği veya semboldür, genellikle bir planı yürütmek veya iptal etmek veya başarılı veya başarısız olduğunu onaylamak için sinyal verir. Tek seferlik kodlar genellikle masum bir sohbete dahil edilecek şekilde tasarlanır. Düzgün yapıldığında, bunları tespit etmek neredeyse imkansızdır, ancak zaten şüphe uyandırmış birinin iletişimlerini izleyen eğitimli bir analist, "Bertha Teyze doğum sancıları başladı" gibi bir yorumu uğursuz bir anlama sahip olarak kabul edebilir. Bir zaman kodunun ünlü örneği şunları içerir:

Bazen mesajlar önceden düzenlenmez ve umarım yalnızca alıcıların bildiği paylaşılan bilgilere dayanır. Bir örnek, ABD Başkanına gönderilen telgraftır. Harry Truman, sonra Potsdam Konferansı Sovyet başbakanı ile görüşmek Joseph Stalin, Truman'ı bilgilendirme ilk başarılı test bir atom bombası.

"Bu sabah uygulandı. Teşhis henüz tamamlanmadı, ancak sonuçlar tatmin edici görünüyor ve şimdiden beklentileri aşıyor. İlgi çok uzaklaştığı için yerel basın açıklaması gerekli. Dr. Groves memnun. Yarın dönüyor. Seni haberdar edeceğim."

Ayrıca bakınız Bir defalık ped, ilgisiz bir şifreleme algoritması

Aptal kodu

Bir aptal kod onu kullanan taraflarca oluşturulan bir koddur. Bu tür bir iletişim, sahadaki ordular tarafından kullanılan el sinyallerine benzer.

Örnek: "Gündüz" ve "gece" nin kullanıldığı herhangi bir cümle, "saldırı" anlamına gelir. Aşağıdaki cümlede bahsedilen konum, saldırıya uğrayacak yeri belirtir.

  • Düz metin: X saldırısı.
  • Kod metni: Gece gündüz sokaklarda yürüdük ama bulamadık! Yarın X'e gideceğiz.

Terimin erken bir kullanımı, bilim kurgu kitabındaki bir karakter olan George Perrault'a ait gibi görünüyor. Cuma[3] tarafından Robert A. Heinlein:

En basit [kod türü] ve dolayısıyla kırılması imkansız. İlk reklam, ilgili kişi veya kişilere yedi numarayı gerçekleştirmelerini veya yedi numarayı beklemelerini söyledi veya yedi olarak belirlenmiş bir şey hakkında bir şeyler söyledi. Bu, on numaralı kod öğesi için de aynı şeyi söylüyor. Ancak sayıların anlamı istatistiksel analiz yoluyla çıkarılamaz çünkü kod, yararlı bir istatistiksel evrene ulaşılmadan çok önce değiştirilebilir. Bu aptalca bir koddur ... ve eğer kullanıcı kuyuya çok sık gitmemek için sağduyulu ise aptalca bir kod asla kırılamaz.

Terörizm uzmanı Magnus Ranstorp, eylemi gerçekleştirenlerin 11 Eylül 2001 saldırılar Amerika Birleşik Devletleri'nde planlarını tartışmak için temel e-postayı ve "aptal kodu" dediği şeyi kullandı.[4]

Kodların kriptanalizi

Bir çözerken monoalphabetic ikame şifresi kolaydır, basit bir kodu çözmek bile zordur. Kodlanmış bir mesajın şifresini çözmek, yabancı bir dilde yazılmış bir belgeyi çevirmeye çalışmak gibidir; görev temelde kod gruplarının ve temsil ettikleri düz metin kelimelerinin bir "sözlüğünü" oluşturmakla ilgilidir.

Basit bir koddaki bir parmak tutulması, İngilizce'deki "the" veya "a" gibi bazı kelimelerin diğerlerinden daha yaygın olmasıdır. Telgraf mesajlarında, "DURDUR" için kod grubu (yani, cümlenin veya paragrafın sonu) genellikle çok yaygındır. Bu, mesajın yapısını, anlamları değilse de cümleler açısından tanımlamaya yardımcı olur ve bu, kriptanalitik olarak yararlıdır.

Aynı kodla şifrelenmiş birçok kod çözücünün toplanması ve ardından diğer kaynaklardan alınan bilgiler kullanılarak bir koda karşı daha fazla ilerleme sağlanabilir.

  • casuslar
  • gazeteler
  • diplomatik kokteyl partisi sohbeti
  • mesajın gönderildiği yer
  • gönderildiği yer (yani, trafik analizi )
  • mesajın gönderildiği zaman,
  • mesajın gönderilmesinden önce ve sonra meydana gelen olaylar
  • şifreli mesajları gönderen kişilerin normal alışkanlıkları
  • vb.

Örneğin, neredeyse yalnızca belirli bir ordudan gelen mesajlarda bulunan ve başka hiçbir yerde bulunan belirli bir kod grubu, o ordunun komutanını pek iyi gösteremez. Belirli bir konuma yapılan bir saldırıdan önceki mesajlarda görünen bir kod grubu, bu konum için çok iyi olabilir.

Beşikler kod gruplarının tanımlarına anında bir fikir verebilir. Kod grupları belirlendikçe, giderek daha fazla kod grubu bağlamından ve eğitimli tahminlerden açığa çıkarılarak kritik bir kitle oluşturabilirler. Tek parçalı kodlar bu tür eğitimli tahminlere karşı iki parçalı kodlardan daha savunmasızdır, çünkü tek parçalı bir kodun kod numarası "26839" "buldozer" olarak belirlenirse, daha düşük kod numarası "17598" büyük olasılıkla "a" veya "b" ile başlayan bir düz metin kelimesi. En azından basit bir parça kodları için.

"İçin çeşitli numaralar kullanılabilir"bitki Örneğin, bir düşmana karşı belirli bir zamanda ve konumda bir baskın gerçekleştirerek ve ardından baskından sonra gönderilen kod mesajlarını inceleyerek bilgileri kodlanmış bir mesaja "veya" ekin ". Kodlama hataları, bir koda özellikle yararlı bir parmak izidir; insanlar güvenilir şekilde hatalar yapın, bazen felaketle sonuçlanır.Veri dikmek ve hataları kullanmak şifrelere karşı da işe yarar.

  • Bir kodu kırmanın en açık ve en azından ilke olarak en basit yolu, kod kitabını rüşvet, hırsızlık veya baskın taraflarla çalmaktır - prosedürler bazen "pratik kriptografi" ifadesiyle yüceltilir - ve bu, her iki kod için de bir zayıflıktır ve şifreler, ancak kod defterleri genellikle daha büyüktür ve şifreden daha uzun kullanılır anahtarlar. İyi bir kodu kırmak şifrelemekten daha zor olsa da, kod kitaplarını yazma ve dağıtma ihtiyacı ciddi şekilde zahmetlidir.

Yeni bir kod oluşturmak, yeni bir dil oluşturmak ve onun için bir sözlük yazmak gibidir; bilgisayarlardan önce özellikle büyük bir işti. Bir kod tehlikeye atılırsa, tüm görev baştan yapılmalıdır ve bu hem kriptograflar hem de kod kullanıcıları için çok fazla çalışma anlamına gelir. Pratikte, kodlar yaygın kullanımdayken, kod kırıcıları engellemek ve çalınan veya kopyalanan kod kitaplarının kullanım ömrünü sınırlamak için genellikle periyodik olarak değiştirilirlerdi.

Kodlar oluşturulduktan sonra, kod kitabı dağıtımı lojistik açıdan beceriksizdir ve kodun tehlikeye atılma olasılığını artırır. "İki kişi ölürse üç kişi sır saklayabilir" diye bir söz vardır (Benjamin Franklin - Vikisöz ) ve abartılı bir şey olsa da, birkaç kişi arasında paylaşılırsa bir sırrı saklamak zorlaşır. Kodlar, yalnızca birkaç dikkatli kişi tarafından kullanılırsa makul derecede güvenli olarak düşünülebilir, ancak bütün ordular aynı kod kitabını kullanırsa, güvenlik çok daha zor hale gelir.

Aksine, şifrelerin güvenliği genellikle şifre anahtarlarının korunmasına bağlıdır. Şifre anahtarları çalınabilir ve insanlar onlara ihanet edebilir, ancak değiştirmek ve dağıtmak çok daha kolaydır.

Süper şifre

Kriptanalizin zorluğunu artırmak için bir mesajı ilk kodladıktan sonra şifrelemek yaygındı. Sayısal bir kodla, bu genellikle bir "katkı maddesi" ile yapılır - basitçe kod gruplarına basamak basamak eklenen uzun bir anahtar numarası, modulo 10. Kod kitaplarından farklı olarak, katkı maddeleri sık sık değiştirilirdi. Ünlü Japon Donanması kodu, JN-25, bu tasarımdaydı.

Referanslar

  1. ^ ABD İletişim Güvenliği Tarihi; David G. Boak Dersleri, Ulusal Güvenlik Ajansı (NSA), Cilt I, 1973, Cilt II 1981, 2008'de kısmen yayınlandı, ek bölümler 14 Ekim 2015'te kaldırıldı
  2. ^ "Zimmermann Telegram: Orijinal Taslak", 2007, Joachim von zur Gathen, "Cryptologia", Cilt 31, Sayı 1
  3. ^ Cuma (1982) tarafından Robert A. Heinlein
  4. ^ Radio Free Europe / Radio Liberty: "Ortadoğu: İslami Militanlar Cihadı İnternete Taşıyor" Yazar Jeffrey Donovan, 16 Haziran 2004.

Kaynaklar

  • Kahn, David (1996). Codbreakers: Eski Zamanlardan İnternete Gizli İletişimin Kapsamlı Tarihi. Yazar.
  • Pickover, Uçurum (2000). Cryptorunes: Kodlar ve Gizli Yazma. Nar İletişimi. ISBN  978-0-7649-1251-1.
  • Boak, David G. (Temmuz 1973) [1966]. "Kodlar" (PDF). ABD İletişim Güvenliği Tarihi; David G. Boak Lectures, Cilt. ben (2015 sınıflandırma kaldırma incelemesi ed.). Ft. George G. Meade, MD: ABD Ulusal Güvenlik Ajansı. s. 21–32. Alındı 2017-04-23.

Ayrıca bakınız