Anahtarlı Boole geri besleme fonksiyonu olan kayan anahtar üreteçleri için gelişmiş saldırı yöntemi

Abstract

Ultra-lightweight stream ciphers are highly optimized variation of stream ciphers for miniscule hardwares with limited power and calculation resources such as RFID product tags used in retail marketing and Wireless Sensor Network components that are indispensable part of modern SCADA systems. In FSE 2015, Armknecht and Mikhalev presented a unique ultra-lightweight stream cipher design approach defined as Keystream Generators with Keyed Update Function (KSG with KUF) along with a concrete cipher Sprout [1]. This design approach used by recent stream ciphers such as Fruit [2] and Plantlet [3], promises to make use of secret key during state updates in order to maintain security level as well as shorten internal state size to reduce hardware area in conjunction with power consumption. In 2018, definition of KSG with KUF is narrowed by Kara and Esgin [4], with new definition Keystream Generators with Boolean Keyed Feedback Function (KSG with Boolean KFF), on which a generic scope trade-off attack is also mounted. This attack relies on guess capacity definition given in the same article, to eliminate wrong states during exhaustive search operation. In this thesis, we examined this generic Kara and Esgin attack in-depth and accelerated by a factor up to about 60 times. In order to accomplish this speedup, a new guess capacity definition and sieving method are introduced in addition to the improved algorithm which contributes efficiency of the attack in both performance and stability. Improvements are validated with intense performance tests comprising nearly twenty sample feedback functions, including Sprout, with diverse existence of guess capacities.Yazarlık Beyanı ii Abstract iv Öz v Teşekkür vii Şekil Listesi xi Tablo Listesi xii Kısaltmalar xiii Sözlükçe xiv 1 Giriş 1 1.1 Motivasyon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 İlişkin Çalışmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Katkılarımız . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.4 Tezin Bölümleri (Ana Hatları) . . . . . . . . . . . . . . . . . . . . . . . . . 7 2 Temel Kavramlar 10 2.1 Kriptografinin Kısa Geçmişi . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 İletişim Yöntemlerinin Gelişimi . . . . . . . . . . . . . . . . . . . . 10 2.1.2 Kriptografi Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Kriptografik Algoritmaların Sınıflandırılması . . . . . . . . . . . . . . . . . 11 2.2.1 Antik Dönem Teknikleri . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.2 Elektronik Dünyaya Geçiş . . . . . . . . . . . . . . . . . . . . . . . 12 3 Dizi Şifreleme 14 3.1 Giriş & Kullanım Alanları . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.1.1 GSM (2G), UMTS(3G) ve LTE(4G) Güvenliği . . . . . . . . . . . 15 3.1.2 Kablosuz Ağ Güvenliği (WEP and WPA) . . . . . . . . . . . . . . 15 3.1.3 RFID Uygulamaları . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.1.4 Kablosuz Sensör Ağları (WSN) . . . . . . . . . . . . . . . . . . . . 16 3.1.5 ZigBee Protokolü . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.2 Dizi Şifrelemenin Temel Kavramları . . . . . . . . . . . . . . . . . . . . . . 19 3.3 Tek Seferlik Şifre (One Time Pad) . . . . . . . . . . . . . . . . . . . . . . 19 3.4 Donanımsal Nitelikler ve Performans Ölçütleri . . . . . . . . . . . . . . . . 20 3.4.1 Donanım Boyutu (Kapı Eşdeğeri) . . . . . . . . . . . . . . . . . . . 20 3.4.2 Çıktı Hızı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.4.3 Yayılım Gecikmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.4.4 Operasyonel Saat Frekansı . . . . . . . . . . . . . . . . . . . . . . . 21 3.5 Lineer Geri Beslemeli Ötelemeli Saklayıcı (LFSR) . . . . . . . . . . . . . . 22 3.6 Lineer Olmayan Geri Beslemeli Ötelemeli Saklayıcı (NLFSR) . . . . . . . 23 3.7 A5/1 Algoritmasına Hızlı Bakış . . . . . . . . . . . . . . . . . . . . . . . . 23 3.7.1 Kayan Anahtar Üretecinin Tasarımı . . . . . . . . . . . . . . . . . 24 3.7.2 İlklendirme Fazı . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.8 Trivium Algoritmasına Hızlı Bakış . . . . . . . . . . . . . . . . . . . . . . 26 3.9 Espresso Algoritmasına Hızlı Bakış . . . . . . . . . . . . . . . . . . . . . . 26 4 Anahtarlı Güncelleme Fonksiyonu olan Kayan Anahtar Üreteçleri 28 4.1 Tanımlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.2 Sprout Algoritması . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.2.1 Çıkış Noktası . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.2.2 Tasarım . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.2.3 İlklendirme Fazı . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2.4 Gerçekleştirilen Saldırılar . . . . . . . . . . . . . . . . . . . . . . . 35 5 ABGBF-KAÜ Ailesine Yönelik Genel Kapsamlı Saldırı 36 5.1 Saldırının Açıklaması . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.1.1 Tahmin Kapasitesi (Prg) . . . . . . . . . . . . . . . . . . . . . . . 37 5.1.2 Çıktı Kapasitesi (θ) . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.1.3 Karavana İhtimali () . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.1.4 Sonlandırma Değeri (αter) . . . . . . . . . . . . . . . . . . . . . . 38 5.1.5 Eşik Değeri (αthr) . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 5.1.6 İç Durum Zaafiyet Göstergesi (d) . . . . . . . . . . . . . . . . . . . 38 5.2 İç Durum Geri Kazanım Algoritması . . . . . . . . . . . . . . . . . . . . . 38 5.2.1 İDGK Sözde Kodu . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 5.3 Determine Algoritması . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.4 Check & Guess Algoritması . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.5 Anahtar Geri Kazanım Fazı . . . . . . . . . . . . . . . . . . . . . . . . . . 42 6 Geliştirilmiş Saldırı Algoritması 44 6.1 Mevcut Algoritmadaki Darboğaz Noktaları . . . . . . . . . . . . . . . . . . 44 6.2 Hata Düzeltmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 6.2.1 Sözde Kodlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 6.3 İyileştirme No:1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 6.3.1 İyileştirilmiş Algoritma . . . . . . . . . . . . . . . . . . . . . . . . . 46 6.3.2 Sözde Kodlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 6.3.3 İyileştirmenin Performansa Etkisi . . . . . . . . . . . . . . . . . . . 47 6.4 İyileştirme No:3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 6.4.1 Sözde Kodlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 6.5 Geliştirilmiş Algoritmanın Nihai Tasarımı . . . . . . . . . . . . . . . . . . 51 6.5.1 Sözde Kodlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 7 Geliştirilmiş Algoritmanın Performans Analizi 53 7.1 Ön Bilgiler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 7.1.1 Benzetimin Bilgisayar Ortamında Gerçeklenmesi . . . . . . . . . . 53 7.1.2 Test Sistemi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 7.1.3 Test Senaryosu ve Test Fonksiyonları . . . . . . . . . . . . . . . . . 54 7.1.4 Performans Metrikleri . . . . . . . . . . . . . . . . . . . . . . . . . 56 7.2 Test Sonuçları . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 7.2.1 Grafiklerin Yorumlanması . . . . . . . . . . . . . . . . . . . . . . . 60 8 Sonuç 64 8.1 Yeni Algoritmanın Tasarımı . . . . . . . . . . . . . . . . . . . . . . . . . . 64 8.2 Bulgular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 8.3 Bilinen Kısıtlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 8.4 İleriye Yönelik Araştırma Konuları . . . . . . . . . . . . . . . . . . . . . . 65 8.5 Son Yorumlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 A KE Algoritması Bellek Kullanımı Raporu 67 B Benzetim Uygulaması Kaynak Kodları 69 B.1 Geliştirme Süreci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 B.2 Proje Yapısı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 B.3 Proje 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 B.4 Proje 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Kaynaklar 7

    Similar works