Kriptografi

Kriptoloji, şifre bilimidir. Çeşitli iletilerin, yazıların belli bir sisteme göre şifrelenmesi, bu mesajların güvenlikli bir ortamda alıcıya iletilmesi ve iletilmiş mesajın deşifresiyle uğraşır. Günümüz teknolojisinin baş döndürücü hızı göz önünde alındığında, teknolojinin gelişmesiyle ortaya çıkan güvenlik açığının da taşıdığı önem ortaya çıkmaktadır. Kriptoloji; askerî kurumlardan, kişiler arası veya özel devlet kurumları arasındaki iletişimlerden, sistemlerin oluşumunda ve işleyişindeki güvenlik boşluklarına kadar her türlü dalla alakalıdır. Kriptoloji bilimi kendi içerisinde iki farklı branşa ayrılır Kriptografi; şifreleri yazmak ve Kriptanaliz;
şifreleri çözmek ya da analiz etmek ile uğraşır.
Modern Kriptoloji temelde üç görevi yerine getirmek için kullanılır.
Verinin okunmasını ve değiştirilmesini engelleme ve verinin belirtilen kişi
tarafından gönderildiğinin garanti altına alınması. Bir hacker yada kötü niyetli
herhangi bir kişi internet gibi güvenli olmayan ortamlarda iki merkez arasındaki haberleşmeleri dinleyebilir ve bu haberleşmelerde gönderilen veriler üzerinde işlemler yapabilir. Bu işlemler genelde üç şekilde olabilir. Verinin gitmesini engelleme (intercept), veriyi sadece okuma (read), veriyi değiştirme (modify). Bu tip işlemlerin yapılmasını engellemek amacıyla şifreleme bir bilim olarak çalışmaktadır. 
Kriptolojik yapılara basit birkaç örnek verecek olursak tarihten günümüze
kullanılan bazı şifreleme teknikleri şunlardır: Tarihin ilk kriptolojik fikirleri İngilizcede transposition and substitution cipher adını taşır, yani yer değiştirme ve harf değiştirme şifrelemesi.

Yazar:

Siber Güvenlik

İçindekiler

1.   Özet

2.   Gizli Anahtarlı Sistemlerin Analizi

3.   Blok şifrelerin analizi:

3.1. Lineer Kriptoanaliz.

3.1.1. Yığma Prensibi

3.1.2. S-Box Analizi

3.1.3. DES (Data Encryption Standard) Algoritması

3.1.4. 3DES Algoritması

3.1.5. Basit Şifreleme Yöntemi

3.1.6. AES (Advanced Encryption Standard- Gelişmiş Şifreleme Standartı) Algoritması

3.2. Diferansiyel Kriptoanaliz.

Kaynakça

Şekiller ve Tablolar

Şekil 1 X Girişlerine Karşılı Y Çıkışlarını Gösteren S-Box görüntüsü.

Şekil 2  Doğrusal denklem çıkarılırken izlenen yollar

Şekil 3 Feistel (F) Fonksiyonu.

Şekil 4 DES Algoritması

Şekil 5 6×4 bitlik S-box

Şekil 6 3DES Algoritmasının Akış Diyagramı

Şekil 7  Basit Şifreleme Yönteminin 4-round Hali

Şekil 8 AES Şifreleme Algoritmasının  Genel Yapısı

1.    Özet

Kriptoloji, şifre bilimidir. Çeşitli iletilerin, yazıların belli bir sisteme göre
şifrelenmesi, bu mesajların güvenlikli bir ortamda alıcıya iletilmesi ve iletilmiş mesajın deşifresiyle uğraşır. Günümüz teknolojisinin baş döndürücü hızı göz önünde alındığında, teknolojinin gelişmesiyle ortaya çıkan güvenlik açığının da taşıdığı önem ortaya çıkmaktadır. Kriptoloji; askerî kurumlardan, kişiler arası veya özel devlet kurumları arasındaki iletişimlerden, sistemlerin oluşumunda ve işleyişindeki
güvenlik boşluklarına kadar her türlü dalla alakalıdır. Kriptoloji bilimi kendi
içerisinde iki farklı branşa ayrılır Kriptografi; şifreleri yazmak ve Kriptanaliz;
şifreleri çözmek ya da analiz etmek ile uğraşır.

Modern Kriptoloji temelde üç görevi yerine getirmek için kullanılır.
Verinin okunmasını ve değiştirilmesini engelleme ve verinin belirtilen kişi
tarafından gönderildiğinin garanti altına alınması. Bir hacker yada kötü niyetli
herhangi bir kişi internet gibi güvenli olmayan ortamlarda iki merkez arasındaki
haberleşmeleri dinleyebilir ve bu haberleşmelerde gönderilen veriler üzerinde
işlemler yapabilir. Bu işlemler genelde üç şekilde olabilir. Verinin gitmesini
engelleme (intercept), veriyi sadece okuma (read), veriyi değiştirme (modify). Bu
tip işlemlerin yapılmasını engellemek amacıyla şifreleme bir bilim olarak
çalışmaktadır. 

