Fiziksel klonlanamayan fonksiyonlar

PUF (physical unclonable function ya da Fiziksel klonlanamayan fonksiyonlar), mikroişlemci ve benzeri yarı iletken cihazların üretiminden kaynaklanan, her cihazın kendine has olan bir dijital parmak izidir. PUF yarı iletkenlerin üretim sürecinin doğal bir sonucu olduğu için tüm yarı iletkenler için farklılık gösterir. PUF genellikle şifreleme işlemleri için kullanılır. Fiziksel klonlanamayan fonksiyonlar fiziksel yapının içinde somut bir varlıktır. Bugün, PUF genellikle entegre devrelerde gerçeklenmiştir ve genellikle yüksek güvenlik gerektiren uygulamalarda kullanılır.

Tarih

Kimlik doğrulamak için düzensizlik barındıran sitemlerin fiziksel özelliklerini kullanma fikri ile ilgili ilk çalışmalar Bauder 1983 ve Simmons 1984  dayanmaktadır. Naccache ve Frémanteau 1992 yılında hafıza kartları için bir kimlik doğrulama yöntemi geliştirdi.  POWF (physical one-way function ya da tek yönlü fiziksel fonksiyon) ve PUF 2001 ve 2002  yıllarında ilk kez ortaya çıktı. Daha sonraki yayınlarda  ilk PUF'lar optik ölçümleri temel alacak şekilde değil, devre ölçümlerini temel alacak şekilde silikon üzerine üretilmiş olan elektrik devrelerinde entegre edildi.
2010-2013,tüm akıllı kartlar için karta özgü bir şifreleme anahtarı oluşturulmasında kullanılabilecek, her cihazın kendine has bir silikon parmak izi oluşturmasıyla, PUF akıllı kart pazarında  dikkat çekti.   
PUF gizli anahtarın depolanmasında, batarya destekli depolama yöntemlerine güvenli bir alternatif olarak Xilinx Zynq Ultrascale++ ve Altera gibi ticari FPGA'lerde kullanılmaya başlandı.

Konsept

PUF'lar fiziksel mikro yapının cihazlar için tekil olmasına dayanıyor. Bu mikro yapı üretim aşamasında ortaya çıkan rassal fiziksel etmenlerden kaynaklanıyor. Bu faktörler öngörülemeyen ve kontrol edilemeyen faktörlerdir, bu da onun kopyalanması veya tekrar üretilmesini imkansız hale getiriyor.
Gömülü bir şifreleme anahtarı yerine, PUF bu mikro yapıyı değerlendirerek meydan okuma karşılık verme temelli kimlik doğrulama gerçekliyor. Fiziksel yapı her uyarıldığında, cihazın mikro yapısındaki karmaşık ilişkilerden dolayı tahmin edilemeyen fakat tekrarlanabilir bir yapıda karsılıklar ortaya çıkar. Bu yapı tamamı ile üretim aşamasındaki tahmin edilemeyen fiziksel etmenlere bağlıdır (adil para gibi). Fiziksel yapının uyarılması, meydan okuma; PUF sisteminin tepkisi işe karşılık verme olarak tanımlanır. Belirli bir meydan okuma ile ilgili meydan okumaya verilen karşılığa meydan okuma–karşılık çifti denir. Cihazın kimliği, cihazın kendi mikro yapısı sayesinde sağlanmış olur. Bu yapı, doğrudan meydan okuma karşılık verme temelli kimlik doğrulama  mekanizması ile ortaya çıkmaz, bu tür bir cihaz aldatma saldırıları karsı dayanaklıdır.
Fiziksel mikro yapıdan güçlü ve tekil bir şifreleme anahtarı çıkarmak için bulanık ayırıcı veya anahtar üretici PUF kullanılabilir. Aynı benzersiz anahtar her zaman yeniden  PUF ile üretilebilir. Meydan okuma karşılık verme temelli mekanizmaya, kriptografi uygulanarak elde edilir.
PUF donanımda çok az yer kaplayacak şekilde gerçeklenebilir. Diğer sistemlerde bellekte olası tüm meydan okumalar için bir karşılık tutmak yani meydan okuma bitinin üstü kadar donanımda yer ayırmak gerekirken, PUF'ta sadece meydan okuma ve karsılık vermenin toplam biti kadar donanımda yer ayırmak gerekmektedir. Bazı durumlar PUF uygun mevcut donanımlarla bile gerçeklenebilir.
Klonlanamaz ile kastedilen her PUF cihazı, aynı cihazda aynı yöntemler ile üretilmiş dahi olsa, kendine has ve tahmin edilemez bir yöntem ile meydan okumalara karsılık vermektedir. Bir PUF için meydan okumalara aynı şekilde karsılık verecek ikinci bir PUF cihaz üretmek imkansızdır çünkü üretim aşaması tamamını kontrole almak imkansızdır. Matematiksel olarak klonlanamaz ile kastedilen diğer meydan okuma-karşılık ikililerini kullanarak herhangi bir  karşılığı veya PUF'un rassal parçalarından herhangi birini hesaplamak   zor olmalı. Çünkü yanıtlar çok sayıda rassal parçanın meydan okuma ile karmaşık etkileşimleri sonucunda oluşur. Diğer bir deyişle, verilen bir PUF sistemi için rassal bileşenlerin tüm fiziksel özelliklerini bilmeden, meydan okuma-karşılık ikililerinin tespiti çok zordur. PUF'un fiziksel ve matematiksel olarak klonlanamaz olması onu gerçek manada klonlanamaz yapmaktadır.
Bu özelliklerinden dolayı PUF'lar benzersiz bir aygıt tanımlayıcı olarak kullanılabilir. Ayrıca PUF'lar güvenli anahtar üretimi ve depolanmasında ve ayrıca önemli bir rassallık  kaynağı olarak kullanılabilir.

