İki adımlı şifreleme ile dinamik veri kayıt sistemi
Dynamic data recording system with two step encryption
Yazar: ZEHRA NUR KÖSE
Danışman: DR. ÖĞR. ÜYESİ MUHAMMED FATİH ADAK ; DR. ÖĞR. ÜYESİ MUSTAFA AKPINAR
Sakarya Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2023
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Açık anahtarlı kripto sistemler = Public key cryptosystems ; Blok şifreler = Block ciphers ; Gizli anahtarlı kripto sistemler = Secret key crypto systems ; Kişisel Verilerin Korunması Kanunu = Personal Data Protection Law ; RSA =   ; Veri şifreleme = Data encryption ; Veri şifreleme yöntemleri = Data encryption methods ; İleri şifreleme standart algoritması = Advanced encryption standard algorithm ; Şifreleme = Encryption ; Şifreleme sistemleri = Encryption systems

Özet:
Günümüz şartlarında gerek devlet kurumlarında gerekse özel kuruluşlarda her gün binlerce kişiye ilişkin çeşitli bilgilere erişilmektedir. Erişilen bu bilgiler, dijital dünyada yaşanan gelişmelerin etkisiyle kolaylıkla aktarılmakta ve işlenmektedir. Kişisel Verilerin Korunması Kanunu (KVKK) ve bilgi güvenliği kapsamında, verilerin iyi bir şekilde korunması, belirli, açık ve meşru amaçlar içerisinde sadece yetkili kişiler tarafından işlenmesi önemlidir. Bu kapsamda, kişisel ve hassas verileri işleyen tüm kurum ve kuruluşlar belirli önlemleri almalıdır. Alınabilecek önlemlerden biri de verileri şifrelemektir. Sistemin güvenlik ve performans gereksinimleri göz önünde tutularak kullanılacak olan şifreleme teknikleri belirlenmelidir. Şifreleme işlemi güvenliği artırırken beraberinde sistemin performansını düşürmektedir. Bu yüzden şifreleme yöntemleri tercih edilirken hem en güvenli hem de en hızlı olan teknik tercih edilmelidir.
Bu çalışmada farklı seviyelerde art arda iki kez şifreleme işleminin gerçekleştiği güvenli, dinamik bir veri kayıt sistemi geliştirilmiştir. Geliştirmenin kullanıcı ile etkileşimi sağlanmış olup yapısı, mimarisi, kullanılan algoritmalar ve elde edilen sonuçlar hakkında bilgi verilmiştir. Uygulama varsayılan olarak iki kez art arda şifreleme yapılacak şekilde ayarlanmıştır. İlk şifreleme işleminde simetrik şifreleme yöntemlerinden olan Gelişmiş Şifreleme Standardı (AES) algoritması tercih edilmiş olup algoritmanın arkayüzde (backend) gerçekleşmesi sağlanmıştır. İkinci şifreleme yönteminde ise asimetrik şifreleme yöntemlerinden olan RSA (Rivest-Shamir-Adleman) algoritması tercih edilmiş ve veritabanı seviyesinde kolon düzeyinde şifreleme işlemi yapılmıştır. Bu işlemler sonucunda doğrudan veritabanı üzerinde okuma/yazma mümkün olmayacaktır. Saldırgan, veritabanında tutulan herhangi bir şifrelenmiş veriyi okumak istediğinde, açık metne erişemeyecektir. Önce veritabanı seviyesinde gerçekleşen RSA şifreleme işleminin çözülmesi, ardından farklı seviyede AES algoritmasıyla gerçekleşen şifreli metnin çözülmesi gerekecektir. Bu durumların hepsi güvenliği artırıp, yetkisiz kişilerin açık verilere erişmesini zorlaştıracaktır.
Geliştirilen uygulama vasıtasıyla AES algoritması üzerinde Elektronik Kod Defteri (ECB), Şifre Blok Zincirlemesi (CBC) ve Şifre Geri Beslemeli (CFB) blok modelleri arasındaki performans farkı incelenip, sonucunda en hızlı şifre çözme süresine sahip olanlar sırasıyla ECB, CFB ve CBC şeklinde olmuştur. Bu blok modelleri arasında en güvensiz olan ECB, en yavaş olan ise CBC'dir. Bu nedenle üç blok modeli arasında en iyi tercih CFB modeli olacaktır. Tek adımda AES ile şifrelenen ve tek adımda veritabanı seviyesinde kolon düzeyinde RSA algoritması ile şifrelenen verilerin performansı incelendiğinde ise RSA'nın asimetrik şifreleme tekniğini kullanması nedeniyle performansı AES'e oranla daha çok düşürdüğü gözlenmiştir.

Abstract:
In today's conditions, various information about thousands of people is accessed every day, both in state institutions and private institutions. This information is easily transferred and processed with the effect of developments in the digital world. Within the scope of the Personal Data Protection Law (KVKK) and information security, it is important to protect data well and to process it only by authorized persons for specific, clear and legitimate purposes. In this context, all institutions and organizations that process personal and sensitive data should take certain precautions. One of the measures that can be taken is to encrypt data. The encryption techniques to be used should be determined by considering the security and performance requirements of the system. While the encryption process increases security, it also reduces the performance of the system. Therefore, when choosing encryption methods, the most secure and fastest technique should be preferred.
In this study, a secure, dynamic data recording system has been developed in which encryption is performed twice in succession at different levels. The interaction of the development with the user was provided and information was given about its structure, architecture, algorithms used and the results obtained.
The application is set to encrypt twice in succession by default. In the first encryption process, the Advanced Encryption Standard (AES) algorithm, which is one of the symmetric encryption methods, was preferred and the algorithm was realized on the backend. In the second encryption method, the RSA (Rivest-Shamir-Adleman) algorithm, which is one of the asymmetric encryption methods, was preferred and column-level encryption was performed at the database layer. As a result of this operation, it will not be possible to directly read/write on the database. When the attacker wants to read any encrypted data kept in the database, the attacker will not be able to access the clear text. He/she will first need to decode the RSA encryption process done at the database layer, then he/she will need to decrypt the ciphertext performed with the AES algorithm at different level. All of these situations will increase security and make it harder for unauthorized persons to access open data. 
By means of the developed application, the performance difference between the Electronic Code Book (ECB), Cipher Block Chaining (CBC) and Cipher Feedback (CFB) block models on the AES algorithm was examined, and as a result, the ones with the fastest decryption time were ECB, CFB and CBC, respectively. Among these block models, ECB is the most insecure and CBC is the slowest. Therefore, the CFB model is the best choice among the three block models. When the performance of the data encrypted with AES in one step and encrypted with the RSA algorithm at the database level at the database level in one step is examined, it is observed that RSA reduces the performance more than AES because it uses asymmetric encryption technique.