Kriptolojik yapılara basit birkaç örnek verecek olursak tarihten günümüze
kullanılan bazı şifreleme teknikleri şunlardır: Tarihin ilk kriptolojik fikirleri İngilizcede transposition and substitution cipher adını taşır, yani yer değiştirme ve harf değiştirme şifrelemesi.

2.   Gizli Anahtarlı Sistemlerin Analizi

Kriptanaliz şifreleme algoritmasının detaylarına ulaşma gücüne sahiptir ve sistemde sadece anahtar gizlidir. Bu prensibe göre tasarlanmış ve günümüzde çok etkili olan birçok algoritma vardır. İkinci dünya savaşında İngiliz ve Polonyalı matematikçiler Alman enigma makinelerinin analizini yaparak algoritmayı kırmayı başarmışlardır. Benzer şekilde farklı bir algoritma olan RC4 algoritması da kırılmıştır. Bir kriptanalizcinin amacı şifreli metni herhangi bir algoritma kullanarak açık metne çevirmektir. Kriptanaliz bu işi, genellikle, gizli anahtarın tamamını veya birkısmını elde ederek yapar. Günümüzde kullanılan bazı kriptanaliz senaryoları aşağıdaki gibi sıralanabilir:

  1. Sadece Şifreli Metin Atağı (Ciphertext Only): En etkili kriptanaliz atağıdır. Sadece haberleşme yeteri kadar dinlenip yeterli miktarda şifreli metin elde edilerek uygulanır.

2. Bilinen Açık Metin Atağı (Known Plaintext): Dinlemeler sonucu bir
miktar şifreli-açık metin çifti elde edilince uygulanabilir. Bilinenlere dayanılarak
bazı şifreli metinlerin açık halinin tahmini esasına dayanır.

3. Seçilmiş Açık Metin Atağı (Choosen Plaintext): Analizcinin seçtiği açık metinleri şifreleyebildiği varsayılan bir atak senaryosudur. Analizci şifreleme algoritmasının güvenli olarak yerleştirildiği mekanizmayı elde edebilir. Analizci haberleşmede aktif rol oynar. [1]

3.     Blok şifrelerin analizi:

Blok şifrelerin analizinde en kuvvetli analiz metodları olarak bilinen iki analiz yöntemini vardır. Biham ve Shamir tarafından geliştirilen diferansiyel kriptanaliz (diferential cryptanalysis) ve Matsui tarafından geliştirilen doğrusal kriptanaliz (linear cryptanalysis).

3.1. Lineer Kriptoanaliz

Doğrusal kriptanaliz, büyük miktarda düz metin Şifreli metin çiftleri, anahtar bitlerinin değerini belirlemek için kullanılır. 8 yuvarlak varyant için DES’te doğrusal kriptanaliz, yalnızca şifreli bir bağlamda da uygulanabilir.

Bir blok şifrelemeye doğrusal kriptanaliz uygulamak için bir koşul, doğrusal ifadeler. Let bir [ ı 1 , i 2 , …, I , bir ] bit bit cinsinden toplamı olarak A ile bir seçim kümesindeki endeksler {i 1 , i 2 , …, i a } , yani,

A [ i 1 , i 2 , …, ben a ] = A [ i 1 ] + A [ i 2 ] + ··· + A [ i a ] .

P, C ve K , sırasıyla düz metin, şifreli ve anahtarı belirtmektedir. Bir doğrusal ifade, aşağıdaki türde bir ifadedir.

Doğrusal İfade Şifreleme

ile i 1 , i 2 , …, I , bir j 1 , j 2 , …, J b ve k 1 k, 2 , …, k, C sabit bit konumları. Bu tür a doğrusal kriptanalize ekspresyonu ile verilir doğrusal | p – 1 / 2 | ile p sahip olma olasılığı. Denklemin sol tarafının değerini kontrol ederek çok sayıda şifresiz metin-şifreli metin çifti, sağ taraf tahmin edilebilir. En sık ortaya çıkan değeri almak. Bu, hakkında tek bir bilgi verir. Küçük açık metin-şifreli çiftlerinin sayısı daha büyük ise, | p – 1 / 2 | – 2 .  benzer bir doğrusal ifade kullanan bilgidir. Düz metin veya şifreli metin bitleri içermeyen, bunun yerine ara bitleri içeren şifreleme değerleri I 1 ve I 15 sırasıyla tek bir turdan sonra ve tek bir tur hariç tümü,

