Son işlem algoritmalarının incelenmesi ve yazılım suiti geliştirilmesi
Examination of post processing algorithms and developing of software
Yazar: DİDEM YOSUNLU
Danışman: DOÇ. DR. ERDİNÇ AVAROĞLU
Mersin Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control ; Bilim ve Teknoloji = Science and Technology

Özet:
Rasgele sayılar, geçmişten günümüze kadar birçok alanda kullanılmıştır. Simülasyon, oyun programlama, eğlence, nümerik analiz gibi alanların yanında kriptolojik uygulamaların büyük çoğunluğunda da ihtiyaç duyulan temel bir araç haline gelmiştir. Özellikle anahtar üretimi ve dağıtımında, başlangıç vektörünün oluşturulmasında ve kimlik doğrulama protokolleri gibi kritik işlemlerde rasgele sayılara ihtiyaç duyulmaktadır. Üretilen sayıların rasgeleliği ise kriptolojik uygulamanın güvenliğini direkt olarak etkilemektedir. Bu sebeple tasarlanan sistemlerin genel amacı üretilen rasgele sayıların tahmin edilemez ve tekrar üretilemez olması ve ayrıca da iyi istatistiksel özellikler göstermesidir.
Bu özelliklerde rasgele sayıların üretilmesi için çeşitli rasgele sayı üreteçleri tasarlanmıştır. Bu üreteçler 3 grupta incelenmektedir; gerçek rasgele sayı üreteçleri (GRSÜ), sözde rasgele sayı üreteçleri (SRSÜ) ve hibrit rasgele sayı üreteçleri (HRSÜ). Ne yazık ki bu üreteçler kullanılarak elde edilen bit dizilerinin hepsi istenilen gereksinimleri sağlamamaktadır. Zayıf istatistiki özellikler gösteren bu bit dizilerini daha güçlü hale getirmek amacıyla son işlem algoritmaları kullanılmaktadır.
Bu tezin amacı tasarlanmış olan son işlem algoritmalarından seçilenlerin incelenerek, hepsinin bir arada olduğu bir yazılım süiti geliştirmek ve bunu kullanıma açmaktır. Bu amaçla seçilen algoritmalar XOR, Von Neumann, H, H2 ve H4 Fonksiyonları, SBOX, Mixing Bits in Steps and XORing, Iterating Von Neumann'dur. Tasarlanan arayüzde kullanıcının bu algoritmalardan birini seçmesi ve daha sonra da sisteme, seçilen algoritmaya tabii tutulmak istenen bit dizisini .txt dosya formatında yüklemesi beklenmektedir. Sistem yüklenen bit dizisine seçilen son işlem algoritmasını uygulayarak çıktıyı yine .txt dosya formatında olarak oluşturur ve kullanıcının kullanımına sunar. Literatürde benzer bir örneği bulunmayan bu uygulama gerçek rasgele sayılar üzerine çalışanlar için ulaşılması ve kullanımı oldukça kolay olan önemli bir kaynak haline gelecektir.
Geliştirilen web tabanlı yazılıma son kullanıcılar tarafından "postprocess.mersin.edu.tr" adresinden ulaşılarak, gerçek rasgele sayı üreteçlerinden elde edilen saf bit dizilerinin son işlem sonuçları alınabilecektir.

Abstract:
Random numbers have been used in many fields from past to present. In addition to simulation, game programming, entertainment, numerical analysis, it has become a basic tool needed in the vast majority of cryptologic applications. In particular, random numbers are required for critical operations such as key generation and distribution, initialization vector generation, authentication protocols. The randomness of the generated numbers directly affects the security of the cryptologic application. For this reason, the general purpose of the designed systems is that the generated random numbers are unpredictable and non-reproducible and also show good statistical properties.
Various random number generators have been designed to generate random numbers with these features. These generators are examined in 3 groups; true random number generators (TRNG), pseudo random number generators (PRNG) and hybrid random number generators (HRNG). Unfortunately, not all bit strings obtained using these generators meet the desired requirements. Post processing algorithms are used to make these bit sequences stronger, which show weak statistical properties.
The aim of this thesis is to examine selected post-processing algorithms, to develop a software suite that is all in one and make it available. The algorithms chosen for this purpose are XOR, Von Neumann, H, H2 and H4 Functions, SBOX, Mixing Bits in Steps and XORing and Iterating Von Neumann. In the designed interface, the user is expected to choose one of these algorithms and then upload the bitstream to the system in .txt file format to be subjected to the selected algorithm. The system creates the output in .txt file format by applying the selected post-processing algorithm to the loaded bitstream and makes it available to the user. This application, which has no similar example in the literature, will become an important resource that is very easy to access and use for those who study on true random numbers.
The developed web-based software can be accessed by the end users at "postprocess.mersin.edu.tr" address, and the post processing results of raw bit strings obtained from true random number generators can be obtained.