Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
Elektronik Kriptanaliz
Yan Kanal Saldırısı(Side Channel Attack) Tanım Saldırı Yöntemleri Zamanlama Saldırısı (Timing Attack) Güç Analizi Saldırısı (Power Analysis Attack) Hatadan çıkarsama (Fault Induction Attack) Diğer Saldırılar Önlemler Referanslar
2
Matematiksel- İstatistiksel
Yan Kanal Saldırısı Kriptografi Klasik Matematiksel- İstatistiksel Yan Kanal Saldırıları Klasik Matematiksel bir işlem Genelde parametre olarak anahtar Girdileri çıktılara çevirmek Yan Kanal Bir Program Bir işlemci üzerinde, Belli bir ortamda Fiziksel
3
Yan Kanal Saldırısı -2 Genelde Klasik Kriptanalizden çok daha güçlü bir yöntemdir Genel değildir, Algoritmaya veya algoritmanın işlediği ortama göre özel olarak tasarlanır Tamamen engelleyen bir koruma mevcut değil, önlemler sadece zorlaştırıcı Algoritma geliştiricileri en çok uğraştıran saldırı türü Hedefler genelde fiziksel erişimin olduğu elektronik cihazlar
4
Yan Kanal Saldırısı –Smart Card
İşlemcisi olan bir bilgisayar ROM Küçük boyutlu RAM Amaç İçindeki gizli anahtarı açığa çıkarmadan kriptografik işlemleri gerçekleştirmek Bir Bilgisayara göre eksikleri Güç Kaynağı Enerjiyi Card Reader’dan elde eder Harcadığı enerjiyi hesaplamak basit Sistem Saati Card Reader tarafından sağlanır İşlemlerin yürütme zamanı çok net hesaplanabilir Koruma Katmanı - Passivation Layer
5
Yan Kanal Saldırısı Çeşitleri
Side Channel Invasive Non-Invasive Invasive Direkt olarak fiziksel bileşenlere erişim Ör: Data bus’a bir kablo üzerinden erişim Non-Invasive Ör: İşlem süresi, Harcanan enerji miktarı vb. Semi-Invasive Passivation Layer’a zarar vermeden ve fiziksel bağlantı kurmadan veri hattındaki yada bellekteki verileri okuma
6
Yan Kanal Saldırısı – Olası Hedefler
Tamper Resistant Devices (Tahribe karşı önlemli cihazlar) Geri Mühendislik yapmak zor - Ör: Smart Cards, ATM, TV Decoder, Şifreli Telsizler vb.
7
Saldırı Yöntemleri – Zamanlama Saldırısı
Kriptografik algoritmanın ne kadar sürede çalıştığını analiz eder. Algoritmanın bilinmesi işi kolaylaştırır Algoritmanın hangi aşamasının ne kadar sürdüğünün analizi yapılarak daha ayrıntılı bilgi elde edilebilir Gürültüyü azaltmak için filtreler kullanılır Gürültü ne kadar fazlaysa, o kadar çok örnek toplamak gerekir
8
Saldırı Yöntemleri – Zamanlama Saldırısı 2
Algoritmanın işleme süresi parametrelere göre değişiyorsa, zamanlama saldırısı çok etkilidir Algoritmada koşula bağımlı bir işleyiş varsa (if- else) zamanlama saldırısı etkilidir Ör: x mod n, {x<= n | x >n}
9
Saldırı Yöntemleri – Zamanlama Saldırısı 3
RSA’e zamanlama saldırısı s = ae mod n a: şifrelenecek veri e: gizli anahtar n: module (gizli) ae : a, e kez kendisiyle çarpılacak. Daha etkin bir yol, 1- MSB ile başla ve a’nın karesini al 2- Eğer bir sonraki bit 0 ise sadece sonucun karesini al, 1 ise çarp daha sonra karesini al 3- Tüm bitler için bu işlemi yap Ör: a23 23 = ((((a)2)2*a)2 *a)2 *a = a23
10
Saldırı Yöntemleri – Zamanlama Saldırısı 4
RSA’e zamanlama saldırısı(devam) s = a^e mod n a23 23 = ((((a)2)2*a)2 *a)2 *a = a23 Eğer tüm bitler 0 ise(başlangıç biti hariç) log2e adet kare alma işlemi vardır Eğer tüm bitler 1 ise log2e adet kare alma ve log2e adet çarpma işlemi vardır. Chinese Remainder Theorem RSA’de optimizasyon amaçlı kullanılır. Önce (a mod p) ve (a mod q ) hesaplanır.
11
Saldırı Yöntemleri – Güç Analizi
İşlemcileri oluşturan transistorler anahtar gibi davranır. Anahtar 0 ise akım bloke olur, 1 ise akım oluşur. Güç analizi saldırısı bu akım farkının neden olduğu güç harcamasını analiz eder. Genelde yardımcı yöntem olarak kullanılır
12
Saldırı Yöntemleri – Güç Analizi
SPA (Simple Power Analysis) Sadece işlemcinin harcadığı enerjiyi analiz eder. İşlemlerin sırası güç analizi ile anlaşılabildiğinden, parametrelere göre işlemin akışını değiştiren algoritmalarda etkili bir şekilde kullanılabilir. Ör: DES Bu saldırıya dirençli algoritmalar geliştirmek çok zordur. DPA ( Differential Power Analysis) SPA’ya ek olarak bazı istatistiki analizler ve hata düzeltme algoritmaları çalıştırır. Bu işleme zamanını arttırır fakat gereken örnek sayısını azaltır.
13
Saldırı Yöntemleri – Fault Induction
Algoritma işletiliren belirli bir zamanda bir takım çevresel parametreleri değiştirerek işlemcinin hata yapması sağlanır Daha sonra hatalı veri ile hatasız veri arasındaki ilişkilere bakarak çıkarsamalar yapılır. xp hesaplanırken hata yaptırılıyor ve x’p elde ediliyor q =
14
Saldırı Yöntemleri – Fault Induction 2
Hata oluşturmak için kullanılan yöntemler: Voltajı değiştirmek Sistem saatinin frekansını değiştirmek Sistemi normal çalışma sıcaklığı dışında çalıştırmak Radyasyon( Mikrodalga saldırısı) Işık( Flaş vb.)
15
Saldırı Yöntemleri – Diğer Saldırılar
Akustik Kriptanaliz Duyulabilen veya duyulamayan seslerin hassas cihazlarla kaydedilip analizi 2004, Shamir tarafından sadece işlemciden çıkan ses ile timing attack gerçekleştirilebileceğini göstermiş Elektromanyetik Kriptanaliz
16
Önlemler - 1 Yöntemden Bağımsız Temel Önlemler
Zaman ve Güç açısından veriden bağımsız algoritmalar ( anahtar ve şifrelecek veri) Koşullu dallanmalardan kaçınmalı(IF vb) Bunların yerine aynı işlemler AND, OR, XOR ile yapılmalı
17
Önlemler 2 – Timing Attack
Gecikme Ekleme Tüm işlemlerin aynı sürede olması sağlanmalı En uzun süren işlem süresine uzatarak eşitleyeceğinden algoritma üzerinde optimizasyon yapmak imkanını ortadan kaldırır. Güç harcamasını da dikkate alarak geliştirilmeli Çarpma ve Üs alma sürelerini eşitleme Saldırganın ne zaman üs alma işlemi veya çarpma işlemi yapıldığını öğrenmesini engeller. Genelde bu işlemlerin herhangi birinin yapılacağı yerde, ikisini birden hesaplayıp sadece ilgili olan sonuçla işleme devam ederek sağlanır.
18
Önlemler 3 – Power Analysis
Power Consumption Balancing (Harcanan Gücün Dengelenmesi) Mümkün olduğu tüm yerlerde kullanılmalıdır. Harcanan gücü dengelemek için gereksiz registerlar ve kapılar kullanılabilir. Donanım herhangi bir işlem yaptığında ayrı bir donanım da o işlemin ne kadar güç harcadığına bakıp, harcanan gücü dengeleyecek anlamsız işlemleri gerçekleştirebilir. Gürültü eklemek Analiz için gereken örnek sayısını yükseltir.
19
Önlemler 4 – Fault Induction
İşlemi iki kez gerçekleştirip, Eğer her ikisinde de sonuç aynıysa çıktı vermek Aynı hatanın oluşma olasılığı düşük olduğundan eğer fault induction varsa çıktı verme olasılığı düşüktür.
20
Referanslar M. RiZK, Side channel attacks ,October 2002
Hagai Bar-El, Introduction to Side Channel Attacks J. Kelsey, B. Schneier, D. Wagner, C. Hall, Side Channel Cryptanalysis of product ciphers, ECRPYT, Side Channel Cryptanalysis Lounge, C.Endrödi, Side-Channel Attack Of RSA K. Tiri, Side Channel Leakage Tolerant Architecture
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.