Fysiek onkloonbare functie (PUF): de vingerafdruk van een chip
Elke vel papier heeft, als je goed inzoomt, een uniek patroon van verstrengelde vezels. Geen twee vellen zijn identiek, zelfs niet als ze uit dezelfde fabriek en dezelfde grondstof komen. Bankbiljetten maken hier al decennia gebruik van: een scanner leest het vezelpatroon van een biljet en vergelijkt dat met een eerder opgeslagen meting om vervalsing te ontdekken. Dat toevallige, niet te herhalen patroon is precies het idee achter een fysiek onkloonbare functie, meestal afgekort tot PUF (Engels: physical unclonable function).
Bij een PUF gaat het meestal niet om papier, maar om computerchips. Twee chips die met exact dezelfde ontwerptekening in dezelfde fabriek zijn gemaakt, lijken van buitenaf identiek. Maar op nanometerschaal zitten er onvermijdelijk piepkleine, willekeurige verschillen in: een transistor is een fractie breder, een draadje geleidt een fractie beter. Die verschillen zijn zo klein dat zelfs de fabrikant ze niet kan sturen of voorspellen. Een PUF is een klein stukje elektronica dat deze toevallige verschillen omzet in een meetbaar, digitaal signaal dat uniek is voor dát ene fysieke exemplaar, en dat gebruikt kan worden als een soort onvervalsbare vingerafdruk voor beveiligingsdoeleinden.
Wat is het precies?
Het uitgangspunt is fabricagevariatie: geen enkel productieproces is perfect. Bij het maken van chips ontstaan onvermijdelijk minieme, willekeurige afwijkingen tussen exemplaren, ook al zijn ze gebaseerd op hetzelfde ontwerp. Deze afwijkingen zijn te klein om te beheersen, maar groot genoeg om te meten met de juiste elektronica.
Een PUF-circuit is zo ontworpen dat het deze afwijkingen versterkt tot een leesbaar signaal. Een paar bekende bouwvormen:
- SRAM-PUF: SRAM-geheugencellen (het snelle werkgeheugen in een chip) hebben bij het opstarten een lichte voorkeur voor een 0 of een 1, afhankelijk van minuscule verschillen tussen de transistoren in die cel. Dat opstartpatroon is voor elke chip anders en redelijk stabiel te herhalen.
- Ring-oscillator-PUF: hierbij worden meerdere, in theorie identieke elektronische kringetjes (oscillatoren) tegen elkaar afgezet; welke net iets sneller trilt dan de andere, verschilt per chip.
- Arbiter-PUF: een elektrisch signaal race tweestrijd tussen twee paden die identiek zouden moeten zijn; welk pad wint, hangt af van microscopische verschillen in de bedrading.
- Optische PUF: de oorspronkelijke, niet-elektronische variant uit 2001, waarbij een laserstraal door een laagje met willekeurig verdeelde glasbolletjes wordt geschoten. Het resulterende lichtpatroon (een 'speckle'-patroon) is voor elk stukje materiaal uniek.
Een PUF wordt bevraagd met een zogenoemde challenge (een invoersignaal) en geeft daarop een response (een uitvoersignaal) terug. Samen vormen die een challenge-response-paar. Omdat de fysieke afwijkingen niet exact reproduceerbaar zijn in een kopie, kan niemand — ook de fabrikant niet — een tweede chip maken die op dezelfde challenges dezelfde responses geeft.
In de praktijk is de meting nooit perfect stabiel: temperatuur, spanning en veroudering van het materiaal veroorzaken kleine ruis in de uitlezing. Daarom wordt de rauwe PUF-respons meestal niet direct als sleutel gebruikt, maar eerst 'opgeschoond' met foutcorrectietechnieken (zogeheten fuzzy extractors), zodat dezelfde chip telkens dezelfde, stabiele digitale sleutel oplevert zonder dat die sleutel ooit permanent in het geheugen hoeft te staan.
Wat wil men ermee bereiken?
Het grootste probleem dat een PUF probeert op te lossen, is het veilig opslaan van geheime sleutels in hardware. Normaal gesproken staat een cryptografische sleutel ergens vast in een geheugenchip. Een aanvaller met fysieke toegang tot het apparaat kan proberen dat geheugen uit te lezen, bijvoorbeeld door de chip open te frezen en met een microscoop of sondes de inhoud af te tappen.
Met een PUF hoeft de sleutel niet permanent opgeslagen te worden: hij wordt elke keer opnieuw 'gegenereerd' uit de fysieke eigenschappen van de chip op het moment dat hij nodig is, en verdwijnt daarna weer. Er is dus geen vast geheim meer om te stelen, wat aanvallen aanzienlijk lastiger maakt.
Daarnaast wordt PUF-technologie ingezet tegen namaak en klonen. Omdat elke chip een unieke, niet te reproduceren vingerafdruk heeft, kan een systeem controleren of een onderdeel origineel is of een namaak uit een illegale fabriek. Dat is relevant voor bijvoorbeeld dure sensoren, medische apparatuur, auto-onderdelen en inktcartridges, waar namaak en grijze-markt-onderdelen een reëel commercieel en veiligheidsprobleem vormen.
Tot slot is een PUF aantrekkelijk voor kleine, goedkope Internet-of-Things-apparaten (IoT): slimme thermostaten, sensoren, betaalpasjes. Die hebben vaak te weinig rekenkracht of budget voor dure, aparte beveiligingschips, terwijl een PUF met relatief weinig extra silicium al een uniek identificeerbaar en beveiligd startpunt (een 'hardware root of trust') kan bieden.
Voorbeelden uit de praktijk
De eerste wetenschappelijke beschrijving van het concept kwam van Ravikanth Pappu, destijds verbonden aan het MIT Media Lab, die in 2001 in het tijdschrift Science een optische PUF beschreef: een klein blokje met willekeurig verdeelde glasbolletjes waarvan het lichtpatroon onder laserbelichting als unieke identiteit diende. Een jaar later beschreven onderzoekers van MIT, onder wie Blaise Gassend en Srinivas Devadas, hoe hetzelfde idee met gewone siliciumschakelingen kon worden gerealiseerd — de basis van de PUF-varianten die nu in chips zitten.
Uit dat MIT-onderzoek is het bedrijf Verayo voortgekomen, dat arbiter-PUF-technologie probeerde te commercialiseren voor chipauthenticatie.
Intrinsic ID, met wortels in onderzoek van Philips Research en nauwe banden met chipmaker NXP Semiconductors, heeft zich toegelegd op SRAM-PUF-technologie en levert deze als licentieerbare bouwsteen (IP-blok) aan chipontwerpers wereldwijd; NXP verwerkt deze technologie in beveiligde microcontrollers die onder meer in identiteitsdocumenten en betaalsystemen worden gebruikt.
Analog Devices (voorheen Maxim Integrated) verkoopt onder de naam ChipDNA authenticatiechips die PUF-technologie gebruiken, bijvoorbeeld om originele accu's, sensoren of verbruiksartikelen te herkennen en namaak te weren.
In Taiwan biedt PUFsecurity, een dochteronderneming van geheugenspecialist eMemory, een PUF-gebaseerd 'hardware root of trust'-blok (PUFrt) aan dat chipontwerpers kunnen inbouwen. In het Verenigd Koninkrijk werkt het jonge bedrijf Crypto Quantique aan een PUF die is gebaseerd op kwantumtunneling in plaats van klassieke productievariatie, met als doel nog robuustere sleutelgeneratie voor IoT-chips.
Hoe ver is de techniek?
PUF-technologie is geen labcuriositeit meer: SRAM-PUF's en vergelijkbare varianten zitten al in commercieel verkrijgbare beveiligingschips en microcontrollers. De techniek is ook formeel gestandaardiseerd: de internationale standaardisatieorganisatie ISO publiceerde in 2020 de norm ISO/IEC 20897, die terminologie en beveiligingseisen voor PUF's vastlegt.
Toch is 'onkloonbaar' minder absoluut dan de naam doet vermoeden. Onderzoekers, onder wie Ulrich Rührmair, hebben laten zien dat sommige PUF-typen, met name de arbiter-PUF, met machine learning redelijk goed te voorspellen zijn als een aanvaller genoeg challenge-response-paren kan verzamelen: het model 'leert' als het ware het gedrag van de chip na te bootsen zonder de fysieke chip zelf te kopiëren. Dat betekent niet dat de fysieke chip te dupliceren is, maar wel dat de voorspelbaarheid van de uitkomsten in bepaalde ontwerpen minder sterk is dan gehoopt. Robuustere PUF-varianten en extra bescherming tegen dit soort modelaanvallen zijn een actief onderzoeksgebied.
Een tweede praktisch obstakel is stabiliteit: temperatuur, spanning en veroudering van het materiaal kunnen de meting laten verschuiven, waardoor foutcorrectie nodig is en de betrouwbaarheid op de lange termijn (over jaren gebruik) goed getest moet worden. Fabrikanten publiceren hierover, maar onafhankelijke, langlopende veldgegevens zijn nog relatief schaars.
Per saldo geldt: de basistechniek is volwassen genoeg voor commerciële toepassing in geauthenticeerde onderdelen en sleutelopslag, maar de allerhoogste veiligheidsclaims ('volstrekt onkloonbaar, voor altijd') moeten met enige voorzichtigheid worden gelezen.
Wie werken eraan?
Het onderzoeksveld is ontstaan aan het Massachusetts Institute of Technology (MIT) in de Verenigde Staten, en dat land herbergt met bedrijven als Verayo en Analog Devices nog altijd belangrijke spelers.
Nederland speelt een opvallend grote rol: Intrinsic ID en NXP Semiconductors hebben hun wortels grotendeels in Nederlands (Philips-)onderzoek, en de Technische Universiteit Delft, met onder meer onderzoeker Boris Skoric, doet fundamenteel onderzoek naar de wiskundige en informatietheoretische kanten van PUF's.
In België is de onderzoeksgroep COSIC van de KU Leuven, onder leiding van hoogleraar Ingrid Verbauwhede, een van de meest vooraanstaande academische groepen op het gebied van hardwarebeveiliging en PUF's. In Duitsland doen onder meer de Ruhr-Universität Bochum en het Fraunhofer-instituut onderzoek naar aanvallen op en verdediging van PUF-ontwerpen. In Taiwan en de rest van Azië zijn chipfabrikanten zoals eMemory (via dochter PUFsecurity) actief in de commerciële toepassing binnen de halfgeleiderindustrie. Standaardisatie loopt via het internationale ISO/IEC-comité voor beveiligingstechnieken.