Czym są identyfikatory PUF?

| Gospodarka Komponenty

Podrabianie komponentów elektronicznych jest poważnym problemem. Montując fałszywki, ryzykujemy przedwczesną awarię albo nieprawidłowe działanie sprzętu końcowego, gdyż nie mamy gwarancji ich funkcjonalności ani parametrów, których oczekujemy od oryginałów. Jest to niekorzystne w elektronice użytkowej, a tym bardziej w urządzeniach o krytycznym znaczeniu, jak samochody, sprzęt medyczny, maszyny czy serwery w centrach danych.

Czym są identyfikatory PUF?

Problem podróbek w przemyśle elektronicznym w ostatnich latach bardzo się nasilił. Złożyło się na to kilka czynników. Takim była pandemia, a ostatnio fałszerzom sprzyja coraz bardziej niestabilna sytuacja geopolityczna. W efekcie globalne łańcuchy dostaw są zaburzone, a odbiorcy podzespołów elektronicznych muszą się liczyć z ich brakami. To powoduje, że w desperacji obniżają wymagania, jakie stawiają swoim dostawcom. Sprawia to, że również ci nieuczciwi, handlujący podrobionymi układami scalonymi, znajdują niczego nieświadomych odbiorców.

Dlatego w branży świadomość konieczności śledzenia podzespołów na wszystkich etapach, od produkcji po recykling, stale rośnie. By zapewnić ich identyfikowalność, stosuje się różne podejścia, od znaczników wymagając, by były unikalne oraz czytelne w zautomatyzowanym środowisku fabrycznym, a w niektórych przypadkach również poza fabryką.

Przykładowo płytki podłożowe znakuje się laserowo żłobionym, zwykle 18-znakowym, identyfikatorem. Poszczególne struktury półprzewodnikowe pozwala z kolei rozróżnić ECID (Exclusive Chip Identification). Jest to cyfrowy znacznik zapisywany w pamięci OTP (One-Time Programable) układu, w którym zakodowana jest informacja o jego lokalizacji w obrębie płytki podłożowej, numerze i serii, przeprowadzonych testach. Oprócz tego stosuje się specjalne rozwiązanie w postaci identyfikacji PUF (Physically Unclonable Function).

Na czym polega metoda PUF?

PUF to metoda zabezpieczeń, w której wykorzystuje się to, że z powodu niedoskonałości procesów produkcyjnych struktury półprzewodnikowe różnią się szczegółami fizycznej realizacji, które są dla nich unikatowe. Różnice w wykonaniu wprawdzie nie wpływają na ich wypadkową, ostateczną funkcjonalność, ale skutkują drobnymi, lecz mierzalnymi różnicami w parametrach, na przykład wartościach napięć progowych czy współczynnikach wzmocnienia tranzystorów.

Ponieważ rozbieżności te zależą od przypadkowych czynników, które w sposób nieprzewidywalny i niekontrolowany wpływają na przebieg procesów produkcyjnych, nie jest możliwe ich odtworzenie w podróbce. Co ważne, chociaż te różnice są losowe między poszczególnymi układami, są to cechy deterministyczne i powtarzalne dla konkretnego egzemplarza – pod tym względem przypominają ludzkie cechy biometryczne, jak linie papilarne, układ żył dłoni czy wzór tęczówki oka.

W metodzie PUF wykorzystuje się tę specyfikę, aby generować unikalny klucz kryptograficzny dla danego układu scalonego. W przeciwieństwie do tradycyjnego podejścia w tym przypadku wdraża się jednak mechanizm uwierzytelniania typu wyzwanie–odpowiedź (challenge–response authentication).

W tym schemacie określone dane wejściowe (wyzwanie) generują odpowiedź, która jest unikalna dla konkretnego układu scalonego i, co najważniejsze, praktycznie niemożliwa do podrobienia. Po wyprodukowaniu każdy komponent poddaje się szeregowi różnych wyzwań, na które reakcje są rejestrowane. Informacje te pozwalają go zidentyfikować na dowolnym etapie cyklu życia.

PUF w praktyce

Można to wyjaśnić na przykładzie pamięci DRAM. Każda komórka pamięci tego typu zbudowana jest z przechowującego ładunek kondensatora, od stopnia naładowania którego zależy wartość bitu i tranzystora pełniącego funkcję elementu sterującego. Ze względu na niedoskonałości wykonania kondensator z czasem się rozładowuje. Zawartość komórki pamięci ulega wówczas zmianie. Co kluczowe dla możliwości wdrożenia metody PUF, tempo postępu tego „wycieku” jest zależne od warunków, w jakich przebiega proces produkcyjny i jest inne dla każdej komórki pamięci.

W normalnych warunkach komórki pamięci DRAM są cyklicznie odświeżane. Żeby wyznaczyć identyfikator PUF, zostaje ono wstrzymane na dłuższy niż zazwyczaj, z góry określony, czas. Po jego upływie sprawdza się, które komórki zmieniły stan z powodu wycieku. W takim przypadku w procesie uwierzytelniania wyzwaniem jest pierwotna wartość binarna przypisana tablicy komórek DRAM, a odpowiedzią wartość tej tablicy po określonym czasie.

Co wyróżnia podejście PUF?

Technika PUF ma wiele zalet, dlatego cieszy się coraz większą popularnością. Przede wszystkim nie wymaga przechowywania kluczy kryptograficznych w pamięci nieulotnej. Dzięki temu nie naraża się układów scalonych na ataki sprzętowe, które umożliwiłyby hakerom odczyt zawartości ich pamięci.

W podejściu PUF klucz bowiem nie jest w ogóle zapisywany. Zamiast tego jest generowany w odpowiedzi na wyzwanie, po czym jest natychmiast usuwany. Można to podsumować w ten sposób, że klucz zawsze jest dostępny, ale nigdy nie jest widoczny. Co więcej, próby jego „podejrzenia” wpływają na odpowiedź na wyzwanie, więc również są bezskuteczne.

Przewaga PUF polega też na tym, że jest to rozwiązanie całkowicie sprzętowe. Analogicznie jak sprzętowe generatory liczb losowych mogą generować prawdziwie nieprzewidywalne sekwencje bitów, tak technika PUF pozwala na wygenerowanie prawdziwie nieprzewidywalnego identyfikatora układu scalonego, którego nie można przewidzieć na podstawie żadnego modelu deterministycznego ani quasi-deterministycznego.

Monika Jaworowska