Bir alt değerleri üstlenerek ν k , birinci ve son tur alt anahtar bitlik de oluşan I 1 ve I 15 bitleri hesaplanabilir. Bu bitler doğru değerleri indisleri ile anahtar bit yönelmişti ν k doğrudur. Büyük bir düz metin-şifreli metin çiftlerinin l sayısı , tüm bitlerin ν k cinsinden doğru değerleri ve denklemin sağ tarafının değeri aşağıdaki şekilde belirlenebilir. Hepsi için ν k indisli anahtar bitlerin değerleri, şifresiz metin-şifreli metin çiftlerinin sayısı geçerli olduğu sayılır. Doğru varsayım için bunun beklenen değeri toplamı pl veya (1 −p ) l’dir . Yuvarlak dönüşümün doğrusal olmayan davranışı sayesinde bu toplamın, yanlış varsayılan tüm alt anahtarlar için önemli ölçüde daha az yanlılığa sahip olması beklenmektedir. P olasılığını tutan doğrusal bir ifade verildiğinde, olasılık Bu algoritmanın yanlış bir tahmine yol açtığı, düz metin sayısı çok küçükse şifreli çiftleri önemli ölçüde daha büyük (bir faktör 8 daha demek) olan | s – 1 / 2 | – 2 kaynaklanır .

Bu saldırının yakın zamandaki bir iyileştirmesinde bu faktör 8, 1’e düşürülmüştür. Dolayısıyla Her iki değerini varyantları – p | 1 / 2 | saldırının iş faktörü için kritiktir.

Etkili doğrusal ifadeler iki denklemde de tekli “zincirleme” ile oluşturulur. Yuvarlak doğrusal ifadelerdir. Bir ( m – 1) yuvarlak doğrusal ifade, bir tek yuvarlak doğrusal ifade ekleyerek m -yuvarlak doğrusal ifade öyle ki tüm ara bitler iptal edilir:

Ortaya çıkan doğrusal ifadenin geçerli olma olasılığının 1 ile yaklaşık olarak / 2 + 2 ( p 1 – 1 / (2) p 2 – 1 / bileşen doğrusal verilen, 2) ifadeler sırasıyla p 1 ve p 2 olasılıkla tutulur.

DES tek turlu doğrusal ifadeler ve olasılıkları şu şekilde incelenebilir: yuvarlak dönüşümün hesaplama grafiğindeki bağımlılıkları gözlemlemek. Seçilen yuvarlak çıktı bitleri, çıktıda bir seçim modelini tamamen belirtir.

S-kutuları. Sol yarıdan yalnızca yuvarlak çıktı bitleri seçilirse, bu aşağıdakileri içerir. Hiçbir S-box çıktı biti yok, bu da olasılıkla tutulan doğrusal ifadelerle sonuçlanıyor. Bunlar aşağıdaki türdendir;

Buna önemsiz bir ifade denir . Görünüşe göre, en kullanışlı, önemsiz olmayan yuvarlak doğrusal ifadeler yalnızca tek bir S kutusundan gelen bitleri seçer. Verilen için S-box, tüm olası doğrusal ifadeler ve olasılıkları ayrıntılı olabilir. S kutularından önceki temel uygulamayla birlikte, bu hatların her biri kulak ifadeleri tek yuvarlak doğrusal ifadeye dönüştürülebilir. En çok DES için etkili çok turlu doğrusal ifadeler birleştirilerek oluşturulur. Yalnızca çıktı bitlerini içeren doğrusal ifadelere sahip tek turlu önemsiz ifadeler tek bir S-box. Ortaya çıkan en etkili 14-yuvarlak doğrusal ifadenin bir probu vardır. [2]

1 kabiliyeti / 2 ± 1 . 19 × 2 21

Doğrusal Kriptanaliz 1993 yılında DES sistemini kırmak için Matsui
tarafından geliştirilmiş bir bilinen açık metin atak çeşididir. 247 açık metin
kullanılarak DES sistemi kırılmıştır. Doğrusal olmayan (nonlinear) fonksiyonlara
doğrusal (linear) fonksiyonlarla yaklaşarak yapılmıştır. Bu yaklaşım olasılık
üzerine dayalı olduğu için 0,5’ten ne kadar sapılırsa fonksiyonun yerine doğrusal
fonksiyonlar kullanmak bu sapma miktarı kadar avantaj kazandırır.

Lineer kriptanaliz; düz metin, şifreli metin ve döngü anahtarlarının bitleri kullanılarak oluşturulan lineer denklemlerin bazılarının yüksek olasılıkla doğru olmasını kullanılarak yapılan atak şeklidir. Atak yapan kişinin elinde düz metin-şifreli metin çiftlerinin olması durumunda yapılabilen bir ataktır. Ancak, atak yapan kişi, istediği düz metin-şifreli metin çiftini oluşturamaz. Dolayısıyla bu çiftlerin rastgele bilgiler olduğu varsayılır. Buradaki temel fikir şudur: şifreleme yapılırken kullanılan herhangi bir denklemi, lineer olan başka bir denklem şeklinde yazmaktır. Bahsedilen bu lineer denklem şu şekildedir:

