Raspberry Pi üzerinde AES algoritmasına yan kanal analizi ve ölçüm iyileştirme
Side channel analysis to AES algorithm on Raspberry Pi and measurement improvement
Yazar: ELİF BÜYÜKKAYA
Danışman: PROF. DR. ENSAR GÜL ; DR. NECATİ ERSEN ŞİŞECİ
İstanbul Şehir Üniversitesi / Fen Bilimleri Enstitüsü / Bilgi Güvenliği Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2017
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering

Özet:
Bilginin, güvenliğinin sağlanması için kullanılan bir çok yöntem mevcuttur. Bu yöntemlerden en etkili olanlarının birisi de şifrelemedir. Şifreleme işlemi yapmak için kullanılabilecek bir çok algoritma mevcuttur. AES (Advanced Encryption Standard) algoritması, Amerikan Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından yayınlanmış algoritmalardan biridir. Aynı zamanda AES algoritması, veriyi şifrelemek ve çözmek için aynı şifreleme anahtarını kullanan simetrik blok şifreleme algoritmasıdır.   
AES algoritmasının matematik alt yapısının güçlü olması onu bilindik kriptoanalize karşı dayanıklı kılmıştır. Bununla birlikte algoritmanın matematiksel yapısı ile ilgilenmeyen yan kanal saldırıları olarak adlandırılan farklı bir saldırı tekniği mevcuttur. Bu yan kanal saldırılarından,  pasif yan kanal saldırılarında, kriptografik sisteme fiziksel olarak herhangi bir müdahalede bulunulmaz. Atak yapacak olan kişi, sistemin çalışması sırasında istemsiz olarak ürettiği verileri kullanır/analiz eder. Atak için kullanılacak olan bu veriler gizli anahtara ulaşmayı sağlıyorsa, yan kanal bilgisi olarak adlandırılır. Yan kanal bilgisi, sistemin çalışması sırasında tükettiği güç, yaydığı elektromanyetik dalga, çıkardığı ses, kriptografik işleminin tamamlama süresi olabilir.
Pasif yan kanal ataklarında kullanılan iki temel inceleme yöntemi mevcuttur. Bunlar basit yan kanal analizi ve farksal yan kanal analizidir [27]. Basit yan kanal analizi yöntemi bir ölçüm kullanılarak gerçekleştirilirken, farksal yan kanal analizi yönteminde birden fazla ölçüm kullanılır.    
Bu tez çalışmasında Raspberry Pi üzerinde çalışan AES algoritmasına farksal yan kanal analizi yöntemlerinden birisi olan DEMA (Differential Electromagnetic Analysis) saldırısı yapılmıştır. Raspberry Pi nin işletim sistemi basit bir işletim sistemi değildir. Mini bir bilgisayar olması nedeniyle Raspberry Pi de bir işlem yapılırken işletim sistemine özgü işler de eşzamanlı olarak yapılmaktadır. İşletimin sisteminin rutin işlerinin çıkarmış olduğu gürültü, AES ile şifreleme veya çözme işlemi yapılırken işlem süresinin göstermiş olduğu değişkenlik izlenmiştir. Şifreleme süresinin değişkenlik göstermesi ve işletim sisteminin kendine has yaptığı rutin işlemler alınan ölçümleri analiz edilebilecek hale getirmeyi zorlaştırmıştır. Bu çalışma kapsamında Raspberry Pi platformunun kullanılmasının, direk yan kanal analizine karşı bir önlem olup olmadığı incelenmiştir. Analiz işlemi sonunda  algoritmanın yan kanal saldırısına bu haliyle direnemeyeceği gizli anahtarın elde edilmesiyle görülmüştür. AES algoritmasında yapılacak olan yazılımsal bir önlem ya da Raspberry Pi ye eklenecek yazılımsal/donanımsal bir önlem ile çözüm getirilmesi önerilmiştir.

Abstract:
There are lots of methods used to provide information security. One of the most effective of these methods is encryption. There are many algorithms that can be used to do encryption. The Advanced Encryption Standard (AES) algorithm is one of the algorithms published by the National Institute of Standards and Technology (NIST). At the same time, the AES algorithm is a symmetric block encryption algorithm that uses the same encryption key to encrypt and decrypt the data.
The strength of the AES algorithm's mathematical structure has made it resistant to known cryptoanalysis. However, there is a different attack technique called side channel attacks that are not interested in the mathematical structure of the algorithm. From these side channel attacks, there is no physical intervention in the cryptographic system in non-invasive side channel attacks. The attacker uses / analyzes the data generated by the system during its operation. If this data to be used for the attack provides access to the secret key, it is called side channel information. Side channel information may be the power consumed by the system during its operation, the electromagnetic wave emissions, the voice it extracts, the completion time of the cryptographic process.
There are two basic examination methods used in non-invasive side channel attacks. These are simple side channel analysis and differential side channel analysis [27]. While the simple side channel analysis method is performed using a measurement, more than one measurement is used in the differential side channel analysis method.
In this thesis, DEMA (Differential Electromagnetic Analysis) attack, which is one of the differential side channel analysis methods, is applied to the AES algorithm running on the Raspberry Pi. Raspberry Pi's operating system is not a simple operating system. Due to the fact that it is a mini computer, while Raspberry Pi is doing an operation, operating system are being performed simultaneously. The noise of the routine system of the operating system was observed, and the variance of the process time was observed when encryption or decryption was performed with AES. The encryption time is variable and the routine operating system process has made it difficult to analyze measurements. In this study, it was investigated whether using Raspberry Pi platform is a measure against direct side channel analysis. At the end of the analysis, the algorithm is seen to can not withstand the side channel attack because of secret key obtained. It is proposed to implement a software-based measure in the AES algorithm or a software / hardware measure to be added to Raspberry Pi.