Türleri

Tüm PUFs'lar sıcaklık, gerilim ve elektromanyetik girişim gibi çevresel etmenlerin bir sonucudur. Bu çevresel etmenler onların performansını etkiler. Bu nedenle, PUF'ın gücü sadece onun rassal olmasından değil aynı zamanda tüm cihazlar için cihazın kendine özgü olmasından kaynaklanmaktadır ve bu özellik aynı cihaz için farklı çevre şartlarında değişim göstermemektedir.
PUF'larda farklı fiziksel rassallık kaynakları kullanılabilir. PUF'lar açıkça ortaya konmuş ve fiziksel sistemlerin özünden kaynaklanan içsel/tam rassallık olarak ikiye ayrılabilir.

Hata düzeltme

Birçok uygulama için çıkışın kararlı olması önemlidir. Eğer PUF şifreleme algoritmalarında anahtar üretiminde kullanılacak işe hata düzeltmesinin doğru yapılması önemlidir ayrıca her türlü şart altında aynı anahtar tekrar üretilebilmeli. Bunun için iki temel yöntem vardır: Ön-işleme ve ardıl işlemler Hata Düzeltme.
Geliştirilen yöntemler PUF'ın güvenlik ve verimini düşürmeden SRAM PUF'ları çok daha güvenli hale getirmiştir .
Carnegie Mellon Üniversitesi'nde yapılan bazı araştırmalarda hata oranını yüzde 70 ile yüzde 100 arasında azaltan farklı PUF gerçeklemeleri bulunmuştur.
Massachusetts Amherst Üniversitesi'nde yapılan araştırmalar ile SRAM PUF'ların anahtar üretiminde hata oranını azaltacak yöntemler geliştirildi.

Güvenlik açıkları

Tüm önerilen PUF'lar klonlanamaz değildir, birçoğuna laboratuvar ortamında başarılı saldırı gerçekleştirilmiştir.
Berlin Teknoloji Enstitüsü bir araştırma ekibi, üniversitenin arıza analiz laboratuvarındaki mevcut cihazları kullanarak  SRAM PUF 20 saat içinde klonlamayı başarmıştır. Bu iş yapılırken sadece bir mikroişlemcinin SRAM (Durağan RAM) hücreleri okundu.
Üniversite Araştırma gösteriyor ki gecikme tabanlı PUF uygulamaları yan kanal saldırıları karsı savunmasız ve bu tarz saldırılara karşı önlemler geliştirmeye çalışmaktadırlar. Ayrıca, hatalı gerçeklenmiş PUF'lar sistemlerde "arka kapı" oluşturmaktadır. Haziran 2012, Fraunhofer Research Institution for Applied and Integrated Security (AISEC)de bir araştırmacı olan Dominik Merli, PUF'ların şifreleme sistemlerin heklenmesi için fazla  miktarda giriş noktaları oluşturduğunu bu yüzden PUF'ın güvenlik tabanlı uygulamalarda pratikte kullanılabilmesi için daha çok araştırılması gerektiği iddia etti.
Sunulan saldırıların tamamı FPGA veya Durağan RAM (SRAM) gibi güvenli olmayan sistemlerdeki PUF uygulamaları ile alakalı. Ayrıca çevrenin uygulanan güvenlik seviyesine uygun olması da önemli bir konu.
Son zamanlarda yapılan çalışmalar gösterdi ki düşük maliyetli cihazlarla mili saniyeler içinde PUF'lara saldırmak mümkün. Bochum Ruhr Üniversitesinden bir takımın rassal PUf'ları XOR işlemlerine tabi tutarak, herhangi bir meydan okumaya karsılık üretecek bir süreç sundular. Bu yöntem için sadece 4 tane meydan okuma - karşılık çifti gerekiyor ve süreç 200ms den daha kısa sürüyor. Bu yöntemi kullanarak, $25 bir aygıt veya yakın alan iletişimi aktif edilmiş bir akıllı telefon ile bir kullanıcın arka cebindeki cüzdanında bulunan bir RFID kartını klonlamayı başardılar.