Burada Xi, işlemin girdisi olan X in i. bitini, Yj de işlemin çıktısı olan Y nin j. bitini ifade etmektedir. Bu eşitlik, u girdi bitinin ve v çıktı bitinin birbiriyle XOR lanmasını göstermektedir. Lineer kriptanalizde amaç, yukarıda açıklanan biçimde denklemler yazarak, bu denklemlerin yüksek veya düşük olasılıkla doğru olanlarını belirlemektir. Eğer bir şifreleme yönteminde yukarıdaki şekilde olan ve
yüksek veya düşük olasılıkla doğru olan denklemler bulabilirsek, bu bize bu şifreleme yönteminin zayıflığını gösterir. Mükemmel bir şifreleme algoritması olsaydı, yukarıdaki şekilde yazılabilecek herhangi bir denklemin doğru olma olasılığı ½ olurdu. Lineer kriptanaliz, ½ olasılığından sapmaları inceleyerek bu
sapmaları kullanmaya çalışmaktadır. Bu sapmalara doğrusal olasılık sapması (linear probability bias) denir ve pL> ½ veya pL< ½ olması linear kripto analiz için eşit derecede etkilidir. Bu açıklık SPN ağındaki tek doğrusal olmayan kısım olan S-Box (yerine koyma) blokları düşünülerek yapılacaktır. Bir kere S-Box ların giriş ve çıkışları arasında doğrusal yaklaşımlar ifade edilebilirse ve sonradan bu ifadeler birbirlerine eklenip en sonunda tüm sistem için doğrusal bir ifade elde edilebilir. Bu işin temelinde Yığma prensibi (piling up Lemma ) kullanılmaktadır. O yüzden ilk önce yığma prensibi üzerinde durulacaktır. [3]

3.1.1. Yığma Prensibi

Elimizde iki rastgele ikili değişken olduğunu varsayalım, bunlar da X1 ve X2 olsun. X1 Å X2 = 0 lineer denkleminin doğruluk tablosunu oluşturalım. Burada, X1 ve X2 nin olasılık dağılımı aşağıdaki gibi ise:

ve iki değişken birbirinden bağımsız ise:

ve buradan şunu çıkarabiliriz:

3.1.2. S-Box Analizi

Bir saldırı başlatılmadan önce S-Box lardaki doğrusal açıklıkların varlığını tespit edilmesi gereklidir. Giriş X=[X1 X2 X3 X4] ve karşılık çıkışları Y=[Y1 Y2 Y3 Y4] dikkate alındığında tüm doğrusal yaklaşımların sapmaları incelenir.

Şekil 1 X Girişlerine Karşılı Y Çıkışlarını Gösteren S-Box görüntüsü

Örneğin denklem düşünüldüğünde, lineer denklemini, X in bütün olası değerleri için incelersek, 16 durumdan 12 sinde doğru olduğunu görürüz. Yani bu denklemin doğruluk oranı 12/16 – ½ = ¼ olur. Bu tablo da gözükmektedir. Benzer şekilde tablo  incelediğinde X1⊕X4 = Y2 için sapma olasılığının 0 iken, X3⊕X4 = Y1⊕Y4 sapması 2/16- 1/2= -3/8 olacaktır.

Tablo 1 S-Box kutusu için Örnek Lineer yaklaşım

X ve Y değerlerinin olası bütün lineer denklem kombinasyon denklemlerini incelersek, aşağıdaki tabloyu elde ederiz. Tablodaki her sayı, girişlerin toplamı olarak ifade edilen doğrusal denklem ile, çıkışların toplamı
olarak ifade edilen doğrusal denklem Eşitlik durumlarının 8 den çıkarılmış halini göstermektedir.

Tablo 2 Doğrusal Yaklaşım Tablosu

S-Boxlar için doğrusal yaklaşım yapıldıktan sonra komple sistem için bir doğrusal yaklaşım hazırlanmak kolaylaşacaktır. Bu bölümde olası bir sistem için komple sistem doğrusal yaklaşımının nasıl yapılacağı bir örnek üzerinden anlatılmaya çalışılacaktır. Daha önceden de ifade edildiği gibi giriş bitleri ve çıkış bitleri arasında oluşturulacak doğrusal bir denklem ara anahtarların bir kısım bitlerine erişmek için bilgi verecektir.

Şekil 2  Doğrusal denklem çıkarılırken izlenen yollar

Anahtarları Çıkarma:

