PUF

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Физически неклонируемая функция (англ. Physical Unclonable Function, PUF) — это функция, воплощенная в физической структуре, которую просто оценить, но трудно охарактеризовать, смоделировать или воспроизвести. Физическая структура, содержащая PUF, состоит из множества случайных компонентов. Эти случайные компоненты вводятся в ходе производственного процесса и неконтролируемы. PUF — это физическая система, которая при воздействии на неё (запросе) порождает уникальный, но непредсказуемый ответ. Специфический вызов и соответствующий ему ответ вместе образуют пару запрос-подтверждение (англ. Challenge-Response Pair, CRP). PUF во многом схож с хеш-функцией, физическая система, состоящая из многих случайных компонентов эквивалентна ключу. PUF также является необратимой функцией.

PUF обладают свойством неклонируемости благодаря тому, что каждый PUF имеет уникальный и непредсказуемый способ отображения вызовов. Два PUFа, которые созданы в результате одних и тех же производственных процессов все же будут обладать разным поведением.

PUF обладает 2 важными свойствами:

  1. Практически невозможно создать физическую копию PUF.
  2. Невозможно создать точную математическую модель PUF, то есть вычислить отклик, если даны точные параметры запроса и другие пары запросов-откликов. Из-за сложности физического взаимодействия эта задача представляет большие вычислительные трудности.

Эти качества вместе и называются неклонируемостью.

В PUF могут использоваться различные источники физической случайности. Различают PUF, в которых рандомность вносится внешними факторами и те, в которых она является свойством, внутренне присущим физической системе.

Области использования PUF[править | править вики-текст]

Большое количество устройств может быть оснащено PUF, например, токены, смарт-карты, банковские карты, ценные бумаги, интегральные схемы, камеры безопасности.

PUF удобны для систем, в которых верификатор с уверенностью знает, что измерительным приборам можно доверять и для исследований используется реальный PUF. PUF сложно использовать для идентификации протоколов с отдаленным доступом. Взломщик может скопировать данные какого-либо PUF и затем через клавиатуру вводить данные. Контрольное устройство не может определить, действительно ли ей представлен PUF.

Виды PUF[править | править вики-текст]

PUF, в которых беспорядочность вносится внешними факторами[править | править вики-текст]

Оптические PUF[править | править вики-текст]

Оптический PUF

Оптический PUF состоит из прозрачного материала (например, стекла), в котором содержатся случайно распределённые свето-отражающие частицы (например, пузырьки воздуха). Когда лазерный пучок освещает материал создаётся спекл-структура (случайная интерференционная картина, которая образуется при взаимной интерференции когерентных волн, имеющих случайные сдвиги фаз и/или случайный набор интенсивностей). Спекл-картина является функцией внутренней структуры PUF, длины волны лазера, угла падения луча.

Одна из реализаций PUF состоит из источника когерентного света, чувствительных элементов на КМОП и электродов, используемых для поворота жидкого кристалла между двумя фазо-вращающими состояниями. Конфигурация электродов формирует вызов. Свет от лазера попадает в PUF и рассеивается. Он может попасть прямо на светочувствительный элемент, или частично поглотиться электродом, рассеяться и поменять поляризацию, в зависимости от состояния кристалла. На каждом чувствительном элементе когерентно складываются вклады по всем путям распространения света. Конфигурация электродов значительно влияет на изображение, записанное сенсором.

Оптичекое зондирование PUF затруднительно, так как рассеяние света скрывает положение рассеивающих частиц. На данный момент технологии позволяют исследовать диффузионный материал только до глубины приблизительно в 10 раз большей длины волны излучения. Но даже если атакующий узнает все положения рассеивающих объектов, он не сможет сделать физическую копию PUF, так как принцип неопределённости не позволят точно расположить большое количество частиц. Может показаться, что проще смоделировать этот процесс и вычислять все правильные ответы на соответствующие вызовы. Но на самом деле в режиме реального времени это очень сложная задача, она требует вычислений порядка (A\lambda^2)^3d/\lambda, где d — толщина PUF, A — освещенная область, \lambda — длина волны, что обычно превышает 10^{20}операций, что невозможно при современном развитии вычислительной техники.

