On an efficient implementation of combined true random number generator and physically unclonable function on a SoC FPGA
Tezin Türü: Doktora
Tezin Yürütüldüğü Kurum: Orta Doğu Teknik Üniversitesi, Uygulamalı Matematik Enstitüsü, Kriptografi Anabilim Dalı, Türkiye
Tezin Onay Tarihi: 2024
Tezin Dili: İngilizce
Öğrenci: YUNUS EMRE YILMAZ
Danışman: Oğuz Yayla
Açık Arşiv Koleksiyonu: AVESİS Açık Erişim Koleksiyonu
Özet:Gerçek Rastgele Sayı Üreteçleri (TRNG'ler) ve Fiziksel Olarak Klonlanamayan Fonksiyonlar (PUF'lar) kriptografik sistemlerin tasarlanmasında kullanılan iki temel ve kullanışlı ilkel araçtır. TRNG'ler değişmez şekilde rastgele olmalıdır, PUF'lar ise tekrarlayan sonuçlara ve örneğe özgü rastgeleliğe sahip olmalıdır. Bu çalışmada, bu ilkeller bir Çip Üzerinde Sistem Alan Programlanabilir Kapı Dizisinde (SoC FPGA) veya kısaca SoC'de uygulanmıştır. Faz Kilitli Döngüler (PLL'ler) hem FPGA'lerde hem de SoC'lerde çeşitli işlevler için yaygın olarak uygulanan temel bileşenlerdir. Bu cihazlarda PLL'ler rastgele sayılar üretmek için umut verici bir yöntem sunar. Önceki araştırmalarla doğrulandığı üzere, izole çalışmaları, geniş kullanımları ve güçlü entropi üretimleri nedeniyle, FPGA'lara veya SoC'lere entegre edilen PLL'ler, PLL tabanlı gerçek rastgele sayı üreteçleri (PLL-TRNG'ler) için oldukça etkili temeller olarak hizmet eder. Bu da PLL-TRNG'leri bu tür mimarilerde güvenli rastgele sayılar üretmek için özellikle uygun bir çözüm h\^aline getirmektedir. PLL-TRNG'de parametre seçimi, hem yeterli bir entropi oranı hem de yeterli bir çıkış bit oranı sağlamayı gerektirdiğinden çok kritik bir süreçtir. Bu nedenle, bu çalışmada literatürdeki geri izleme (backtracking) yöntemine dayalı bir parametre seçim algoritması seçilmiş ve seçilen SoC'ye uyarlanmıştır. Bunlara ek olarak, entropi özelliklerini korurken belirli bir ara bağlantıya sahip ekstra PLL'ler kullanarak PLL-TRNG'nin rastgele veri biti üretme oranını artırmak için yeni bir metodoloji önerilmiştir. Performans ölçütleri, Alman Federal Bilgi Güvenliği Ofisi (BSI) AIS-20/31 Testleri tarafından belirlenen kriterlere göre titizlikle değerlendirilmiş ve literatürdeki çalışmalarla karşılaştırılmıştır. İlk silikon PUF olarak kabul edilen hakem (Arbiter) PUF, hafif tasarımını korurken, girdiye bağlı olarak anında önemli sayıda gizli anahtar üretebilmektedir. Bu avantajlı özellik, özellikle Nesnelerin İnterneti (IoT) cihazları gibi kısıtlı kaynaklara sahip uygulamalarda cihaz kimlik doğrulaması için çok uygundur. Bu avantajlara rağmen, hakem PUF'lar makine öğrenimi saldırılarına karşı savunmasızdır. Bu nedenle, bu tür saldırılara karşı daha fazla direnç elde etmek için bu hakem PUF tasarımları geliştirilmiştir. Bu iyileştirmeler, IoT uygulamaları için kullanışlılığı ve verimliliği korurken makine öğrenmesi saldırılarına karşı dayanıklılığı artırmayı amaçlamaktadır. Bu çalışmada, literatürde bulunan bir tasarıma dayalı olarak makine öğrenmesine dirençli 32 bit ve 64 bit bileşen farklılaştırmalı XOR Hakem PUF (CDC-XPUF) gerçeklenmiştir. 32-bit ve 64-bit 7 akışlı CDC-7-XPUF'ler, literatürdeki PUF ölçütleri olan kararlılık, doğruluk, dağınıklık, tekdüzelik ve benzersizlik kullanılarak değerlendirilmiştir. Ek olarak, hem TRNG hem de PUF uygulamaları için kullanım oranları sunulmuştur. Bu çalışmanın son bölümünde, dört PLL'li PLL-TRNG (4-PLL-TRNG) ve 64-bit 7 akışlı CDC-XPUF (CDC-7-XPUF) birlikte çalışabilecek şekilde birleştirilmiştir. 4-PLL-TRNG tarafından üretilen rastgele sayılar CDC-7-XPUF tarafından ana PUF girdisinden (challenge) diğer PUF girdilerini üretmek için kullanılır. TRNG ve PUF'a uygulanan tüm testler bu birleşik tasarıma da uygulanmış ve bu birleşik tasarımın bir IoT sisteminde kullanılmak için uygun bir aday olduğu gösterilmiştir. Sonuç olarak, ikisi PLL-TRNG ve CDC-XPUF'un ayrık uygulamaları ve biri de bu PLL-TRNG ve CDC-XPUF'un birleşik uygulaması olmak üzere toplam üç farklı konfigürasyon gerçeklenmiştir. Tüm testler, Xilinx Zynq 7020 SoC içeren ZC702 Rev1.1 Değerlendirme Kartı kullanılarak uygulanmış ve deneysel doğrulama için üç kart içeren bir yapılandırma kullanılmıştır.