R-1 inci turun sonundaki doğrusal denklemi elde etmek anahtarları çözmek için yeterli K5 in bitlerini ayırmak mümkün olacaktır. Bulunan Doğrusal denklemden etkilene son tura ait S-Boxlarla ExOr işlemine sokulan K5
11 anahtarına ait bitler Tahmin için hedef seçilen bitler olacaktır. Daha önceden elde edilmiş çok sayıda açık metin şifreli metin çiftinden yararlanılarak en son Tur 3. Tur a kadar tahmin edilen Anahtar bitleri ile kısmi olarak deşifre edilir. Her bir anahtar tahmin değerine bir sayaç ilişkilendirilir ve sayaç bilinen sade metin şifrelenmesi
ile hesaplanan doğrusal denklem üzerinden örtüşüyorsa değeri 1 arttırılır. Doğru tahmin edilmiş hedef bitlerin olasılığı daha ½ den oldukça uçak olacaktır. Bu şekilde kısmı olarak bitler bulunduktan son diğer bitlerde açığa çıkarılır.

1/32 = 0.03125 e en yakın seçilen anahtara alt seti uygun anahtar olarak belirlenir.

3.1.3. DES (Data Encryption Standard) Algoritması

DES simetrik blok şifreleme algoritmasıdır. 1997’de resmi bilgi şifreleme standardı olarak kabul edilirken, 2000’de yerini AES’e bırakmıştır.

DES, büyük boyutlu verilerin şifrelenmesinde kullanılır. Blok şifreleme yöntemi içinde turlar/döngüler kullanılarak şifreli metin ile açık metin arasındaki ilişki azaltılmaya çalışılmaktadır. Her şifreleme adımına döngü denilir ve her döngüde kullanılan anahtar farklıdır. Açık mesaj, belirli uzunluktaki bloklara bölünür ve ayrı ayrı şifrelenen bloklar ile şifreli metin elde edilir. Her bir blok, 8 bit parity biti olmak suretiyle, 64 bit uzunluğundadır. Blok uzunluğu, kullanılan işlemci hızına göre değişebilir. Yeni dönem bilgisayarlarda, 128 bit kullanılmaya başlanmıştır.

DES şifrelemenin en büyük dezavantajı yavaş olmasıdır. Bu yöntemde bilinmezlik fazladır; her bir bloğun her biti, diğer bitler ve anahtar ile bağımlıdır.

DES, bağımlılık fazla olmasına rağmen, modern bilgisayarlara dayanamaz. Brute Force ataklarına karşı güvensizdir. Bu noktada DES’in güvenilirliğini artırmak için 3DES yöntemi geliştirilmiştir. Bu yöntemde, şifrelenen veri farklı anahtar(lar) ile tekrar geri çözülür ve DES şifrelemesi 3 sefer ard arda yapılır ( ciphertext = EK3(DK2(EK1(plaintext))) ) [2] Şifreleme için kullanılan ve uzunluğu 24 byte olan anahtar, 3 bloğa ayrılır. İlk 8 byte ile şifreleme yapılır, buraya kadar olan kısım DES işlemidir. Daha sonra şifrelenen metin ortadaki 8 byte ile çözülür ve son 8 byte ile tekrar şifrelenerek 8 byte’lık blok elde edilir. DES’e göre güvenilirliği fazladır fakat hız 3 kat daha azalmıştır. Her byte bir eşlik biti bulundurur. Dolayısı ile kullanılan anahtar 168 bittir. (24*7=168)

DES’i kırmak için yüksek maliyetle son teknoloji makineler geliştirilmiş olmasına rağmen 3DES, bankalar ve devlet daireleri olmak üzere birçok ortamda kullanılmaya devam etmektedir.

Şekil 3 Feistel (F) Fonksiyonu

DES Algoritması, Feistel fonksiyonlarının ardışık kullanımından oluşmaktadır. Şekil de Feistel algoritması, Şekil de DES Algoritması gösterilmiştir. Burada amaç, DES algortimasını detaylı olarak anlatmak yerine, DES Algoritmasının genel yapısını anlatmaktır. DES i güvenli kılan kısmı, lineer olmayan bir transform işlemi olan S-box fonksiyonudur. Şekil  de 8 adet Sbox (S1 – S8) görülmektedir. Her bir S-box, 6 bitlik datayı alarak 4 bitlik data üretmektedir. S-box fonksiyonunun doğruluk tablosu aşağıda ki Şekil 3 de gösterilmiştir.

Şekil 4 DES Algoritması
Şekil 5 6×4 bitlik S-box

Örnek olarak, S-box fonksiyonuna input olarak 011011 verirsek, ilk ve son bit 01 olacak, orta 4 bit de 1101 olacaktır. Sonuç, 1001 olur.

3.1.4. 3DES Algoritması