PUF покрытия[править | править вики-текст]

PUF покрытия может быть создан на верхнем слое интегральных микросхем. Полученные в процессе массового изготовления микросхемы отличаются неповторяющимся набором электрических характеристик, что может быть использовано в системах безопасности как гарантированно не поддающийся копированию идентификационный признак.

Интегральная схема покрывается защитным слоем, в котором имеются частички диэлектрика, то есть имеющими случайный размер, форму, и диэлектрическцую постоянную. Прямо под пассивирующий слой подводится набор металлических зондов. Достаточная степень беспорядочности достигается только, если крупинки диэлектрика сравнимы по размерам с расстоянием между датчиками, или диэлектрическая постоянная большая, что создает значительные отклонения от среднего значения. На каждый датчик подается напряжение определённой частоты и амплитуды. Пластина датчика ведет себя как конденсатор со случайной величиной емкости. Это значение может использоваться как идентификационный ключ.

Преимущества PUF покрытия : высокая степень интеграции, размещение под PUF электронной аппаратуры управления делает его контролируемым. Эта уникальность может быть использована для получения идентификатора к устройству, несущему PUF покрытия. Более того, расположение этого непрозрачного PUF в верхнем слое интегральных схем защищает расположенные внизу схемы от атаки. Если атакующий попытается удалить покрытие, первоначальный идентификатор будет уничтожен.

PUF, использующие внутреннюю неупорядоченность[править | править вики-текст]

Кремниевые PUF[править | править вики-текст]

Кремниевые PUF используют случайные вариации задержек в проводниках и затворах полевых транзисторов. Устанавливаются условия гонки в электрической цепи и два переключения распространяются по различным путям и выясняется, какой из них придет первым. Арбитр, обычно реализованный как триггер, дает 1 или 0 в зависимости от того, какой переход завершится первым. Когда схему по одинаковым маскам производят на разных чипах, логические функции, реализуемые в электрических цепях, различаются у каждого чипа из-за случайной вариации задержек.

PUF статической оперативной памяти (SRAM)[править | править вики-текст]

Данная PUF полагается на отклонения, которые неизбежно существуют для материалов, используемых при изготовлении аппаратуры. Они производят для данного входа — выход, который будет отличным для разных образцов данного оборудования, таким образом, препятствуя созданию точной копии данного продукта. Эти PUF представлены на всех интегральных схемах, имеющих статическую память. Они позволяют создавать идентификатор, который является свойством данной микросхемы, а не хранить его в цифровом виде.

Магнитные PUF[править | править вики-текст]

Магнитные PUF существуют на картах с магнитной полосой. Физическая структура магнитного носителя, используемого в картах, производится путём смешения миллиардов частиц феррита бария в пасту в процессе производства. Частицы имеют различную форму и размер. Затем паста наносится на принимающий слой. Частицы ложатся случайным образом. Заставить частицы лечь точно также во второй раз физически невозможно из-за неточности процесса, огромного числа частиц и случайной геометрии частиц. Когда паста высыхает, принимающий слой разрезается на полоски и затем приклеивается к пластиковым карточкам, но случайный порядок на магнитной полосе сохраняется и не может быль изменен. Из-за их физически некопируемой характеристики крайне невероятно, что две магнитные карточки когда-либо окажутся идентичными. В действительности, для стандартного размера пластиковой карточки вероятность того, что две любые карточки имеют точно совпадающие магнитные PUF, оценивается в 1 на 900 миллионов. Более того, поскольку PUF магнитный, мы знаем, что каждая карта несет отчетливый, воспроизводимый и читаемый магнитный сигнал.

Персонализация PUF.

Личные данные, закодированные на магнитной полоске, вносят дополнительную случайность, в этом случае вероятность оценивается как 1 на 10 миллиардов.

Магнитная головка усиливает случайные магнитные сигналы. Так как на магнитную головку влияют скорость, давление, ускорение, каждый её удар о магнитную PUF будет давать вероятностный, но во многом отличительный сигнал. Это делает карту с магнитной полосой превосходным инструментом для генерации ключей, цифровых подписей, единовременных паролей.

См. также[править | править вики-текст]

Литература[править | править вики-текст]