AES Şifreleme Tekniği

Download Report

Transcript AES Şifreleme Tekniği

AES Şifreleme Tekniği 28.04.2020

1

 AES (Rijndael) algoritması 128 bit veri bloklarını 128, 192, 256 bit anahtar seçenekleri ile şifreleyen bir algoritmadır.

 SPN algoritmasının geniş bir çeşididir.

 128 bit anahtar için 10 döngüde şifreleme yaparken 192 ve 256 bit anahtarlar için sırasıyla 12 ve 14 döngüde şifreleme yapmaktadır.

AES Şifreleme Tekniği 28.04.2020

2

 AES algoritmasında her döngü dört katmandan oluşur.

 İlk olarak 128 bit veri 4  4 dönüştürülür.

byte matrisine  Daha sonra yerdeğiştirmesi, her döngüde satırların sırasıyla ötelenmesi, byte’ların sütunların karıştırılması ve anahtar planlamadan gelen o döngü için belirlenen anahtar ile XOR’lama işlemleri yapılır.

AES Şifreleme Tekniği 28.04.2020

3

16 Byte Açık Metin (128 Bit) 1. Döngü 2. Döngü 3. Döngü 4. Döngü 5. Döngü 6. Döngü 7. Döngü 8. Döngü 9. Döngü 10. Döngü Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Byte Yerdeğiştirme (S Kutusu) Satırları Öteleme Satırları Öteleme Satırları Öteleme Satırları Öteleme Satırları Öteleme Satırları Öteleme Satırları Öteleme Satırları Öteleme Satırları Öteleme Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma Sütunları Karıştırma K 10  K 0  K 4  K 5  K 6  K 7  K 8  K 9  K 1  K 2  K 3  4

 Bilindiği üzere bijektif S kutuları bir çok modern şifrelerin güvenliğinin sağlanmasında çok önemli bir rol oynar.

 Bu S kutularının tasarlanmasında çeşitli teknikler mevcuttur.

Şu ana kadar S kutularının tasarlanmasında mevcut olan tekniklere örnek olarak pseudo-random üretim, sonlu alanda ters alma ve üssel haritalama, heuristic teknikler verilebilir.

AES Şifreleme Tekniği 28.04.2020

5

 Şimdiye kadar mevcut olan tüm S kutularında istenen özellikler linear ve diferansiyel saldırılara karşın iyi olan S kutularının seçimi üzerinedir.

 Dolayısıyla, şimdiye kadar önerilen şifreleme algoritmalarında kullanılan S kutuları sonlu alan işlemlerinden yola çıkılarak üretilmektedir.

 Bu şifreleme algoritmalarına örnek olarak AES (Advanced Encryption Algorithm) elde edilmektedir.

verilebilir.

AES şifreleme algoritmasında kullanılan S kutusu aşağıda gösterildiği gibi AES Şifreleme Tekniği 28.04.2020

6

  AES’in S kutusu (Yerdeğiştirme Tablosu) iki dönüşüm kullanılarak elde edilmiştir: 1- GF(2 8 ) de ters alma işlemi indirgenemez polinom “ ” kullanılarak gerçekleştirilir. İkili (binary) temsilde “00000000” kendisine eşleştirilir.

 2- Affine dönüşüm, GF(2) üzerinde uygulanır. Dönüşüm aşağıda gösterilmiştir .

            y y y y y y 0 1 2 3 4 5  y y 6 7                 1 1 0 0 0   1        1 1 1 0 0 1 1 1 0 0 1 0 1 1 0 0 1 1 0 1 1 1 0 0 1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 0 0 1 1 1 1 1 0 0 1 0 1             .

            x x x x x x x x 0 1 2 3 4 5 6 7                0   1   1 0   1   1   0 0             7

 AES S kutusuna benzer S kutuları tasarlayan bir simulatör geliştirme.

 Ayrıca simulatör herhangi bir S kutusu için lineer ve diferensiyel kriptanaliz için önemli olan lineer yaklaşım tablosu ve XOR dağılım tablosunu oluşturmaktadır.

AES Şifreleme Tekniği 28.04.2020

8

  AES S kutusu sonlu alanda ters alma işlemi yapılarak elde edilmiştir. AES S kutusu için sonlu alanında çarpmaya göre ters alma işlemi yapılmıştır.

Z