3DES algoritması, DES algoritmasının ardarda üç kez çalıştırılması ile elde edilmiştir. Dolayısıyla DES algoritmasına göre daha güvenlidir. 3DES iki ayrı anahtar kullanarak üçlü şifreleme yapmaktadır. Üç değilde iki anahtar kullanmasının nedeni ise Brute Force (Kaba Kuvvet) saldırılarına karşı yeterli olmasındandır. 3DES algoritması DES algoritmasına göre 2 kat daha fazla güvenlik sağlamaktadır ki bu da; 112 bitlik bir anahtara karşılık gelmektedir. Ve bu güvenlik bütün şifreleme işlemi boyunca da orantılı olarak artmaktadır.

Şekil 6 3DES Algoritmasının Akış Diyagramı

3.1.5. Basit Şifreleme Yöntemi

DES e benzer şekilde dizayn edilmiş, temel Yerine Koyma-Permütasyon Ağı fikrine dayalı bir yöntemdir. Bu yöntem, Şekil de gösterilmiştir. Şekilde 4 roundluk bir algoritma gösterilmiş olmakla beraber, biz lineer kriptanaliz için 2 roundluk bir algoritma kullanacağız. Bu SPN ağında 16 bitlik açık metin 4 er bitlik bloklara ayrılıp S-Box adı verilen yerine koyma bloklarına gönderilir. Bu bloklar doğrusal olmayan şekilde çalıştıkları için Asıl güvenli olan kısım burasıdır. Şekil de bu S-BOX ların çalışmasına bir örnek verilmiştir.

Şekil 7  Basit Şifreleme Yönteminin 4-round Hali

Her döngü (round), 3 işlemden oluşmaktadır: – Yerine Koyma: Burada yerine koyma fonksiyonu, şekilde S harfi ile gösterilmiştir. Yerine koyma işlemi, Tablo da gösterilmiştir.

Tablo 3 Yerine Koyma Fonksiyonu (hexadecimal olarak gösterilmiştir).

Permütasyon: Permütasyon işlemi, eldeki verinin bitlerinin basit bir şekilde yer değiştirmesidir. Kullandığımız şifreleme algoritmasındaki permütasyon işlemi, Tablo da gösterilmiştir. Örnek olarak, 10. sıradaki bitin yeri değiştirilerek 7. sıraya yazılacaktır.

Tablo 4 Permütasyon Fonksiyonu (hexadecimal olarak gösterilmiştir).

Anahtar Ekleme: Anahtar ekleme işlemi, basit bir XOR işlemidir. Round anahtarı, şekil 4 de gösterildiği gibi, permütasyon işleminden geçmiş data ile XOR lanacaktır. Şifre çözme işlemi, şifreleme algoritmasında uygulanan işlemlerin tam tersi uygulanarak yapılır.

3.1.6. AES (Advanced Encryption Standard- Gelişmiş Şifreleme Standartı) Algoritması

Blok şifreleme algoritmalarında en yaygın olarak kullanılan algoritma simetrik şifreleme algoritmasıdır. 2002 yılında şifreleme algoritmaları arasında kendisine yer bulmuştur. AES’in Rijndael adıyla anılması ise bu algoritmanın geliştiricileri olan Vincent Rijmen ve John Daemen’nın adlandırmasıdır. AES 128 bit uzunluğundaki blok ile, uzunluğu 128 bit, 192 bit ya da 256 bit anahtar alternatiflerini kullanır. Bayt’ların yer değiştirmesi ve kullanılan tekniklerden bazıları, 4×4’ lük matrisler üzerindeki metinin satırlarına yapılan kaydırma işlemidir. SPN algoritmasının geniş bir çeşididir. Kullanılan anahtar uzunluğuna göre döngü sayısı değişmektedir. Şifrelemede, 10 döngü için 128 bit anahtar kullanırken, 192 bit anahtar için 12 döngü ve 256 bit anahtarlar için de 14 döngü ile şifreleme işlemini gerçekleştirmektedir.

Byte’lar yerdeğiştirirken oluşturulan 16 byte 8 bit’i giriş ve 8 bit!i de çıkış olmak üzere S kutusuna gönderilir. S-kutusundaki değerler, Galois cisminde (Galois Field-GF) GF (28), 8 bitlik polinom için ters alındıktan sonra lineer bir dönüşümle oluşturulmuştur. Satırların ötelenmesi işleminde ise 16 bölümden oluşan matrisdeki satırlar ötelenir ve sütunların karıştırılması işleminde sütunlar kendi içinde karıştırılır. Son aşamada ise oluşturulan döngü anahtarı XOR’lama yapılarak işlem sonlandırılır. (XOR veriler anahtar bilgiler ekler). [4]

Şekil 8 AES Şifreleme Algoritmasının  Genel Yapısı

3.2. Diferansiyel Kriptoanaliz

Diferansiyel kriptanaliz, büyük bir düz metin-şifreli metin çiftlerinin miktarı, anahtar bitlerinin değerini belirlemek için kullanılır. İstatistiksel anahtar bilgileri, şifreleme yoluyla elde edilen şifreli metin bloklarından çıkarılır. Hedef anahtarın altında belirli bir bitsel fark A olan düz metin blok çiftlerinden oluşur.

Saldırının iş faktörü kritik olarak en büyük olasılığa bağlıdır P ( B | A ) B ile kriptografik fonksiyonun bazı sabit ara aşamalarında bir fark vardır. Örneğin, son raundun girişinde. İlk yaklaşımda olasılıklar DES için P ( B | A ) ‘nın, anahtarın belirli değerinden bağımsız olduğu varsayılır.

Anahtar bilgiler, çıkış çiftlerinden aşağıdaki şekilde çıkarılır. Her biri için

çifti, ara farkın B’ye eşit olduğu varsayılır . Mutlak değerler çıkış ve (varsayılan) ara farkı B üzerine kısıtlamalar son yuvarlak anahtarın birkaç l anahtar biti. Bir çiftin alt anahtarı önerdiği söyleniyor. Bu kısıtlamalarla uyumlu değerler. Bazı çiftler için birçok anahtar diğer çiftler için hiçbir anahtar bulunmaması, çıkış değerlerinin B ile uyumsuzdur . Önerilen her alt anahtar değeri için, bir frekans tablosu artırılır. Alt anahtarın doğru değeri önemli ölçüde önerilirse saldırı başarılı olu. Eşit olmayan ara farkı olan çiftler için B yanlış çiftleri denir. Bu çiftler tarafından önerilen alt anahtar değerleri genel olarak yanlış. B’ye eşit bir ara farka sahip sağ çiftler, yalnızca doğru alt anahtar değeri, ancak çoğu zaman bir dizi yanlış alt anahtar değeri. DES için yanlış öneriler, olasılar arasında eşit olarak dağıtılmış olarak düşünülebilir.

Herhangi bir C = B için P ( B | A ) değeri P ( C | A ) ‘ dan önemli ölçüde büyükse anahtar değerleri. Bu koşullar altında sayı arasındaki oranı hesaplamak mantıklıdır. Doğru değerin kaç kez önerildiği ve giriş başına ortalama öneri sayısı, sözde sinyal-gürültü veya S / N oranı . Tablonun boyutu 2 l ve ortalama ise çift ​​başına önerilen alt anahtar sayısı γ , bu oran P ( B | A ) 2 l / γ’ye eşittir.

S / N oranı, benzersiz şekilde tanımlamak için gereken doğru çiftlerin sayısını güçlü bir şekilde etkiler.1-2’lik bir oran için yaklaşık 20-40 doğru çift yeterlidir. Daha büyük oranlar için yalnızca birkaç doğru çift gereklidir ve 1’den çok daha küçük oranlar için gerekli miktarda doğru çift pratik bir saldırı gerçekleştirilemez.

Büyük olasılıklar P ( B | A ), sözde karakterlerin yapısı ile yerelleştirilir. Bir m- yuvarlak özelliği, bir m + 1-grup fark modelini oluşturur:

( X 0 , X 1 , …, X m ). Bu özelliğin olasılığı, İlk fark model X 0 fark kalıplarına yayılır x 1 , x 2 , …, x m kaydederken, sırasıyla peş peşe 1, 2,. . . , m mermi. Yayılma olasılığının dan X i 1 için X i gelen yayılma bağımsızdır X 0 için X i− 1 , bu olasılık tarafından verilir.

P ( X i | X i− 1 ) ile X fark modelinin olasılığı girişinde i input 1 yuvarlak dönüşüm , çıktısında X i’ye yol açar . Dolayısıyla, çok turlu karakteristik bir dizi tek turlu özelliğe ( Xi− 1 , X i ) olasılıkla P ( X i | X i− 1 ).

DES için yüksek olasılık özelliklerinin oluşturulmasında ki avantaj, yuvarlak dönüşümdeki doğrusallıktan alınmıştır. Tek tur özellikleri form ( Li− 1 Ri− 1 , Li Ri ) R, i = L ile i− 1 ve L i = R i− 1 = 0 olasılığa sahip 1 ve önemsiz olarak adlandırılır . En olası, önemsiz olmayan tek turlu karakteristikler, sekiz S kutusunun yalnızca küçük bir kısmını etkileyen bir giriş farkı modeli.