2   /(

x

8 

x

4 

x

3 

x

 1 ) Daha sonra elde edilen değerlerin üzerine affine dönüşüm uygulanmıştır. Bu dönüşüm tüm S kutusu tanımını daha kompleks hale getirmektedir ve interpolasyon saldırılarına karşı S kutusunun basit cebirsel ifadesini modifiye etme amacındadır.

AES Şifreleme Tekniği 28.04.2020

9

 Yukarıdaki tanım ve ifadelerden yola çıkarak 8.

dereceden çeşitli indirgenemez polinomlar bularak simulator tasarımını gerçekleştirebiliriz .

 Tablo 1 olası tüm 8. dereceden indirgenemez polinomları göstermektedir. Tablo 1’de polinomlar dizi formatındadır.

Örneğin “101110111” polinom olarak

x

8 

x

6 

x

5 

x

4 

x

2 

x

 1 şeklinde temsil edilmektedir.

AES Şifreleme Tekniği 28.04.2020

10

Tablo 1.

8. Dereceden Tüm indirgenemez Polinomlar 28.04.2020

AES Şifreleme Tekniği 11

 Affine (lineer) dönüşümü, sonlu alanda ters alma işlemi gerçekleştirildikten sonra her eleman üzerinde uygulanan, lineer ve diferansiyel kriptanalize karşı herhangi bir koruma sağlamayan fakat S kutusunun

f

(

x

) 

x

 1 ,

x

GF

( 2 8 ) şeklindeki basit cebirsel ifadesini kompleks hale getirmek için kullanılan bir dönüşümdür.

 Çalışmamızda, 4 farklı affine dönüşüm seçenek olarak verilmiştir. Bunlardan herhangi birisi kulllanılabilir.

AES Şifreleme Tekniği 28.04.2020

12

 Diferansiyel kriptanaliz saldırısı blok şifreleme algoritmasında kullanılan S kutularının fark tablosundaki (XOR tablosunda) bazı özel girişlerinin kullanılması esasına dayanır. n  n boyutunda bir S kutusu için XOR tablosu düşer.

matrise denk 2 n  2 n XORS (a,b) aşağıdaki gibi ifade edilebilir .

XOR S (a, b)  # {P  Z n 2 | S(P)  S(P  Δa)  Δb} AES Şifreleme Tekniği 28.04.2020

13

 Çalışmamızda tasarlanan simulatör daha önce anlatıldığı gibi sırasıyla herhangi bir 8. dereceden indirgenemez polinom kullanarak sonlu alanda ters alma işlemi yapmakta sonrada seçilen bir affine dönüşüm kullanılarak her tersi alınan değer bu dönüşümden geçmektedir .

AES Şifreleme Tekniği 28.04.2020

14

 Daha sonrada herhangi üretilen bir S kutusu için 2 8 ×2 8 matrisi boyutunda oluşan LAT ve XOR tablolarının seçilen bir değere karşın tek satırını göstermektedir.

LAT için bu değer giriş toplamı iken XOR tablosu için seçilen değer giriş farkıdır.

 Çalışmamızda asal polinomlar ve AES S kutusunun tasarımında kullanılan indirgenemez polinom programda verilmiştir seçenek olarak konulmuş diğer indirgenemez polinomlar için ise elle girilme imkanı AES Şifreleme Tekniği 28.04.2020

15

 Örnek 2, asal polinom “101100101” yani

x

8 

x

6 

x

5 

x

2  1 polinomu kullanılarak tasarlanan simulatörü göstermektedir.

AES Şifreleme Tekniği 28.04.2020

16

AES Şifreleme Tekniği 28.04.2020

17

AES Şifreleme Tekniği 28.04.2020

18

AES Şifreleme Tekniği 28.04.2020

19

AES Şifreleme Tekniği 28.04.2020

20

AES Şifreleme Tekniği 28.04.2020

21

AES Şifreleme Tekniği 28.04.2020

22

AES Şifreleme Tekniği 28.04.2020

23

 Çalışmamızda AES S kutusuna benzer S kutuları üreten bir simulatör tasarladık.  Cebirsel üretilen S kutularından herhangi biri kolaylıkla bir şifreleme algoritmasında kullanılabilir.  Ayrıca bu izomorfik S kutuları LAT ve XOR tablosu (iki önemli güvenlik kriteri) açısından benzer özellikler göstermektedir.

 Çalışmamız istenirse yapılacak bir iki küçük değişiklikle şifreleme algoritması tasarımında kullanılacak bir araç görevi görecektir. AES Şifreleme Tekniği 28.04.2020

24

BÜŞRA BİR AES Şifreleme Tekniği 28.04.2020

25