Yüksek olasılıklı yinelemeler oluşturmak için önemsiz özelliklerden yararlanılmıştır. Özellikler, yani periyodik farklılıklar dizisine sahip özellikler. En yüksek olasılığa sahip yinelemeli karakteristiğin periyodu 2’dir. İlgili ikisinden tek yuvarlak özellikler, biri önemsizdir. Diğerinde sıfırdan farklı bir fark vardır. Sıfıra yayılan üç komşu S kutusunun girişindeki ferans örüntüsü olasılık S-kutuları çıkışındaki fark desen 1 / 234. Bu nedenle, Elde edilen yinelemeli özellikleri 1 bir olasılık var / 2 tur başına 234 dür. [4]

Diferansiyel Kriptanaliz methodu DES, GDES, Lucifer, FEAL, PES,
IDEA, LOKI’89, REDOC ve Khafre dâhil olmak üzere birçok sayıda blok şifre
sistemine uygulanmış bir seçilmiş açık metin atağıdır. Biham ve Shamir
tarafından geliştirilen bu atak, ilk önce DES in indirgenmiş döngü çeşitlerine ve
sonra tüm 16-döngü DES e uygulanmıştır. Günümüzde bilinen en önemli
ataklardan birisidir çünkü DES in anahtarları teorik olarak tüm anahtar uzayını
denemeyle beklenen masraftan daha azı ile elde edilebilinmektedir. Diferansiyel
Kriptanaliz, kriptosistemlerin yeniden gözden geçirilmesine, tekrar dizayn
edilmesi ve yeni sistemlerinin bu atağa karşı dayanıklı tasarlanmalarına neden
olmuştur. Bu kriptanaliz metodu açık metin ikilileri farkının bunlara karşılık gelen
kapalı metin ikilileri üzerindeki etkisini kullanarak analiz yapar. Bu farklar olası
anahtarları ihtimal atamak ve ihtimali en yüksek anahtarları belirlemek için
kullanılır. Aynı farka sahip olan birçok açık metin ikilisini ve karşı gelen kapalı
metin ikililerini kullanır. [1]

Şimdi 2n bit blok uzunluğundaki blok şifreleme sistemlerini analizine değinelim. İlk önce eşit uzunluktaki iki bit dizinin X ve X& arasındaki farkı (difference) tanımlayalım.

Burada ⊗ ; bit dizi grupları üzerinde, döngü fonksiyonu üzerinde anahtar ile
metin girdisinin birleştirilmesini sağlayan bir grup operasyondur ve X& -1 de ⊗
işlemine göre X in tersidir. Yukarıdaki farkı tanımlamada asıl amaç metin
girdileri arasındaki farkın anahtar eklenmeden ve eklendikten sonra aynı olması
yani farkın anahtardan bağımsız yapılması çabasıdır. Bu bakış açısını anlamak
için:

Feistel yapısındaki blok şifre sistemlerinin birçoğu için bu farkı kullanarak şifre sistemin bir döngüsü için olası tüm metin girdi farklarına ve bunlara karşılık gelen olası çıktı farklarının ilgili olasılıklarını içeren fark dağılım tabloları oluşturmak mümkündür.

Açık metnimiz P = C0 ve Ci de i döngü şifrelemesinden oluşan kapalı metnimiz olsun. αi , ∆Ci ’nin beklenen değeri ve α0 seçilen ∆P = ∆C0 olmak üzere bir r-döngü karakteristiği (α0 ,α1 ,…,αr ) dir. Burada ∆P açık metin farkı ve ∆Ci de i döngüden sonraki kapalı metin farkıdır. Bir karakteristiğin olasılığı verilen i − 1 döngü şifrelemesinden oluşan ∆Ci−1 = αi−1 farkına göre, i döngü şifrelemesinden sonra elde edilen ∆Ci = αi farkının elde edilmesi koşullu olasılığıdır. Rasgele, hep aynı şekilde seçilmiş döngü anahtarları Ki ler için bir karakteristiğin olasılığı:

Pr( ∆Ci−1 = αi−1 ,∆Ci = αi ,…,∆C1 = α1 | ∆C0 = α0 )

Koşullu olasılığıdır. Bu olasılığı hesaplamak çok zor olabilir. Bununla beraber bazı blok şifre sistemleri için bu olasılık her bir döngünün olasılıkları kullanılarak hesaplanabilir (Markov şifre sistemleri).

Kaynakça

  • W. STALLINGS, Cryptography and Network Security Principles and Practices, Fourth Edition, Prentice Hall Publication, 2005.
  • Daemen, Joan. Cipher and hash function design strategies based on linear and differential cryptanalysis. Diss. Doctoral Dissertation, March 1995, KU Leuven, 1995.
  • “Triple DES”, http://en.wikipedia.org/wiki/Triple_DES 18.04.2021 erişim tarihi
  • Daemen J., Knudsen L., Rijmen V., The block cipher SQUARE, Fast Software Encryption (FSE’97), LNCS 1267, pp.149-165, Springer-Verlag, 1997.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir