Метод, алгоритм и аппаратные средства для защиты интегральных микросхем от копирования с использованием физически неклонируемых функций тема диссертации и автореферата по ВАК РФ 00.00.00, кандидат наук Боронников Антон Сергеевич

  • Боронников Антон Сергеевич
  • кандидат науккандидат наук
  • 2026, ФГБУН Физический институт им. П.Н. Лебедева Российской академии наук
  • Специальность ВАК РФ00.00.00
  • Количество страниц 160
Боронников Антон Сергеевич. Метод, алгоритм и аппаратные средства для защиты интегральных микросхем от копирования с использованием физически неклонируемых функций: дис. кандидат наук: 00.00.00 - Другие cпециальности. ФГБУН Физический институт им. П.Н. Лебедева Российской академии наук. 2026. 160 с.

Оглавление диссертации кандидат наук Боронников Антон Сергеевич

ВВЕДЕНИЕ

ГЛАВА 1. АНАЛИЗ МЕТОДОВ И СРЕДСТВ ЗАЩИТЫ ИНТЕГРАЛЬНЫХ МИКРОСХЕМ

1.1. Основные проблемы при контрактном производстве микросхем

1.2. Основные методы защиты интеллектуальной собственности интегральных микросхем при контрактном производстве

1.3. Физически неклонируемые функции

1.4. Методы и аппаратные решения защиты микросхем с применением физически неклонируемых функций

1.5. Постановка задачи диссертационного исследования

1.6. Основные результаты и выводы

ГЛАВА 2. ИССЛЕДОВАНИЕ ФИЗИЧЕСКИ НЕКЛОНИРУЕМОЙ ФУНКЦИИ ТИПА АРБИТР

2.1. Программно-аппаратная система для исследования работы АФНФ

2.2. Анализ данных работы АФНФ

2.3. Оценка случайности последовательности вектора откликов в метастабильном состоянии арбитра

2.4. Использование стабильного отклика АФНФ для генерации идентификаторов микросхем

2.5. Основные результаты и выводы

ГЛАВА 3. МЕТОД, АЛГОРИТМ И АППАРАТНЫЕ СРЕДСТВА ДЛЯ ЗАЩИТЫ ИНТЕГРАЛЬНЫХ МИКРОСХЕМ ОТ КЛОНИРОВАНИЯ

3.1. Система шифрования идентификатора CID

3.2. Метод декодирования системы шифрования идентификатора CID

3.3. Функциональный блок и алгоритм активации ресурсов интегральной микросхемы

3.4. Основные результаты и выводы

ГЛАВА 4. РЕАЛИЗАЦИЯ И ЭКСПЕРИМЕНТАЛЬНАЯ ПРОВЕРКА ПРЕДЛОЖЕННЫХ РЕШЕНИЙ

4.1. Аппаратная реализация АФНФ

4.2. Аппаратная реализация блока активации ресурсов

4.3. Аппаратная система тестирования модулей на базе ФНФ

4.4. Программная система тестирования модулей на базе ФНФ

4.5. Основные выводы и результаты

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ПРИЛОЖЕНИЕ А. Свидетельства о государственной регистрации программ для ЭВМ

ПРИЛОЖЕНИЕ Б. Акты внедрения

ПРИЛОЖЕНИЕ В. Описание аппаратных модулей тестового стенда

ПРИЛОЖЕНИЕ Г. Ядро программы PUF Analyzer

Актуальность темы исследования. Интегральные микросхемы (ИМС) являются основными элементами вычислительных систем - от потребительской электроники до критически важных систем промышленной и военной сферы. Процесс производства ИМС глобально разделяется на два этапа - проектирование и изготовление. На первом этапе создается проектное описание ИМС (дизайн), по которому на втором этапе осуществляется физическое исполнение микросхемы. В полупроводниковой промышленности бизнес -модели производства ИМС могут различаться. Большие компании могут выполнять полный цикл работ от проектирования до изготовления своими производственными мощностями. Другим вариантом является модель контрактного производства (fabless -foundry): компании-проектировщики (дизайн-центры, fabless) разрабатывают дизайн ИМС, который передают на производство сторонним фабрикам -производителям (foundry) [1]. Создание собственного полупроводникового производства требует колоссальных инвестиций и многолетнего развития инфраструктуры, что делает данный подход малодоступным для большинства компаний. В связи с этим контрактное производство стало доминирующим в микроэлектронной отрасли. Однако контрактное производство создает определенные проблемы, связанные со сверхпроизводством, утечкой дизайна и обратным проектированием. В России контрактное производство также остаётся востребованным даже в условиях санкционного давления [2-3].

Таким образом, разработка методов защиты интеллектуальной собственности при контрактном производстве является актуальной на сегодняшний день.

Степень разработанности темы. Современные исследования в области защиты интеллектуальной собственности интегральных микросхем при контрактном производстве на уровне дизайна сосредоточены на двух основных направлениях: защита от сверхпроизводства и от обратного проектирования. Эффективными методами борьбы с данными проблемами являются обфускация схем и идентификация ИМС с помощью метода логической блокировки.

Одними из первых авторов по теме идентификации аппаратного обеспечения (Hardware Metering) на уровне дизайна являются Koushanfar F., Qu G. и Potkonjak M. Развитием данной темы с помощью обфускации, логических блокировок элементов ИМС, а также модернизацией существующих решений являются авторы Fyrbiak M., Wallat S., Zhang J., Lin Ya., Lyu Yo., Xie Ya., Roy J., Заливако С.С., Золоторевич Л.А., Alkabani Y. и др.

Одним из активно используемых и развивающихся методов к подтверждению подлинности ИМС является применение физически неклонируемых функций

(ФНФ). В данной области исследования сосредоточены на ключевых направлениях - изучение свойств и типов ФНФ, разработка методов внедрения ФНФ, повышение устойчивости функциональных блоков на базе ФНФ к атакам, оптимизация энергопотребления и производительности и т.д. Рарри R., Ruhrmair и., Devadas S., Иванюк А.А., Шамына А.Ю., Заливако С.С., Певцов Е.Ф., Деменкова Т.А., Алиев Г.С., Лосевской А.Ю., Ярмолик В.Н., Комлева Е.Р., Никифоров М.Б. и др. внесли значительный вклад в развитие методов идентификации ИМС с использованием ФНФ.

Целью диссертационной работы является разработка новых решений для защиты интеллектуальной собственности микросхем при контрактном производстве.

Для достижения поставленной цели необходимо решить следующие основные задачи:

1. Проведение анализа современных методов и аппаратных средств защиты интеллектуальной собственности ИМС при контрактном производстве.

2. Разработка новых методов, алгоритмов и аппаратных средств для обеспечения защиты интеллектуальной собственности ИМС.

3. Разработка программно-аппаратных систем, поддерживающих предложенные решения.

Объектом диссертационного исследования являются интегральные микросхемы.

Предметом исследования являются методы, алгоритмы и аппаратные средства, направленные на защиту интеллектуальной собственности ИМС при контрактном производстве.

Научная новизна сформулирована в следующих положениях:

1. Предложена система шифрования идентификатора ИМС на основе свойства метастабильности синхронного Б-триггера физически неклонируемой функции типа арбитр (АФНФ). Полученный ключ таким образом не постоянный, тем самым устойчив к прогнозированию. В рамках системы предложен аппаратный функциональный блок, предназначенный для автоматической установки триггера АФНФ в метастабильное состояние для последующей работы данного блока в режиме генерации действительно случайных чисел.

2. Предложен метод декодирования зашифрованных данных с помощью системы шифрования идентификатора ИМС на основе свойства метастабильности арбитра АФНФ. В основе декодирования данных лежит изменение температуры кристалла ИМС.

3. Разработаны оригинальные схема и алгоритм активации ресурсов интегральной микросхемы, эффективные при условии отсутствия модификации её проектного описания.

Теоретическая и практическая значимость работы.

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

Разработанные методы и аппаратные средства могут быть внедрены в процесс проектирования и производства микросхем, что повышает их защищенность от несанкционированного доступа и использования. Созданные в ходе работы прототипы аппаратных средств на базе программируемых логических интегральных схем (ПЛИС) и их успешное тестирование подтверждают практическую применимость.

Полученные результаты внедрены в работы, проводимые АО НТЦ «Модуль», и в учебный процесс кафедры вычислительной техники РТУ МИРЭА (Приложение Б). Результаты диссертационного исследования использованы при выполнении государственного задания Министерства науки и высшего образования Российской Федерации (№ FSFZ-2023-0005) в Центре проектирования интегральных схем, устройств наноэлектроники и микросистем РТУ МИРЭА.

Методы исследования. Методология исследования основана на теоретическом анализе существующих методов, а также на экспериментальных исследованиях различных решений на симуляторах и реальных устройствах. Используются как качественные, так и количественные методы анализа и сравнения результатов экспериментов. Оценка последовательностей на случайность проводилась с помощью статистических тестов и тестов на минимальную энтропию. Разработки проводились на основе теории алгоритмов, теории автоматов, методов компьютерного моделирования, тестирования и технологий процедурного и объектно-ориентированного программирования.

Основные положения, выносимые на защиту:

1. Система шифрования идентификатора ИМС на основе свойства метастабильности триггера АФНФ.

2. Метод декодирования зашифрованных данных с помощью предложенной системы шифрования идентификатора ИМС на основе свойства метастабильности триггера АФНФ.

3. Схемотехническое решение и алгоритм активации ресурсов ИМС, основанные на предложенной системе шифрования и метода дешифрации данных.

Соответствие паспорту специальности. Диссертационная работа соответствует научной специальности 2.3.2 «Вычислительные системы и их элементы» и относится к следующим направлениям:

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

п.2. Разработка принципиально новых методов анализа и синтеза вычислительных систем и их элементов, с целью улучшения технических характеристик, включая новые процессорные элементы, сложнофункциональные блоки, системы и сети на кристалле, квантовые компьютеры.

Степень достоверности. Достоверность научных положений и практических результатов, изложенных в диссертационной работе, подтверждена:

1. Компьютерным моделированием и симуляцией.

2. Экспериментальными данными, полученными с привлечением результатов исследований и научных положений, разработанных автором.

Апробация результатов работы. Основные результаты диссертационной работы докладывались и обсуждались на следующих всероссийских и международных научно-технических конференциях: V юбилейный международный форум «Микроэлектроника 2019» (г. Алушта, 2019); V научно -техническая конференция студентов и аспирантов МИРЭА - Российского технологического университета (онлайн, 2020); X Международная научная конференция ИТ -Стандарт 2020 (г. Москва, 2020); Российская научно -техническая конференция с международным участием «Инновационные технологии в электронике и приборостроении. 2021» (г. Москва, 2021); VI научно -техническая конференция студентов и аспирантов МИРЭА - Российского технологического университета (г. Москва, 2021); Научно-техническая конференция с международным участием «Инновационные технологии в электронике и приборостроении» (г. Москва, 2021 г.); Национальная научно-техническая конференция с международным участием «Перспективные материалы и технологии (ПМТ -2022)» (г. Москва, 2022); Национальная научно-практическая конференция «Цифровые технологии и управление качеством в технических системах» (г. Москва, 2022); II Национальная научно-практическая конференция «Фундаментальные, поисковые, прикладные исследования и инновационные проекты» (г. Москва, 2023); IV Национальная научно-практическая конференция «Фундаментальные, поисковые, прикладные исследования и инновационные проекты» (г. Москва, 202 5);

Публикации. По теме диссертации опубликовано 14 печатных работ, в том числе: 8 статей в изданиях из перечня ведущих рецензируемых научных журналов

и изданий ВАК; 6 статей в материалах научно-практических конференций; 3 свидетельства о регистрации программы для ЭВМ.

Личный вклад автора. Все выносимые на защиту научные результаты получены соискателем лично.

Структура и объем диссертации. Диссертационная работа состоит из введения, 4 глав, заключения и 2 приложений. Полный объем диссертации составляет 160 страниц, включая 73 рисунков и 32 таблицы. Список литературы содержит 108 наименований.

ГЛАВА

АНАЛИЗ МЕТОДОВ И СРЕДСТВ ЗАЩИТЫ ИНТЕГРАЛЬНЫХ

МИКРОСХЕМ

1.1. Основные проблемы при контрактном производстве микросхем

Контрактное производство имеет ряд существенных проблем, связанных с безопасностью и защитой интеллектуальной собственности. На основе анализа предметной области выделены основные проблемы, которые изображены на рис

Одной из основных угроз является сверхпроизводство, когда ненадежные фабрики могут выпускать больше чипов, чем предусмотрено заказом, и продавать избыточные микросхемы на рынке без ведома разработчика.

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

В процессе производства микросхем подрядчик может внедрить аппаратные закладки, которые позволяют злоумышленникам получить доступ к конфиденциальным данным или нарушить работоспособность устройства. Их внедрение не нарушают права на интеллектуальную собственность напрямую, но является угрозой целостности и безопасности системы [4-9]. Эти закладки зачастую имеют скрытый характер и могут активироваться только при определённых условиях, что затрудняет их обнаружение на этапе тестирования и эксплуатации.

Основные проблемы при контрактном производстве ИМС

— Сверхпроизводство

—► Утечка дизайна ИМС

Внедрение аппаратных закладок

Рисунок 1.1 - Основные проблемы при контрактном производстве

Также вне зависимости от бизнес-модели производства ИМС еще одной проблемой нарушения интеллектуальной собственности является обратное

проектирование (реверс-инжиниринг), когда злоумышленники воссоздают топологию и схемотехническую структуру ИС [10]. Обратное проектирование может быть полным, когда копируется весь дизайн топологии ИМС, или частичным, когда вносятся изменения с целью улучшения характеристик, внедрения вредоносных функций или обхода защитных механизмов. Эти действия позволяют злоумышленникам создавать контрафактные микросхемы.

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

1.2. Основные методы защиты интеллектуальной собственности интегральных микросхем при контрактном производстве

Одним из решением проблемы утечки дизайна ИМС является метод разделения технологических процессов при изготовлении ИМС между разными предприятиями (сплит-производство) [12-13]. Таким образом, одни транзисторные слои изготавливаются на технологически лучших фабриках, а важные элементы схемы - на проверенных. При таком подходе главным минусом является логистическая сложность.

Косвенным решением проблемы утечки дизайна ИМС является обфускация (запутывание) описания аппаратных средств на всех этапах проектирования микросхемы [14-26]. Обфускация в контексте утечки дизайна ИМС сама по себе недостаточна без других мер защиты на аппаратном уровне, так как лишь затрудняет восстановление схемы, но не производство нелегальных чипов. На уровне языкового описания обфускация обычно достигается за счет модификации графов переходов между состояниями - запутывание эквивалентных состояний на языках описания аппаратуры. В проект до синтеза схемы также добавляются избыточные структуры, которые не изменяют функциональность, но значительно усложняют схему. На уровне топологии ИМС выделяют камуфлирование, которое направлено на противодействие инвазивного (требуется физический доступ) и полуинвазивного анализа чипов. Маскировка топологии реализуется путем модификации

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

Одним из ключевых механизмов защиты интеллектуальной собственности ИМС является идентификация (Hardware Metering) [27]. Под термином «идентификация» понимается процесс получения данных с ИМС, которые позволяют установить её уникальность и подтвердить принадлежность к легально произведённой партии или владельцу прав на интеллектуальную собственность. Уникальный идентификатор микросхемы (Chip ID, CID) представляет собой код или номер, который генерируется и закрепляется за каждой интегральной схемой на этапе её производства. Такой идентификатор может использоваться в различных задачах, включая аутентификацию, управление ресурсами, мониторинг и диагностику.

Идентификация микросхем при контрактном производстве должна состоять из нескольких этапов. Современные методы идентификации основаны на принципе генетических цепочек, когда конечный идентификатор формируется из нескольких компонентов, зачастую с разной физической природой. Важно, чтобы все ключевые параметры не передавались на фабрику. Такой подход позволяет надёжно подтвердить подлинность изделия.

В первую очередь идентификатором ИМС является серийный номер — уникальный код, содержащий в зашифрованном виде всю важную информацию: наименование, производителя, дату выпуска, класс исполнения и другие параметры. Такой подход позволяет не только идентифицировать микросхему на этапе производства, но и отслеживать её дальнейшее использование. Однако его эффективность усложняется при контрактном производстве - нет контроля изготовления ИМС.

Другим способом идентификации является присвоение каждой ИМС уникального CID во время производства на стороне разработчика. Идентификатор записывается в специальную область памяти микросхемы, недоступной для изменения пользователем. CID в таком случае должен быть доступен для считывания через определенные интерфейсы [28]. Для хранения CID обычно используют однократно программируемую память OTP (One Time Programmable) -такая память программируется один раз после изготовления чипа и не подлежит перезаписи или стиранию. По своей природе можно сказать, что OTP относится к энергонезависимой памяти типа постоянного запоминающего устройства (ПЗУ, ROM). Для программирования OTP в данный момент используются две основные технологии записи - fuse (пережигаемые перемычки) и anti-fuse (наращиваемые перемычки) [29]. Перспективной технологией является Anti-fuse, при которой формирование состояния в ячейке памяти образуются вследствие сверхлокальных

диффузионных явлений, протекающих в слое диэлектрика нанометровой толщины. Такая структура затрудняет визуализацию с помощью электронной микроскопии при обратном проектировании и делает идентификацию более надёжной [10, 30].

Методы идентификации разделяют на два класса: активные и пассивные [27, 31]. Пассивная идентификация предполагает подтверждение подлинности ИМС без возможности изменения или контроля её функциональности. В отличие от неё, активная идентификация предоставляет разработчику возможность включения или отключения функциональности ИМС используя различные блокирующие схемы. Оба подхода могут использовать как воспроизводимые, так и неклонируемые CID. В работах [32-37] предлагается использовать в качестве активной идентификации метод логической блокировки (Logic Locking). Основная идея метода заключается во включении в проект дополнительных вентилей, управляемых внешними логическими ключами, без знания которых функционирование ИМС становится невозможным. Обычно в качестве используемых вентилей используют элементы «Исключающее ИЛИ». Безопасность метода логической блокировки оказалась под угрозой из -за новой атаки, называемой SAT-атакой, которая может эффективно расшифровать правильный ключ большинства методов Logic Locking, поэтому реализуются новые модификации данного метода [38-43]. В работе [44] предлагают новый подход к защите интеллектуальной собственности ИМС - DLL (Delay + Logic Locking). Суть метода заключается в комбинировании двух механизмов защиты -традиционной логической блокировки и метода Delay Locking, делающий временные характеристики схемы зависимыми от значения ключа. Такой подход существенно усложняет задачу определения правильного ключа, но злоумышленники все еще могут вычислить ключ, используя SAT-решатели.

Одним из активно используемых методов к подтверждению подлинности ИМС является применение физически неклонируемых функций [45], которые позволяют генерировать уникальные, неклонируемые, невоспроизводимые и надежные CID.

1.3. Физически неклонируемые функции

Физически неклонируемая функция (ФНФ, Physical Unclonable Function -PUF) - односторонняя функция, реализованная в физической структуре [46-48]. Свойство неклонируемости ФНФ связано с несовершенством производственного процесса, поэтому невозможно создать два идентичных физических устройства с одинаковыми характеристиками. Можно считать, что эти характеристики принимают случайные значения.

В общем случае ФНФ описывается значениями пар входных и соответствующих им выходных сигналов. Такая пара, состоящая из входного параметра «запрос» (Challenge, CH) и выходного параметра «отклик» (Response, R), называется парой запрос-отклик (Challenge-Response Pairs, CRP). Тем самым, ФНФ можно рассматривать как функцию, которая преобразует запросы CHi в ответы Ri (1.1).

Ri=f(CHi) (1.1)

Множество CRP уникально идентифицирует физическое устройство и не может быть скопировано даже при условии использования абсолютно одинакового проектного описания.

Один из способов классификации заключается в том, в какой физической среде реализована ФНФ. Различают следующие основные виды [49]:

- Оптические ФНФ, где в качестве физической структуры выступает некий прозрачный материал (например, стекло);

- Магнитные ФНФ, где в качестве физической структуры выступает магнитный носитель;

- Кремниевые ФНФ, где в качестве физической структуры выступает кремниевая подложка.

В зависимости от вида физической структуры в качестве параметров выступают различные характеристики, которые задают значение случайной величины отклика Response. Вид ФНФ зависит от предполагаемого применения в конкретной задаче предметной области.

ФНФ, реализованная на кремниевой интегральной микросхеме, формируется неконтролируемым образом на всех этапах производства микросхемы, начиная с выращивания кристалла и заканчивая литографией на нем. Следовательно, ФНФ зависит от свойств материала подложки, электрических и физических свойств электронных компонентов [50-52].

Выделяют следующие основные типы ФНФ, реализованные в базисе ИМС:

- ФНФ типа арбитр;

- ФНФ на базе кольцевых осцилляторов;

- ФНФ на базе СОЗУ (статическое оперативное запоминающее устройство).

Вариативность реализации ФНФ на кристалле ИМС позволяет выделить

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

1.3.1. ФНФ типа арбитр

Классическая схема физически неклонируемой функции типа арбитр (АФНФ, Arbiter PUF - APUF) [53-60] основана на цепочке сдвоенных мультиплексоров, представляющих собой линию задержки. Она позволяет образовывать пары симметричных путей, форма которых определяется параметром сигнала запроса Challenge на адресных входах мультиплексоров. Несмотря на то, что пути топологически симметричны, задержка на этих путях будет отличаться от кристалла к кристаллу в силу не идеальности производства. На конце цепочки размещается арбитр, который позволяет представить соотношение задержек на путях, т.е. отклик Response. В качестве арбитра могут выступать защёлки или синхронные триггеры (рис. 1.2).

Рисунок 1.2 - ФНФ типа арбитр

Чтобы получить ответ Response, на вход АФНФ подается импульс (pulse), который вначале переходит на все информационные входы первых мультиплексоров. Далее сигналы распространяются по двум симметричным путям, и в конце результата гонки сигналов защелкиваются арбитром. Если в качестве арбитра используется синхронный D-триггер, то на выходе Response могут быть устоявшиеся значения - 0 или 1, и метастабильные состояния (если во время апертурного времени (сумма времени предустановки «time setup» и времени удержания «time hold») работы триггера изменился сигнал на входе D) (рис. 1.3) [5].

Рисунок 1.3 - Возможные значения на выходе арбитра АФНФ

1.3.2. ФНФ на базе кольцевых осцилляторов

ФНФ на базе кольцевых осцилляторов (Ring Oscillator PUF - RO PUF) [61-68] основаны на использовании кольцевых осцилляторов (RO), которые представляют из себя колебательные контуры с нечетным числом инверторов (рис. 1.4). Они формируют импульсные последовательности, частота которых определяется задержкой на элементах схемы. Из-за технологических вариаций даже идентичные по структуре RO имеют разные частоты выходных сигналов. Сравнивая частоты двух таких осцилляторов, можно получить однобитный уникальный отклик.

Рисунок 1.4 - ФНФ на базе осцилляторов

На рис. 1.4 изображена классическая схема ФНФ на базе кольцевых осцилляторов. При подаче разрешающего сигнала БК = 1 на вход блоков RO на выходах возникают колебания инверторы последовательно инвертируют его, формируя замкнутую цепь, в которой сигнал непрерывно циркулирует. Это приводит к возникновению колебаний на выходах осцилляторов с определённой частотой, которая зависит от времени задержки прохождения сигнала через каждый инвертор. Схема управления из двух мультиплексоров коммутирует пару выходов

RO на основе входного запроса Challenge. Выходы мультиплексоров соединены с тактовыми входами счётчиков импульсов. В течение заданного интервала времени (пока EN = 1) каждый счётчик накапливает количество импульсов от своего осциллятора, после чего компаратор определяет, какой осциллятор имеет более высокую частоту (формирование отклика Response).

1.3.3. ФНФ на базе СОЗУ

Принцип работы ФНФ на базе СОЗУ (SRAM) основан на случайности состояния ячеек памяти при включении питания [69-73]. СОЗУ состоит из двух перекрёстно соединенных инверторов и ключевых транзисторов для обеспечения доступа к ячейке. Схема ячейки с явным переключением является обычным RS-триггером (рис. 1.5). Ячейка СОЗУ всегда находится в одном из двух состояний (0 или 1), что, в свою очередь, позволяет использовать ее для хранения одного бита информации. Однако СОЗУ является энергозависимой памятью - после отключения питания состояние ячеек теряется и при следующем включении каждая ячейка случайным образом устанавливается в одно из двух состояний.

R

Рисунок 1.5 - RS-триггер

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

1.3.4. Влияние PVT-факторов на задержку сигналов в кристалле ИМС

Задержки сигналов в проводниках кристалла интегральной схемы зависят от трёх основных параметров: технологического процесса (Process), напряжения питания (Voltage) и температуры (Temperature) - PVT-факторы [74-77].

На кристалле сверхбольших интегральных схем (СБИС) находятся миллионы транзисторов. Все транзисторы не могут иметь одинаковые свойства, так как в процессе производства ИМС возникают отклонения, которые связаны с изменением длины канала, ширины проводников, толщины оксидного слоя, концентрации легирующих примесей и геометрических характеристик элементов. Данные отклонения приводят к разбросу значений пороговых напряжений и сопротивлений транзисторов, следовательно, оказывают влияние на задержку распространения сигналов.

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

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

В связи с PVT-факторами, работа АФНФ и ФНФ на базе кольцевых осцилляторов в значительной степени зависит от температуры и внешнего напряжения. Это приводит к тому, что отклик ФНФ зависит не только от конкретной ИМС, но и от условий окружающей среды, поэтому модуль ФНФ ведет себя непредсказуемо и будет давать сильно отличающиеся отклики на один и тот же запрос [78-79]. В случае применения ФНФ в качестве блока генерации CID используют постобработку для увеличения стабильности [80-81].

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

1.4. Методы и аппаратные решения защиты микросхем с применением

физически неклонируемых функций

При контрактном производстве ИМС используют сочетание активных и пассивных методов идентификации, направленных на защиту интеллектуальной собственности [82-90]. Сутью активного метода является внедрение блокирующей схемы работы ИМС, что позволяет контролировать изделие после производства. Активация происходит записью CID в ИМС компанией -разработчиком способом, известным лишь ей.

Вариант классической архитектуры функционального блока (ФБ) для активации ресурсов ИМС с применением ФНФ представлена на рис. 1.6. Данный блок состоит из модуля ФНФ-CID, на выходе которого отображаются потенциальные идентификаторы, блока коррекции ошибок и ПЗУ для записи эталонного запроса и идентификатора. Разработчик сначала на модуль ФНФ -CID подаёт запросы Challenge и снимает данные с выхода CID. Как только идентификатор будет соответствовать соответствующим требованиям, то данная пара запрос-идентификатор записываются в соответствующие ПЗУ. После этого генерируется сигнал, который активирует ресурсы микросхемы. Вектор откликов ФНФ (в данном случае - CID) при идентификации должен быть стабильным. Но он может быть зашумлен в связи с изменением параметров окружающей среды, деградацией кристалла со временем или различными помехами [91]. Для предотвращения этого используют различные схемы коррекции ошибок (например, коды Хэмминга, БЧХ -коды и коды Рида-Соломона [92]). На вход схемы коррекции ошибок подается идентификатор и вспомогательные данные из ПЗУ CID.

Рисунок 1.6 - Классическая блокирующая схема для активации ресурсов ИМС

на основе ФНФ

Для повышения безопасности в классическую архитектуру часто внедряют дополнительно блокирующую схему, реализованную в виде расширенного конечного автомата с фиктивными состояниями и/или переходами (рис. 1.7), либо на основе комбинационной логики [93-95]. Сигнал активации формируется при

достижении финального состояния, что определяется значением CID, в котором определенные биты должны соответствовать заданным значениям, тем самым усложняя процесс активации за счет подбора оптимальной пары Challenge -CID.

Рисунок 1.7 - Усложненная блокирующая схема для активации ресурсов ИМС

на основе ФНФ

Рассмотренные архитектуры неклонируемой идентификации имеют серьезный недостаток: в ходе обратного проектирования электрическая схема может быть восстановлена, что позволяет злоумышленнику разобраться в ее работе, включая и переходы в сложно-запутанных графах переходные процессы в запутанных конечных автоматах с фиктивными состояниями. Кроме того, ИМС с такой блокирующей схемой требует повторной активации ресурсов чипа при каждом включении, а с учетом известной нестабильности ФНФ существует риск того, что блок коррекции ошибок в определенный момент не отработает, тем самым микросхема выходит из строя. Также известны случаи об угрозе модификации кристалла с целью создания точек доступа (backdoor) для доступа к информации. В связи с этим необходимо предусмотреть контроль топологических слоев изготовленных кристаллов в целях выявления их преднамеренной модификации.

В работе [96] предлагается подход, основанный на повторном лицензировании. Однако данный метод имеет ряд недостатков с точки зрения удобства для конечных пользователей. Прежде всего, он увеличивает время, необходимое для аутентификации. Кроме того, высокая сложность процесса может создать дополнительные трудности для пользователей, требуя специальных знаний или оборудования. Дополнительным недостатком является повышенная вероятность ошибок и сбоев при многократном лицензировании, что может негативно сказаться на стабильности работы устройства или привести к его

блокировке. Наконец, работоспособность метода зависит от доступности серверов компании-разработчика, что ограничивает автономность пользователей.

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

1.5. Постановка задачи диссертационного исследования

На основе проведенного анализа сделан вывод, что на сегодняшний день не существует абсолютных методов защиты интеллектуальной собственности ИМС. Любой подход лишь усложняет процесс обратного проектирования, но не делает его невозможным. Современные алгоритмы анализа и инструменты позволяют обойти даже самые сложные защитные механизмы, что делает проблему аппаратной безопасности актуальной и требующей новых решений.

В данной диссертационной работе предлагается разработка новых нетривиальных методов, алгоритмов и аппаратных решений для защиты интеллектуальной собственности ИМС, основанных на перспективном направлении активной идентификации с использованием физически неклонируемых функций. В отличие от традиционных методов, использующих стабильные отклики ФНФ, в данной работе рассматривается возможность намеренного использования нестабильности ФНФ в качестве механизма защиты, поскольку вместо борьбы с этим явлением, как это делается в большинстве существующих работ, предполагается изучить возможности его применения для усиления защиты ИМС. Наиболее перспективным объектом исследования в этом направлении является ФНФ типа арбитр, так как среди рассмотренных классических ФНФ, реализуемых в кристалле ИМС, именно она демонстрирует наибольшую нестабильность.

1.6. Основные результаты и выводы

1. Рассмотрены основные проблемы и методы защиты интеллектуальной собственности ИМС при контрактном производстве. Определены текущие и перспективные направления.

2. Рассмотрен принцип физических неклонируемых функций в составе кристалла ИМС и их классификация.

3. Рассмотрены аппаратные решения в области активной идентификации с использованием ФНФ. Определены недостатки существующих решений.

4. Определена постановка задачи диссертационного исследования.

ГЛАВА

ИССЛЕДОВАНИЕ ФИЗИЧЕСКИ НЕКЛОНИРУЕМОЙ ФУНКЦИИ

ТИПА АРБИТР

2.1. Программно-аппаратная система для исследования работы АФНФ

Для исследования поведения АФНФ, с целью удобного извлечения данных для последующего анализа, разработан тестовый стенд в виде программно -аппаратной системы [97, глава 4]. В данном стенде в качестве основных блоков выступают персональный компьютер (ПК), на котором установлена разработанная программа «PUF Analyzer» (далее - программа), и программируемая логическая интегральная схема (ПЛИС), на кристалле которой реализована система для работы с АФНФ (рис. 2.1). Обмен данными между ПК и ПЛИС осуществляется по протоколу UART через COM-порт, согласно заданному формату команд.

Рисунок 2.1 - Структурная схема стенда для исследования работы АФНФ

Рекомендованный список диссертаций по специальности «Другие cпециальности», 00.00.00 шифр ВАК

Введение диссертации (часть автореферата) на тему «Метод, алгоритм и аппаратные средства для защиты интегральных микросхем от копирования с использованием физически неклонируемых функций»

2.2. Анализ данных работы АФНФ

Для анализа работы АФНФ реализован ФБ (рис. 2.2), состоящий из модуля АФНФ, выход которого поступал на вход сдвигового 32 -разрядного регистра -вектор откликов Response (далее - VRESP). Чтобы корректно снять данные с регистра VRESP, необходимо при одном и том же значении запроса Challenge 32 раза подавать импульс Pulse. VRESP_CE - сигнал разрешения синхронизации, подаётся вместе с импульсом PULSE

Рисунок 2.2 - ФБ для анализа работы АФНФ

С помощью программы сначала перебирались запросы Challenge из заданного диапазона. Содержимое регистра VRESP при отправленных Challenge записывалось в текстовый документ в формате «значение_challenge: значеные_¥ЯЕ8Р» в шестнадцатеричной системе счисления. Если отклик Response был стабильным, то VRESP состоял из всех нулей или единиц (рис. 2.3).

J CRP2_0, bit- Блоки,.. - □ X

Файл Правка Формат Еид Справка

00000999 00000000 Л

0000099Д 00000000

0000099В FFFFFFFF

0000099С 00000000

0000099D FFFFFFFF

0000099Е FFFFFFFF

0000099F 00000000

000009А0 00000000

000009А1 00000000 V

< >

100% Windows [CRLF] LTTFS

Рисунок 2.3 - Пример регистра VRESP со стабильными откликами

Если содержимое VRESP отличается от значений «00000000h» и «FFFFFFFFh », то значит требуются дополнительные исследования - либо возникали помехи при распространении импульса, тем самым отклик менял значение, либо арбитр попадал в метастабильное состояние (рис. 2.4). Но при беглом просмотре уже можно интуитивно понять, где было возможное метастабильное состояние арбитра отклика (Challenge = 9A2h), а где была помеха (Challenge = 9A6h).

J CRP2_0,tit-Блоки.., □ X

Файл Правка Формат Вид Справка

0000099F 00000000 Л

000009А0 00000000

000009А1 00000000

000009А2 17Е66400

000009АЗ 00000000

000009М FFFFFFFF

000009А5 00000000

000009А6 00040000

000009А7 FFFFFFFF V

< >

100% Windows [CRLF] UTF-S

Рисунок 2.4 - Вектор откликов при метастабильном состоянии арбитра

Метастабильное состояние арбитра АФНФ возможно использовать в качестве генератора действительно случайной последовательности.

Стабильное состояние арбитра можно использовать для генерации идентификаторов последовательности.

2.3. Оценка случайности последовательности вектора откликов в метастабильном состоянии арбитра

Для подтверждения гипотезы об использовании АФНФ в качестве генератора случайных чисел, в котором арбитр находится в метастабильном состоянии, выполнено несколько прогонов одного и того же диапазона Challenge. Исключив из анализа значения VRESP из всех нулей, единиц и с малыми помехами (отличия от основной массы битов одним-двумя разрядами, например, 3 FFFFFFh, 10000000h, 00000С00И и т.д.), получен список с потенциальными значениями Challenge, при которых арбитр попадает в метастабильное состояние (рис. 2.5).

J CRP2_potentialRes... - □ X

Файл Правка Формат Вид Справка

#12 0X00000S8F Л

#13 0X00000690

#14 0X000006 Е F

#15 0Х0000084В

#16 0X00000884

#17 0Х0000090В

#18 0Х0000090С

#19 0Х0000097Д

#20 0Х0000097В

#21 0Х000009А2

#22 0Х00000А38

#23 0Х00000А5В

#24 0Х00000В1В

#25 0Х00000С26

#26 0X00000CFE

#27 0X00000D65

#28 0X00000DCA

#29 0X00000DCB ri_ .ririra.ri.rii- л г V

i >

100* Windows (CRLF} U7F- 8

Рисунок 2.5 - Список потенциальных запросов Challenge, при котором

отклик Response не стабильный

В ходе эксперимента при трех прогонах с диапазоном Challenge от 0 до 10000 было выявлено 116 потенциальных запросов Challenge. Затем в автоматическом режиме программа отправляла в систему на ПЛИС фиксированные значения потенциальных Challenge по 1000 раз каждый и генерировала файлы с частотой вхождения каждого бита. Результаты были различные.

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

ÍJ st2.00000C26.t... - П X Файл Лраека Формат Вид Справка

Файл D:\РПе^\МИРЭА\Аепир.энту *

31-Bit 0/1: 1/999

30-Bit 0/1: 0/1000

29-Bit 0/1: а/1000

28-Bit 0/1: 0/1000

27-Bit В/1: 0/1000

26-Bit 0/1: 0/1000

25-Bit 0/1: 0/1000

24-Bit 0/1: 0/1000

23-Bit 0/1: 0/1000

22-Bit 0/1: 0/1000

21-Bit 0/1: 0/1000

20-Bit 0/1: 0/1000

19-Bit 0/1: 0/1000

18-Bit 0/1: 0/1000

17-Bit 0/1: 0/1000

16-Bit 0/1: 0/1000

15-Bit 0/1: 0/1000

14-Bit 0/1: 0/1000

13-Bit 0/1: 0/1000

12-Bit 0/1: 0/1000

11-Bit 0/1: 0/1000

10-Bit 0/1: 0/1000

9-Bit 0/1: 0/1000

8-Bit 0/1: 0/1000

7-Bit 0/1: 0/1000

6-Bit 0/1: 0/1000

5-Bit 0/1: 0/1000

4-Bit 0/1: 0/1000

3-Bit 0/1: 0/1000

2-Bit 0/1: 0/1000

1-Bit 0/1: 0/1000

0-Bit 0/1; 0/1000 ^

< >

1С Windows (CRLFJ UTF-3

Рисунок 2.6 - Ложные запросы Challenge

С метастабильным откликом не все однозначно. В ходе эксперимента выяснилось, что метастабильность арбитра может появляться с разной вероятностью при разных Challenge.

На рис. 2.7 представлен пример, когда вероятность метастабильности арбитра очень низкая.

3 et2_00000374.t. - □ X

Файл Траекг Формат Вид Справка

райл D:\Files\MHP3A\Acnnpanry Л

31-Bit 0/1 1000/0

30-Bit 0/1 1000/0

29-Bit 0/1 1000/0

28-Bit 0/1 1000/0

27-Bit 0/1 1080/0

26-Bit 0/1 1000/0

25-Bit 0/1 1080/0

24-Вit 0/1 1080/0

23-Bit 0/1 1080/0

22-Bit 0/1 1080/0

21-Bit 0/1 1000/0

20-Bit 0/1 1000/0

19-Bit 0/1 1000/0

18-Bit 0/1 1000/0

17-Bit 0/1 1000/0

16-Bit 0/1 1000/0

lS-Bit 0/1 1080/0

14-Bit 0/1 1000/0

13-Bit 0/1 1000/0

12-Bit 0/1 1000/0

11-Bit 0/1 1000/0

10-Bit 0/1 1000/0

9-Bit 0/1: 1000/0

8-Bit 0/1: 1000/0

7-Bit 0/1: 1000/0

6-Bit 0/1: 1000/0

5-Bit 0/1: 1000/0

4-Bit 0/1: 1000/0

3-Bit 0/1: 1000/0

2-Bit 0/1: 1000/0

1-Bit 0/1: 1000/0

0-Bit < 0/1: 1000/0 > V

1С Windows (CRLF) UTF-8

Д еи_ИЮООА38.1... — ОХ Файп Правка Фермат Вид Справка [файл D:\File-s \НИ ? ЭД\Дсп и ранту л

31-Bit 0/1 30-Bit 0/1 29-Bit 0/1 28-Bit 0/1 27-Bit 0/1 26-Bit 0/1 25-Bit 0/1 24-Bit 0/1 23-Bit 0/1 22-Bit 0/1 21-Bit 0/1 20-Bit 0/1 19-Bit 0/1

18-Bit 0/1 17-Bit 0/1 16-Bit 0/1 15-Bit 0/1 14-Bit 0/1 13-Bit 0/1 12-Bit 0/1 11-Bit 0/1

19-Bit 0/1 9-6it 0/1:

5-Bit 0/1: 7-Bit 0/1: 4/996

6-Bit 0/1: 2/998 5-Bit 0/1: 4-Bit 0/1: 3-Bit 0/1: 2-Bit 0/1: 1-Bit 0/1: 0-Bit 0/1:

3/997 2/998 0/1660 3/997 5/995 1/999 1/999 1/999 2/993 2/998 3/997 0/1660 2/998 2/998 7/993 5/995 0/1660 2/998 2/998 5/995 3/997 1/999 5/995 2/998

3/997 2/998 3/997 1/999 1/999 2/998

1С Windows [CRLF}

В fm_aî8_atrt-.., -OX Файл Правка Формат Вид Справка

00000A3S 00000А38 00000А38 00000А38 00000А30 006Э0А38 00600А38 00600А38 00000А38 00000А38 00000А38 00000Д38 00000А38 00000Д38 00000A33 00000A33 00090А38 00000А38 00000А38 00000А38 00000А38 00000А38 0В000А38 00000А38 00000А38 000Э0А38 00000А38 00000А38 00000А38 00000А38 00000А38

FFFFFFFF FFFFFFFF FFFF7FDD FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FBFFFFFF FFFFFFFF F7FFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FF7FFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFCFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFEFFF

К Windows (CRLF) LTTF-8

Рисунок 2.7 - Малая вероятность попадания арбитра в метастабильное состояние

На рис. 2.8 представлен пример, когда вероятность метастабильности арбитра средняя.

Д «2_мхюозш... - о х

Файл Правка Формат Вид Справка

Файл Э:\Files\MHP3A\Аспиранту *

31-Bit В/1 30-Bit 0/1 29-Bit 0/1 28-Bit 0/1 27-Bit 0/1 26-Bit 0/1 25-Bit 0/1 24-Bit 0/1 23-Bit 0/1 22-Bit 0/1 21-Bit 0/1 20-Bit 0/1 19-Bit 0/1 18-Bit 0/1 17-Bit 0/1 16-Bit 0/1

15-Bit 0/1 14-Bit 0/1 13-Bit 0/1 12-Bit 0/1 11-Bit 0/1

16-Bit 0/1 9-Bit 0/1: 8-Bit 0/1: 7-Bit Э/1: 6-Bit 0/1: 5-Bit 0/1: 4-Bit 0/1: 3-Bit 0/1: 2-Bit 0/1: 1-Bit 0/1: 0-Bit 0/1:

300/700 290/710 145/855 318/682 354/646 350/650 345/65 S 323/677 325/675 351/649 341/659 302/698 322/678 323/677 306/694 291/709 283/717 305/695 279/721 278/722 272/728 291/709 298/762 360/760 285/715 301/699 298/762 320/680 362/698 368/692 280/720 299/761

1С Windows (CRLF)

J fiï_3c8_0. bit-... - О X

Файл Правка Формат Вид Справка

060003С8: FD3FDFFF л

000003С8: FFFFFFFB

000083СВ: FDF3FCEF

060003С8: FF166BEE

000003С8: 6BFFFFFF

060003С8: F71FFE1F

000003С8: EFD7FFDE

066083СЁ: 38DFFBFF

060003С8: F7FE7CDF

000003С8: FFFFFFDF

060003С8: FFFF83F8

000003С8: 67BFFF3F

060003СВ: BF7EFFFF

060003С8: F38F7F1E

000003С8: 31D6FFFF

066003С8: F7C7C7FF

060003С8: FF3FFFFF

060003CB: FFFFFFFF

060003С8: FFEFEFF9

060003С8: FFFFSF24

000003С8: 7FCF7FFD

060003С8: FFFFFFFF

060003C8: B87807FF

060003С8: FBFCA7F0

0800ВЗС8: 7FDFFFF7

000003С8: FFEFDFDB

060003C8: F863FE0F

000003С8; E0E1CFE1

060003С8: FFB81FFF

000003C8Î E2FF9ACF

060003C8: FF1C77FF

000003С8: FFFFFFFF

060003С8: FBDFFDFF v

1С Windows (CRLF) UTF-S

Рисунок 2.8 - Средняя вероятность попадания арбитра в метастабильное состояние

На рис. 2.9 представлен пример, когда вероятность метастабильности арбитра высокая.

Последовательности с высокой вероятностью метастабильности арбитра стоит рассматривать далее с целью оценки на случайность.

/1 Й2_0000084В.М-... - □ X

Файл Правка Формат Вид Спр^ека ¡Файл [3: \Р11е5\МИРЭД\Дспирантура\ л

31-В11 е/1

И-ВИ: 6/1 29-вдг е/1 28-В^ е/1 27-В^ е/1 2б-В1г е/1 25-В^ е/1 24-B.it е/1 23-В^ 6/1

22-В^ е/1 21-в^ е/1 20-в^ е/1 19-вгь е/1 18-в11 е/1 17-в^ е/1 1б-в^ е/1 15-в1± е/1

14-ви е/1 13-в^ е/1 12-в^ е/1 и-вгб е/1 10-в^ е/1 9-В1г е/1 В-В1* е/1 7-В11: 6/1 6-ВМ: е/1 б-в^ е/1 е/1

з-Вгь е/1 е/1

1-В1г е/1

э-ви е/1 <

488/512 461/539 248/752 461/539 516/484 512/488 561/499 524/476 533/467 530/470 529/471 568/492 484/516 468/532 479/521 495/565 488/512 489/511 510/490 514/486 497/503 490/510 493/537 528/472 525/475 498/502 515/435 465/535 479/521 482/518 485/515 488/512

100% ЖтЫ« (С(!1Р) иттз

~ Ях_84Ь_0.Ы-Бло... — □

Файл Правка Формат Вид Справка

0660Э84В: 267ВС510

0600084В: 07160300

0600034В; 04668109

0060084В: 08600360

0000084В: 20560819

0600084В: А026180С

0660084В: 2С860380

0660034В: 60466041

0660Э34В: АЭ646208

0660034В: 53662046

0660034В: 64666002

00660348: 47Е761АА

0660084В: 011РР081

0660084В: 8Э4С0203

0660084В: А4652801

0660084В: С2262800

0666034В: 256661Ее

0660034В: 33661330

0660034В: 69316301

0600034В: 89666002

0066084В: 09166620

0666084В: 1Э15В71Р

0660084В: 80666126

0660084В: 00646201

0666034В: А1361300

0600034В: 29266303

0666034В: 83266600

0066934В: 23666000

0666084В: 40481000

0666084В: 0ОР67Р80

0666084В: 00266604

0666084В: 206С6000

0660034В: 59666001

100% \мп(1о1м(ек1_н

ит^-з

Рисунок 2.9 - Высокая вероятность попадания арбитра в метастабильное состояние

Для оценки случайности последовательностей, сгенерированных АФНФ с метастабильным состоянием арбитра, были применены статистические тесты по стандартам N181 [98].

Под генерацией случайных чисел понимается получение двоичной последовательности из нулей и единиц, в которой отсутствует предсказуемость, а все возможные символы распределены равномерно. Но с виду случайные явления могут оказаться не совсем случайными (например, электромагнитный шум, который выступает в качестве источника энтропии, может быть суперпозицией нескольких более-менее однообразных периодических сигналов). Поэтому нужна оценка возможных случайных последовательностей.

Тесты случайности основываются на проверке нулевой гипотезы -последовательность является истинно случайной и обладает свойствами, ожидаемыми от случайного процесса. Для проверки гипотезы вычисляется тестовая статистика, которая характеризует степень отклонения наблюдаемых результатов от ожидаемой эталонной статистики идеально случайной последовательности (эталонная статистика выводится математическими методами и является сугубо теоретической). Разумеется, что полученная статистика не может сравняться с эталонной, поэтому вводится некоторая доля погрешности (например, 5 процентов) [99-100].

Существует 4 варианта развития событий при проверке нулевой гипотезы:

1. Сделан вывод, что последовательность случайна и это верный вывод.

2. Сделан вывод, что последовательность не случайна, хотя она на самом деле случайна - ошибка первого рода.

3. Сделан вывод, что последовательность случайна, хотя на самом деле не случайна - ошибка второго рода.

4. Сделан вывод, что последовательность не случайна и это верный вывод.

Вероятность ошибки первого рода а называют уровнем статистической значимости. Другими словами, а - это вероятность отбраковать корректную случайную последовательность. В криптографических задачах а обычно принимается в диапазоне от 0,001 до 0,01, чтобы минимизировать вероятность отклонения случайной последовательности.

Для каждого теста рассчитывается так называемое Р-значение, которое отражает вероятность того, что анализируемая последовательность окажется не хуже, чем теоретическая истинно случайная последовательность. Если Р -значение равно «1», то последовательность является абсолютно случайной; если Р-значение равно «0», то последовательность полностью предсказуема. В тестах берется а = 0,01. Из этого следует, что:

- если Р-значение > а, то нулевая гипотеза принимается и последовательность считается случайной.

- если Р-значение < а, то нулевая гипотеза отвергается и последовательность отбраковывается.

Для оценки случайности использовались 15 статистических тестов NIST:

1. Частотный побитовый тест (The Frequency (Monobit) Test).

2. Частотный блочный тест (Frequency Test within a Block).

3. Тест на последовательность одинаковых битов (The Runs Test).

4. Тест на самую длинную последовательность единиц в блоке (Tests for the Longest-Run-of-Ones in a Block).

5. Тест рангов бинарных матриц (The Binary Matrix Rank Test).

6. Спектральный тест (The Discrete Fourier Transform (Spectral) Test).

7. Тест на совпадение неперекрывающихся шаблонов (The Non-overlapping Template Matching Test).

8. Тест на совпадение перекрывающихся шаблонов (The Overlapping Template Matching Test).

9. Универсальный статистический тест Маурера (Maurer's "Universal Statistical" Test).

10. Тест на линейную сложность (The Linear Complexity Test).

11. Тест на периодичность (The Serial Test).

12. Тест приблизительной энтропии (The Approximate Entropy Test).

13. Тест кумулятивных сумм (The Cumulative Sums (Cusums) Test).

14. Тест на произвольные отклонения №1 (The Random Excursions Test).

15. Тест на произвольные отклонения №2 (The Random Excursions Variant Test).

Для тестирования с помощью программы было собрано 10 последовательностей объемом данных порядка 106 бит при разных Challenge. Из-за разности в скорости обновления регистра VRESP и скорости передачи по интерфейсу UART тестируемые последовательности собраны в виде срезов, но данные «паузы» не влияют на процесс генерации случайных чисел.

2.3.1. Частотный побитовый тест

Данный тест определяет соотношение нулей и единиц в битовой последовательности. Их число должно быть примерно одинаковым, что соответствует эталонной случайной последовательности. Последовательность £ длиной п:

£ = {£±, £2,..., £п}

^ е {0,1} Далее выполняется преобразование :

Г+1, если £1 = 1

Х' {-1, если £j = 0 Рассчитывается сумма последовательности (2.1):

п

S

= ^xi (2.1)

_ 1^п1

^оЬБ = (2.2)

л/п

Вычисляется Р-значение через дополнительную функцию ошибок (2.3):

РуаЫе = ег/с (2.3)

где дополнительная функция ошибок определяется как (2.4):

от

erfc(x) = — I е^&г (2.4)

/п )

х

Результаты теста приведены в табл. 2.1.

Таблица 2.1 - Результаты частотного побитового теста

1 2 3 4 5

0/1 552065 / 400692 / 630847 / 417186 / 556611 /

447935 599308 369153 582814 443389

-104130 198616 -261694 165628 -113222

с ^оЪБ 104,13 198.61 261.694 165.62 113.222

р ' уа1ие 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

Соотношение нулей и единиц в последовательностях представлено на рис. 2.10.

о 400000

ш

^ 300000 о

Соотношение "0" и "1" в последовательностях

ш

2 3 4

Последовательность

Рисунок 2.10 - Соотношение нулей и единиц в последовательностях

2.3.2. Частотный блочный тест

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

Необходимо разделить последовательность £ длиной п на N блоков длиной М, при этом рекомендуются следующие условия:

п > 100 и п> МЫ \М >20 и М> 0,01п N < 100

Количество блоков N вычисляется как (2.5):

N =

п

т

Вычисляется статистика по распределению с N степенями свободы (2.6):

(2.5)

N

х1ъз = 4 • м ^(щ -1)2 (2.6)

¿=1

где пI - доля единиц в каждом блоке /.

Вычисляется Р-значение через неполную верхнюю гамму-функцию 1датс(а,х) (2.7):

№ Х1ъ8\

РуаШе = ьдатс — ) (2.7)

где неполная верхняя гамма-функция вычисляется (2.8):

от

1датс(а,х) = ^ I е-1-1а-1& (2.8)

J

Г(а)

Г - стандартная гамма-функция, которая вычисляется (2.9):

х

т = { е-Ч-Чг (2.9)

0

Результаты теста приведены в табл. 2.2.

со

Таблица 2.2 - Результаты частотного блочного теста

м 1 2 3 4 5

N 50

о о Xobs 29535,023 67596,9128 85225,1894 43024,9460 39056,5006

о (N р ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

N 25

О О Xobs 26851,3211 63541,2508 79924,4687 38499,6348 35460,2585

о ^т р ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

N 12

о о Xobs 21071,4947 57495,4775 74953,9002 32039,1347 28835,2635

о 00 р ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

2.3.3. Тест на последовательность одинаковых битов

Целью теста является проверка чередования нулей и единиц случайным образом. Если их смена происходит слишком редко, то такая последовательность не является истинно случайной.

Сначала вычисляется доля единиц ху (2.10):

1 П

п = п^х1 (2.10)

]=1

Затем проверяется условие (2.11):

1

П-2

2

< — (2.11) л/п

Если (2.11) не выполняется, то тест считается не пройдённым и завершается. Результаты тестирования на данном этапе представлены в табл. 2.3

Таблица 2.3 - Результаты теста на последовательность одинаковых битов

1 2 3 4 5

Кол-во «1» 447935 599308 369153 582814 443389

п 0,447935 0,599308 0,369153 0,582814 0,443389

1 П-2 0,052065 0,099308 0,130847 0,082814 0,056611

2 лп 0,002

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

Ни одна последовательность не прошла условие (2.11), следовательно, тест завершается.

2.3.4. Тест на самую длинную последовательность из единиц в блоке

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

Рекомендовано использовать следующие опорные значения, представленные в табл. 2.4.

Таблица 2.4 - Рекомендованные опорные значения для теста на самую длинную

последовательность из единиц в блоке

Длина последовательности п Длина блока М

128 8

6272 128

750000 10000

В каждом тесте необходимо выполнить подсчет максимальной последовательности из единиц для каждого блока. На основании этих данных вычисляется частота для каждого интервала, согласно табл. 2.5.

Таблица 2.5. - Вычисление частот для каждого интервала

М = 8 М = 128 М = 10000

Я0 < 1 < 4 < 10

2 5 11

3 6 12

#3 > 4 7 13

8 14

> 9 15

#6 > 16

Затем вычисляется статистика (2.12):

К -- - -2

7 ^гЧЪ- Ящ)2

(212)

1=0

для значения К и Я берутся из табл. 2.6, а теоретические вероятности п^ из табл. 2.7.

Таблица 2.6 - Вычисление значений К и R

м К R

8 3 16

128 5 49

10000 6 75

Таблица 2.7 - Вычисление теоретический вероятностей

К =3, М =8 К =5, М =128 К =6, М =10000

{9 <1} щ = 0,2148 {£ < 4} щ = 0,1174 {£ < 10} щ = 0,0882

г? II щ = 0,3672 {6 = 5} щ = 0,2430 {£ = 11} щ = 0,2092

{6 = 3} щ = 0,2305 6} II { щ = 0,2493 2} 1 II { щ = 0,2483

> 4} щ = 0,1875 7} II { щ = 0,1752 {^ = 13} щ = 0,1933

{# = 8} щ = 0,1027 {£ = 14} щ = 0,1208

{£ > 9} щ = 0,1124 {6 = 15} щ = 0,0675

{£ > 16} щ = 0,0727

Р-значение равно (2.13):

РуаЫе = Ьдатс (213)

где 1датс - неполная гамма-функция.

Результаты тестов при разных характеристиках отражены в табл. 2.8.

Таблица 2.8 - Результаты тестов на самую длинную последовательность единиц в блоке

1 2 3 4 5

п = 128 М = 8 [5, 0, 5, 4, 2] [0, 0, 1, 2, 13] [5, 0, 5, 2, 4] [1, 0, 2, 6, 7] [0, 0, 5, 2, 9]

Xobs 11,4894 57,5881 12,2356 26,8380 32,3398

р ' value 0,0216 0 0,0157 0 0

Результат Пройден Не пройден Пройден Не пройден Не пройден

п = 6272 М = 128 [3, 0, 3, 9, 7, 2, 25] [0, 0, 0, 0, 0, 0, 49] [10, 0, 10, 10, 6, 6, 7] [1, 0, 1, 2, 2, 4, 39] [0, 0, 1, 2, 2, 4, 40]

Xobs 127,5525 435,9431 38,8695 280,2411 294,5645

р ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

п = 75000 М = 10000 [0, 0, 0, 0, 1, 0, 3, 71] [0, 0, 0, 0, 0, 0, 0, 75] [0, 0, 0, 0, 2, 9, 5, 59] [0, 0, 0, 0, 0, 0, 0, 75] [0, 0, 1, 2, 0, 4, 3, 65]

Xobs 926,3768 1031,6369 652,5773 1031,6369 778,6962

p ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

2.3.5. Тест рангов бинарных матриц

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

Стандартом NIST рекомендовано разделить последовательность на матрицы М X Q = 32 X 32, а длина всей последовательности должна быть п > 38 • М • Q Количество матриц, которое можно сформировать (2.14):

N =

п

IM-Q1 (2Л4)

Далее определяется ранг матриц. Выполняется подсчет следующих частот: FM: число матриц с полным рангом (R = M); FM-1: число матриц с рангом R = M — 1; N — FM — FM-1: число матриц с рангом R < M — 1. Вычисляются теоретические вероятности того, что матрица M X Q будет иметь ранг R, где R = 0,1, 2,..., min(M, Q) (2.15):

R — f

i—f (1 — 21-q)(1 — 2l-M) р = 2r(Q+M-R)-MQ П 1__I (2 15)

R 1 1 1 — 2i-R '

i = 0

Полный ранг (R = M) вычисляется (2.16):

M-1

Рм = П{1 — 21-)~ 0,288 (2Л6)

=0

Ранг R = M — 1 вычисляется (2.17):

1 — Рм

Рм-f = 2 0,475 (2.17)

Остальные ранги R < M — 1 вычисляются (2.18):

Pother = 1 — Рм— Рм-1 * 0,237 (2.18)

Хи-квадрат статистика равна (2.19):

(219)

Р-значение равно (2.20):

(ХоЬз\ —%оЬБ

г,—) = е 2 (2.20)

Результаты тестов при разных характеристиках отражены в табл. 2.9.

Таблица 2.9 - Результаты теста рангов бинарных матриц

1 2 3 4 5

N 976

Рм> Fm—1,Fother [955, 20, 1] [962, 12, 2] [911, 53, 12] [966, 10, 0] [947, 22, 7]

32х32 Xobs 2269,4916 2316,6919 1983,2125 2344,0159 2215.7478

р ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

2.3.6. Спектральный тест

Цель данного теста заключается в выявлении частотных пиков в амплитудном спектре последовательности после выполнения дискретного преобразования Фурье. Длина всей последовательности должна быть п > 1000 бит. Исходная тестируемая последовательность £ преобразуется в числовую последовательность х:

[+1, если £1 = 1

Хк {-1, если ^ — 0

х = {х1,х2, ..., хп}

Для представления последовательности в виде суммы периодических составляющих рассчитывается дискретное преобразование Фурье (2.21):

и — 1

f'-I

п—1

2nikj

хке п (2.21)

к=0

где экспонента выражается через тригонометрическую функцию (2.22):

2nikj /2nkj\ /2ni kj\

en— cos I-) + i • sin

(2ukj\ (2mkj\

(2.22)

j — 0,1,... ,n-1

/ = 4-1

^ - вычисленные значения комплексных амплитуд.

При преобразовании вещественных чисел в комплексные из -за симметрии рассматривается только модуль первой половины спектра полученных амплитуд -

г\ п

от 0 до -.

2

Затем вычисляется пороговое значение (2.23):

к =

N

( Ы^-гг (223)

1

где Iпотражает 95% порог. Если последовательность истинно случайная, то 95% пиков не должны превышать эту границу.

Предельное число пиков, которых должно быть меньше, чем И (2.24):

0,95п

^ =

2

(2.24)

Результат разложения последовательности №1 представлен на рис. 2.11.

Рисунок 2.11 - Спектральный анализ для последовательности №1

Подсчитывается количество амплитуд которые меньше порогового значения, согласно разложению.

Вычисление статистики теста d (2.25):

Nt-N0

d =

п о* °'05 (2 25)

n • 0,95

4

Р-значение равно (2.26):

'\_d\_ ^2

Результаты тестов при разных характеристиках отражены в табл. 2.10.

Pvalue = erfc (2.26)

Таблица 2.10 - Результаты спектрального теста

1 2 3 4 5

h 54,73

о N0 475

о о тЧ Nt 34 18 26 32 27

II d -127,974011 -132,617059 -130,295535 -128,554392 -130,005344

й p ' value 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

h 1730,82

N0 475000

о тН Nt 29019 27746 27746 27979 28184

II Si d -4092,60234 -4104,28418 -4104,28419 -4102,14603 -4100,26482

Pvalue 0 0 0 0 0

Результат Не пройден Не пройден Не пройден Не пройден Не пройден

2.3.7. Тест на встречающиеся непересекающиеся шаблоны

Цель теста — определить, как часто в последовательности появляются фиксированные шаблоны бит, чтобы выявить отклонения от равномерного распределения и независимости. Непересекающиеся шаблоны подразумевают, что при обнаружении совпадения шаблона в последовательности, последующий поиск начинается сразу после найденного фрагмента, не включая в сравнение ни одного бита уже найденного шаблона.

Исходная последовательность длиной п разбивается на N блоков длиной М (2.27):

п

N = [~\ (2.27)

где N <100 и М> 0,01 • п

В каждом блоке ищется какой -нибудь шаблон В длиной т. Длина шаблонов, согласно стандарту, должна оцениваться в диапазоне т. е [2; 10]. Рекомендации

шаблонов для 2 < т < 5 представлены в табл. 2.11, а для 6 < т < 8 - в табл. 2.12 [101].

Таблица 2.11 - Рекомендации шаблонов для 2 < т < 5

т = 2 т = 3 т = 4 т = 5

01 001 0001 00001

10 011 0011 00011

100 0111 00101

110 1000 01011

1100 00111

1110 01111

11100

11010

10100

11000

10000

11110

Таблица 2.12 - Рекомендации шаблонов для 6 <т <8

т = 6 т = 7 т = 8

000001 0000001 1000000 00000001 00101111 10100000 11100010

000011 0000011 1001000 00000011 00110101 10100100 11100100

000101 0000101 1010000 00000101 00110111 10101000 11100110

000111 0000111 1010100 00000111 00111011 10101100 11101000

001011 0001001 1011000 00001001 00111101 10110000 11101010

001101 0001011 1011100 00001011 00111111 10110100 11101100

001111 0001101 1100000 00001101 01000011 10111000 11110000

010011 0001111 1100010 00001111 01000111 10111100 11110010

010111 0010011 1100100 00010011 01001011 11000000 11110100

011111 0010101 1101000 00010101 01001111 11000010 11110110

100000 0010111 1101010 00010111 01010011 11000100 11111000

101000 0011011 1101100 00011001 01010111 11001000 11111010

101100 0011101 1110000 00011011 01011011 11001010 11111100

110000 0011111 1110010 00011101 01011111 11010000

110010 0100011 1110100 00011111 01100111 11010010

110100 0100111 1110110 00100011 01101111 11010100

111000 0101011 1111000 00100101 01111111 11011000

111010 0101111 1111010 00100111 10000000 11011010

111100 0110111 1111100 00101011 10010000 11011100

111110 0111111 1111110 00101101 10011000 11100000

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

Например, если шаблон В = 110 и блок 110011110 и 111110000, то Шг = 2 и Ш2 = 1.

Вычисляется теоретическое распределение - математическое ожидание Я по закону Пуассона (2.28) и дисперсия (2.29):

М -т + 1

X =--(2.28)

2ш у '

( 1 2т- 1\

а2 = М •(-----) (2.29)

\2т 22т )

Вычисляется статистика (2.30):

N 9

V - Л)2

= Ь-*2Г- (230)

N

2 ^(Wi-X)

Xobs , i = 1

Р-значение вычисляется через неполную гамма-функцию (2.31):

РуаЫе = ьдатс (2.31)

Результаты тестов отражены в табл. 2.13.

Таблица 2.13 - Результаты теста на встречающиеся непересекающиеся шаблоны

1 2 3 4 5

м 20000

т 8

Л 78,097656

а2 73,547363

тН О о Xobs 94144,0648 18890,2099 177380,7456 18596,3943 102158,5177

о о р ' value 0 0 0 0 0

о о Результат Не пройден Не пройден Не пройден Не пройден Не пройден

■Ы тН Xobs 47322,8392 15878,0392 73630,3882 14203,5471 44752,0628

О о р ' value 0 0 0 0 0

о о о Результат Не пройден Не пройден Не пройден Не пройден Не пройден

о о Xobs 21602,5057 72932,9188 11083,4855 53132,0206 21191,7891

тН тН р ' value 0 0 0 0 0

тН тН Результат Не пройден Не пройден Не пройден Не пройден Не пройден

2.3.8. Тест на встречающиеся пересекающиеся шаблоны

Тест оценивает количество появлений заданного шаблона В в последовательности, где допускается перекрытие шаблонов.

Исходная последовательность длиной п делится на N независимых блоков длиной М, где п > MN, N > 70

В каждом блоке ищется какой-нибудь шаблон В длиной т. Длина шаблонов, согласно стандарту, должна оцениваться в диапазоне т € [2; 10]. Длина блока М выбирается примерно следующим образом: М = 2т+1 +т - 1.

Шаблон ищется в каждом блоке. Если шаблон совпадает, то «окно» поиска сдвигается не на длину шаблона, а только на 1 бит, что обеспечивает пересеч ение найденных шаблонов. Для каждого блока подсчитывается число появлений шаблона. Эти значения группируются в интервалы д0,д1,... ,д5, где д0 соответствует отсутствию шаблона, д1 - одному появлению и т.д., а учитывает все случаи, где шаблон повторяется 5 или более раз.

Вычисляются среднее количество совпадений шаблона в блоке по закону Пуассона X (2.32) и параметр распределения л (2.33):

М -т + 1

X =--(2.32)

2 т

X

л = х (2.33)

Рассчитываются теоретические вероятности для каждого интервала:

Вероятность отсутствия шаблона ( / = 0) (2.34):

-2)

ле

Щ = + 1,2,л) (234)

2

где Ф( / + 1,2, л) - гипергеометрическая функция первого рода. Таким образом:

щ = е-7

л

ле-7 п2=—(г] + 2)

л е-7 (л2

Щз =—(т+г> +1

ле-7 (л2 л2 3л

Щ4=—Ы+т+т+1

4

Щ5 = 1-^Щ

¿=0

Стандартом рекомендовано брать такие параметры, чтобы X ~ 2. Теоретические вероятности щ для X ~ 2 представлены в табл. 2.14.

Таблица 2.14 - Теоретические вероятности для 2.

п0 0,364091

пг 0,185659

Л2 0,139381

0,100571

п4 0,0704323

Л5 0,139865

Р-значение (2.37):

Статистика для числа степеней свободы К = 5 (2.36):

'К Хойз"

Результаты тестов отражены в табл. 2.15.

Таблица 2.15 - Результаты теста на встречающиеся пересекающие шаблоны

к 9

2 V № - Nnd2 i=0

Pvalue = igamc [-, — ) (2.37)

1 2 3 4 5

m 8

М 520

Л 2

тН О о Xobs 9361,4778 2445,2157 11526,4024 3224,1730 9105,6891

о о р ' value 0 0 0 0 0

о о Результат Не пройден Не пройден Не пройден Не пройден Не пройден

тН тН Xobs 8956,5873 3168,3439 11401,4283 3489,0167 8854,7229

О о р ' value 0 0 0 0 0

о о о Результат Не пройден Не пройден Не пройден Не пройден Не пройден

о о Xobs 5100,6335 10615,0257 2497,1501 10129,5526 4460,3705

тН тН р ' value 0 0 0 0 0

тН тН Результат Не пройден Не пройден Не пройден Не пройден Не пройден

2.3.9. Универсальный тест Мауэра

Универсальный тест Маурера оценивает количество бит между совпадающими шаблонами фиксированной длины Ь. Этот тест проверяет,

Похожие диссертационные работы по специальности «Другие cпециальности», 00.00.00 шифр ВАК

Список литературы диссертационного исследования кандидат наук Боронников Антон Сергеевич, 2026 год

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Скопьюк В.А., Клименко И.В. Состояние современной мировой полупроводниковой индустрии // Устойчивое развитие экономики: международные и национальные аспекты : электронный сборник статей V Международной научно -практической конференции, Новополоцк, 13-14 окт. 2022 г. / Полоцкий государственный университет имени Евфросинии Полоцкой. - Новополоцк. - 2022. - С. 422-426.

2. Технологии АО «Микрон» [Электронный ресурс] // Сайт компании АО «Микрон», URL: https://mikron.ru/capabilities/technology/ (дата обращения: 12.04.2024)

3. Сиротин Д.В. Состояние и возможности развития российской микроэлектронной отрасли // Экономическое возрождение России. - 2021. - № 3 (69). - С. 105-122.

4. Певцов Е.Ф., Деменкова Т.А. Доверенное проектирование интегральных микросхем // Наноиндустрия. - 2021. - Т. 14, №2 S7 (107) - С. 856-859.

5. Деменкова Т.А., Индришенок А.О. Методы обнаружения аппаратных закладок в цифровых вычислительных системах // Научно-технический вестник Поволжья. - 2021. - № 5. - С. 50-53.

6. Pevtsov E.PH., Demenkova T.A., Shnyakin A.A. Design for testability of integrated circuits and project protection difficulties // Russian Technological Journal. -2019. - № 4 (30). - С. 60-70.

7. Белоус А.И., Солодуха В.А., Шведов С.В. Программные и аппаратные трояны — способы внедрения и методы противодействия. Первая техническая энциклопедия // М: ТЕХНОСФЕРА. - 2019. — 688 c.

8. Певцов Е.Ф., Деменкова Т.А., Индришенок А.О., Филимонов В.В. Выявление аппаратных уязвимостей цифровых устройств на основе систем сканирования и полунатурного моделирования // Russian Technological Journal. -2024. - № 12 (4). - С. 23-39.

9. Кузнецов Е., Сауров А. Аппаратные трояны. Часть 1: Новые угрозы кибербезопасности // Наноиндустрия. - 2016 - № 7 (69) - С. 16-25.

10. Федорец В.Н., Белов Е.Н., Балыбин С.В. Технологии защиты микросхем от обратного проектирования в контексте информационной безопасности // М: ТЕХНОСФЕРА. - 2019. - 216 c.

11. Кессаринский Л.Н., Ширин А.О., Коваль К.А., Тайибов Ф.Ф., Каменева А.С. Выявление признаков контрафакта в изделиях электронной компонентной базы в аспекте обеспечения промышленной кибербезопасности // Безопасность информационных технологий. - 2019. - Т. 26, № 2. - С. 117-128.

12. Vemuri R., Chen S. Split Manufacturing of Integrated Circuits for Hardware Security and Trust: Methods, Attacks and Defenses // Springer Cham. - 2021. - 193 c.

13. Perez T.D., Pagliarini S. A Survey on Split Manufacturing: Attacks, Defenses, and Challenges // IEEE Access. - 2020. - Vol. 7. - С. 184013-184035.

14. Золоторевич Л.А. Обфускация комбинационных схем цифровых устройств от несанкционированного доступа // Информатика, 2019. - Т. 16, № 3. -С. 89-100.

15. Провкин В.А., Матросова А.Ю., Енютина А.И. O возможностях введения дополнительных вентилей с целью обфускации логических схем // Математическое и программное обеспечение информационных, технических и экономических систем: материалы VIII Международной молодежной научной конференции, Т. 306. под общей редакцией И.С. Шмырина / Национальный исследовательский Томский государственный университет. - Томск. - 2021.

16. Meyer-Base A., Castillo E., Botella G. [и др.] Intellectual property protection (IPP) using obfuscation in C, VHDL, and Verilog coding // SPIE Defense, Security, and Sensing / International Society for Optics and Photonics. - 2011. - С. 80581F-80581F.

17. Zhang J. A Practical Logic Obfuscation Technique for Hardware Security // IEEE Transactions on Very Large Scale Integration (VLSI) Systems. - 2016. - Vol. 24, Iss. 3. - С. 1193-1197.

18. Nishita N.Sh., Shamly A.J., Sivamanga N.M. [и др.] Hardware Trojan Prevention using Logic Obfuscation // 2023 International Conference on Sustainable Computing and Smart Systems (ICSCSS). - 2023 (DOI: 10.1109/ICSCSS57650.2023.10169120).

19. Seetharaman R., Deepa A., Mythily K. Obfuscation Technique to Protect the Hardware IP Piracy // 2023 7th International Conference on Computing Methodologies and Communication (ICCMC). - 2023 (DOI: 10.1109/ICCMC56507.2023.10084185).

20. Latibari B.S., Ghimire S., Chowdhury M.A. [и др.] Automated Hardware Logic Obfuscation Framework Using GPT // 2024 IEEE 17th Dallas Circuits and Systems Conference (DCAS). - 2024 (DOI: 10.1109/DCAS61159.2024.10539877).

21. Rani R.U., Jayanthi D., Vignesh N.A., Kavitha K. Key-Based Functional Obfuscation of Integrated Circuits for a Hardware Security // 2019 2nd International Conference on Intelligent Computing, Instrumentation and Control Technologies (ICICICT). - 2019 (DOI: 10.1109/ICICICT46008.2019.8993122).

22. Abideen Z.U., Perez T.D., Pagliarini S. From FPGAs to Obfuscated eASICs: Design and Security Trade-offs // 2021 Asian Hardware Oriented Security and Trust Symposium (AsianHOST). - 2021 (DOI: 10.1109/AsianHOST53231.2021.9699758).

23. Rahman M.M., Bhunia S. Practical Implementation of Robust State-Space Obfuscation for Hardware IP Protection // IEEE Transactions on Very Large Scale Integration (VLSI) Systems. - 2024. - Vol. 32, Iss. 2. - С. 333-346.

24. Li M., Shamsi K., Meade T. [и др.] Provably Secure Camouflaging Strategy for IC Protection // IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. - 2019. - Vol. 38, Iss. 8. - С. 1399-1412.

25. Collantes M.M., Massad M., Garg S. Threshold-Dependent Camouflaged Cells to Secure Circuits Against Reverse Engineering Attacks // 2016 IEEE Computer Society Annual Symposium on VLSI (ISVLSI). - 2021 (DOI: 10.1109/ISVLSI.2016.89).

26. Su L-Y., Huang Sh-H. Design Flow for Incorporating Camouflaged Logic Gates to Enhance Hardware Security While Considering Timing Closure // 2024 IEEE International Symposium on Circuits and Systems (ISCAS) . - 2021 (DOI: 10.1109/ISCAS58744.2024.10558231).

27. Koushanfar F., Qu G., Potkonjak M. Hardware metering // Proceedings of the 38th Design Automation Conference. - 2001. - С. 490-493.

28. Артеменков В.В., Гасников А.О., Ершов М.И., Трушлякова В.В. Методы ограничения доступа к данным на кристалле интегральной схемы // Наука настоящего и будущего. - 2019. - Т. 3. - С. 7-11.

29. Защита микросхем от реверс-инжиниринга и несанкционированного проникновения [Электронный ресурс] // Статья на сайте научно -практических публикаций «Хабр» автора «amartology», URL: https://habr.com/ru/articles/436998/ (дата обращения: 20.05.2024).

30. Ермаков И.В., Лосевской А.Ю., Нуйкин А.В. Электрически однократно программируемая энергонезависимая память на основе стандартной КМОП -технологии // Наноиндустрия. - 2021. - № S91-1 - С. 175-181.

31. Koushanfar F. Hardware metering: A survey // Introduction to Hardware Security and Trust / M. Tehranipoor, C. Wang (eds.). - N. Y.: Springer. - 2012. - Ch. 5. - С. 103-122.

32. Minnaert B., Pissoort D., Stevens N. Dedicated computational models for the electromagnetic emissions of integrated circuits // 2015 International Conference on Electromagnetics in Advanced Applications (ICEAA). - 2015 (DOI: 10.1109/ICEAA.2015.7297167).

33. Kamali H.M., Azar K.Z., Farahmandi F., Tehranipoor M.M. Advances in Logic Locking: Past, Present, and Prospects // IACR Cryptol. ePrint Arch. - 2022. - № 260. - С. 1-39.

34. Guin U., Zhou Z., Singh A. A Novel Design-for-Security (DFS) Architecture to Prevent Unauthorized IC Overproduction // 2017 IEEE 35th VLSI Test Symposium (VTS). - 2017 (DOI: 10.1109/VTS.2017.7928946).

35. Guin U., Zhou Z., Singh A. Robust Design-for-Security Architecture for Enabling Trust in IC Manufacturing and Test // IEEE Transactions on Very Large Scale Integration (VLSI) Systems - Vol. 26, Iss. 5. - C. 818-830.

36. Patil V.C., Vijayakumar A., Kundu S. Preventing integrated circuit piracy via custom encoding of hardware instruction set // 2016 17th International Symposium on Quality Electronic Design (ISQED). - 2016 (DOI: 10.1109/ISQED.2016.7479206).

37. Roy J., Koushanfar F., Markov I.L. EPIC: Ending Piracy of Integrated Circuits // Design, Automation & Test in Europe Conf (DATE). - 2008 (DOI: 10.1109/DATE.2008.4484823).

38. Yasin M., Mazumdar B., Rajendran J., Sinanoglu O. SARLock: SAT attack resistant logic locking // 2016 IEEE International Symposium on Hardware Oriented Security and Trust (HOST). - 2016 (DOI: 10.1109/HST.2016.7495588).

39. Gandhi J., Shekhawat D., Santosh M., Dofe J., Pandey J.G. Large Language Model Driven Logic Locking: A Generative Approach to Secure IC Design // 2024 IEEE 33rd Asian Test Symposium (ATS). - 2024 (DOI: 10.1109/ATS64447.2024.10915359).

40. Chowdhury O., Debnath A., Chakraborty S. [h gp.] Random Logic Locking with Enhanced Resilience against SAT Attacks // 2024 IEEE Calcutta Conference (CALCON). - 2024 (DOI: 10.1109/CALCON63337.2024.10914248).

41. Rathor V.S., Singh M., Sahoo K.S. [h gp.] GateLock: Input-Dependent Key-Based Locked Gates for SAT Resistant Logic Locking // IEEE Transactions on Very Large Scale Integration (VLSI) Systems - 2024. - Vol. 32, Iss. 2. - C. 361-371.

42. Jadhav G.R., Shukla S., Singh V. On Attacking Scan-based Logic Locking Schemes // 2023 IEEE International Symposium on Defect and Fault Tolerance in VLSI and Nanotechnology Systems (DFT). - 2023 (DOI: 10.1109/DFT59622.2023.10313561).

43. Juretus K., Savidis I. Increased Output Corruption and Structural Attack Resilience for SAT Attack Secure Logic Locking // IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems - 2024. - Vol. 40, Iss. 1. - C. 38-51.

44. Xie Ya., Srivastava A. Delay locking: Security enhancement of logic locking against IC counterfeiting and overproduction // 2017 54th ACM/EDAC/IEEE Design Automation Conference (DAC). - 2017 (DOI: 10.1145/3061639.3062226).

45. Herder Ch., Yu M-D., Koushanfar F., Devadas S. Physical Unclonable Functions and Applications: A Tutorial // Proceedings of the IEEE. - 2014. - Vol. 102, №2 8. - C. 1126-1141.

46. Pappu R. Physical One-Way Functions: PhD Thesis in Media Arts and Sciences // Cambridge, Massachusetts Institute of Technology. - 2001. - 154 c.

47. Gassend B., Clarke D., Dijk M.S., Devadas S. Controlled physical random functions // Proceedings of the 18th Annual Computer Security Applications Conference (ACSAC). - 2002. - C. 149-160.

48. Ruhrmair U., Busch H., Katzenbeisser S. Strong PUFs: Models, Constructions, and Security Proofs // в книге: Towards Hardware-Intrinsic Security. -2010. - С. 79-96.

49. Комлева Е.Р., Никифоров М.Б. Физически неклонируемые функции. Проблемы и перспективы. // Известия Тульского государственного университета. Технические науки. - 2021. - № 6. - C. 61-69.

50. Бельский В.С., Чижов И.В., Чичаева А.А., Шишкин В.А. Физически неклонируемые функции в криптографии // International Journal of Open Information Technologies. - 2020. - Т. 8, № 10. - С. 10-26.

51. Иванюк А.А., Заливако С.С. Физическая криптография и защита цифровых устройств // Доклады БГУИР. - 2019. - № 2. - С. 50-58.

52. Ярмолик В.Н., Вашинко Ю.Г. Физически неклонируемые функции. Информатика. - 2011. - Т. 30, № 2. - С. 92-103.

53. Лебедев В.Р., Певцов Е.Ф. Реализация физически неклонируемой функции на ПЛИС // Перспективные материалы и технологии (ПМТ-2023). Сборник докладов Национальной научно-технической конференции с международным участием Института перспективных технологий и индустриального программирования РТУ МИРЭА / редкол.: А.Н. Юрасов [и др.]. - Москва, 2023. - Т. № 1. - С. 365-372.

54. Шамына А.Ю. Анализ характеристик физически неклонируемой функции типа арбитр на FPGA Artix-7 // Компьютерные системы и сети: сборник статей 57 -ой научной конференции аспирантов, магистрантов и студентов, Минск, 19-23 апреля 2021 г. / Белорусский государственный университет информатики и радиоэлектроники, Минск. - 2021. - С. 78 -81.

55. Козин Д.А., Некрасов П.В., Митяков И.А., Пинчук Н.С. Исследование параметров физически неклонируемой функции типа арбитр при реализации на ПЛИС // Безопасность информационных технологий. - 2023. - Т. 30, № 2. - С. 142150.

56. Иванюк А.А. Синтез симметричных путей физически неклонируемой функции типа арбитр на FPGA // Информатика. - 2019. - Т. 16, № 2. - С. 99-108.

57. Hemavathy S., Kanchana Bhaaskaran V.S. Arbiter PUF—A Review of Design, Composition, and Security Aspects // IEEE Access. - 2023. - Vol. 11. - С. 3397934004.

58. Anitha K., Gopathoti K.K., Rajeswari J. [и др.] FPGA Implementation of Arbiter PUFs for ideal Cryptographic Key Generation // 2021 5th International Conference on Electronics, Communication and Aerospace Technology (ICECA). - 2022 (DOI: 10.1109/ICECA52323.2021.9676119).

59. Shariffuddin Sk., Sivamangai N.M., Napolean A. Review on Arbiter Physical Unclonable Function and its Implementation in FPGA for IoT Security Applications // 2022 6th International Conference on Devices, Circuits and Systems (ICDCS). - 2022 (DOI: 10.1109/ICDCS54290.2022.9780766).

60. Shao J. Characterization of FPGA-based Arbiter Physical Unclonable Functions : магистерская диссертация // Stockholm Sweden, 2019. - 53 с.

61. Иванюк А.А., Ярмолик В.Н. Физически неклонируемые функции на базе управляемого кольцевого осциллятора // Безопасность информационных технологий. - 2023. - Т. 30, № 3. - С. 90-103.

62. Нестеренко С.А. Реализация физически неклонируемой функции на базе кольцевых генераторов импульсов в программируемой вентильной матрице // Современные информационные технологии в управлении качеством : сборник статей III Международной научно -прикладной конференции, Пенза / Под редакцией В.В. Рыжакова. - 2014. - С.12-15.

63. Kareem H., Dunaev D. A robust architecture of ring oscillator PUF: Enhancing cryptographic security with configurability // Microelectronics Journal. - 2024.

- Vol. 143 (DOI: 10.1016/j.mejo.2023.106022).

64. Rizk D., Rizk R., Rizk F. [и др.] A Cost-Efficient Reversible-Based Configurable Ring Oscillator Physical Unclonable Function // 2021 IEEE 34th International System-on-Chip Conference (SOCC). - 2021 (DOI: 10.1109/SOCC52499.2021.9739636).

65. Amin F., Kashem M.A. Lipu A.A. [и др.] Design of a Highly Randomized Crossover Ring Oscillator Physical Unclonable Function // 2022 12th International Conference on Electrical and Computer Engineering (ICECE). - 2022 (DOI: 10.1109/ICECE57408.2022.10088891).

66. Pramudita R., Ramadhan S., Hariadi F.I. [и др.] Implementation Ring Oscillator Physical Unclonable Function (PUF) in FPGA // 2018 International Symposium on Electronics and Smart Devices (ISESD). - 2018 (DOI: 10.1109/ISESD.2018.8605475).

67. Kareem H., Dunaev D. Xilinx FPGA-based Ring Oscillator PUFs: Design Challenges and Solutions // 2022 11th Mediterranean Conference on Embedded Computing (MECO). - 2022 (DOI: 10.1109/MECO55406.2022.9797077).

68. Garcia-Bosque M., Aparicio R., Diez-Senorans G. [и др.] An analysis of the behaviour of a PUF based on ring oscillators depending on their locations // 2022 17th Conference on Ph.D Research in Microelectronics and Electronics (PRIME). - 2022 (DOI: 10.1109/PRIME55000.2022.9816767).

69. Aung P.P. [и др.] Evaluation of SRAM PUF characteristics and generation of stable bits for IoT security // Emerging Trends in Intelligent Computing and Informatics.

- 2020. - № 1 - С. 441-450.

70. Bhaskar A. Design and analysis of low power SRAM cells // Institute of Electrical and Electronics Engineers Inc. - 2017. - С. 1-5.

71. Alheyasat A., Torrens G., Bota S., Alorda B. Weak and Strong SRAM cells analysis in embedded memories for PUF applications // 2019 XXXIV Conference on Design of Circuits and Integrated Systems (DCIS). - 2019 (DOI: 10.1109/DCIS201949030.2019.8959939).

72. Vatajelu E.I., Natale G., Prinetto P. Towards a highly reliable SRAM-based PUFs // 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE). -2016. - C. 273-276.

73. Алиев Г.С. Разработка метода идентификации устройств интернета вещей с использованием физически неклонируемых функций: дис. ... канд. техн. наук. - Ставрополь, 2021. - 171 c.

74. Chen Sh.-W., Chang M.-H., Hsieh W.-C. [и др.] Fully on-chip temperature, process, and voltage sensors // Proceedings of 2010 IEEE International Symposium on Circuits and Systems. - 2010 (DOI: 10.1109/ISCAS.2010.5537410).

75. Onaissi S., Taraporevala F., Liu J. [и др.] A fast approach for static timing analysis covering all PVT corners // 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC). - 2011 (DOI: 10.1145/2024724.2024899).

76. Pasricha S., Park Yo.-H, Kurdahi F.J. [и др.] Incorporating PVT Variations in System-Level Power Exploration of On-Chip Communication Architectures // 21st International Conference on VLSI Design (VLSID 2008). - 2008 (DOI: 10.1109/VLSI.2008.14).

77. Kalluru S.H., Saha P., Zahra A. [и др.] PVT and Aging Degradation Invariant Automated Optimization Approach for CMOS Low-Power High-Performance VLSI Circuits // 2021 22nd International Symposium on Quality Electronic Design (ISQED). -2021 (DOI: 10.1109/ISQED51717.2021.94243 66).

78. Douadi A., Natale G.D., Maistri P. [и др.] A Study of High Temperature Effects on Ring Oscillator Based Physical Unclonable Functions // 2023 IEEE 29th International Symposium on On-Line Testing and Robust System Design (IOLTS). - 2023 (DOI: 10.1109/IOLT S59296.2023. 10224886).

79. Mustapa M., Niamat M. Temperature, Voltage, and Aging Effects in Ring Oscillator Physical Unclonable Function // 2015 IEEE 17th International Conference on High Performance Computing and Communications. - 2015 (DOI: 10.1109/HPCC-CSS-ICESS.2015.247).

80. Huang Zh., Bian J., Lin Ya. [и др.] Design Guidelines and Feedback Structure of Ring Oscillator PUF for Performance Improvement // IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. - 2024. - Vol. 43, Iss. 1. - С. 71-84.

81. Batabyal S., Bazil Rai A.A. Design of A Ring Oscillator Based PUF with Enhanced Challenge Response pair and Improved Reliability // 2019 4th International Conference on Recent Trends on Electronics, Information, Communication & Technology (RTEICT). - 2019 (DOI: 10.1109/RTEICT46194.2019.9016894).

82. Rohinth Ram R.V., Kaveri R.M., Bhuvanesh P. [и др.] Design of Physically Unclonable Function for FPGA Identification // 2023 Fifth International Conference on Electrical, Computer and Communication Technologies (ICECCT). - 2023 (DOI: 10.1109/ICECCT56650.2023.10179643).

83. Семенов А.В., Костюк А.В. Защита ключей микросхем на физически неклонируемых функциях в условиях недоверия к кремниевой фабрике // Вопросы защиты информации. - 2015. - № 2 (109) - С. 63-68.

84. Боронников А.С. Методы, алгоритмы и аппаратные средства защиты интегральных микросхем от несанкционированного доступа // International Journal of Open Information Technologies. - 2024. - Т. 12, № 9. - С. 120-131.

85. Alkabani Y., Koushanfar F. Active hardware metering for intellectual property protection and security // USENIX Security Symposium (SS'07). - Boston, 2007.

- С. 291-306.

86. Koushanfar F. Provably secure active IC metering techniques for piracy avoidance and digital rights management // IEEE Trans. Inf. Forensics and Security. -2012. - Vol. 7, № 1. - С. 51-63.

87. Alkabani Y., Koushanfar F., Potkonjak M. Remote activation of ICs for piracy prevention and digital right management // EEE/ACM Intern. Conf. on Comp.-Aided Design (ICCAD'07), San Jose, USA, Nov. 4-8, 2007 / ACM, New York. - San Jose, 2007. - С. 674-677.

88. Guin U., Forte D., Tehranipoor T. Anti-counterfeit Techniques: From Design to Resign // 2013 14th International Workshop on Microprocessor Test and Verification.

- 2013 (DOI: 10.1109/MTV.2013.28).

89. Leest V., Tuyls P. Anti-counterfeiting with hardware intrinsic security // 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE). - 2013 (DOI: 10.7873/DATE.2013.238).

90. Rührmair U., Devadas S., Koushanfar F. Security Based on Physical Unclonability and Disorder (DOI:10.1007/978-1-4419-8080-9_4).

91. Maiti A., Schaumont P. The Impact of Aging on a Physical Unclonable Function // IEEE Transactions on Very Large-Scale Integration (VLSI) Systems. - 2014.

- Vol. 22, Iss. 9. - С. 1854-1864.

92. Семенов Ю.А. Коррекция ошибок [Электронный ресурс] // URL: http://book.itep.ru/2/28/corec_28.htm (дата обращения: 15.05.2024).

93. Koushanfar F. [и др.] Active Hardware Metering by Finite State Machine Obfuscation // Hardware Protection through Obfuscation - N. Y.: Springer. - 2017. - Ch. 7. - С. 161-187.

94. Zhang J., Lin Ya., Lyu Yo. [и др.] A PUF-FSM Binding Scheme for FPGA IP Protection and Pay-Per-Device Licensing // IEEE Transactions on Information Forensics and Security. - 2015. - Vol. 10, № 6. - С. 1137-1150.

95. Fyrbiak M., Wallat S., Dechelotte J. [и др.] On the Difficulty of FSM-based Hardware Obfuscation // IACR Transactions on Cryptographic Hardware and Embedded Systems (CHES). - Amsterdam, 2019. - Vol. 3 (DOI: 10.13154/tches.v2018.i3.293-330).

96. Заливако С.С., Иванюк А.А. Обзор методов активной идентификации цифровых устройств // Информатика. - 2016. - № 3. - С. 38 -48.

97. Боронников А.С., Кряхтунов Г.М., Деменкова Т.А. Программно -аппаратная система для исследования физически неклонируемых функций в базисе ПЛИС // ИТ -Стандарт. - 2024. - № 1(38). - С. 34 -54.

98. Rukhin A., Soto J., Nechvatal J., Smid M., Leigh S., Levenson M., Vangel M., Heckert N. and Banks D. A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications // Special Publication (NIST SP), National Institute of Standards and Technology. - Gaithersburg, MD, 2010. - 131 c.

99. Будько М.Б., Будько М.Ю., Гирик А.В., Грозов В.А. Методы генерации и тестирования случайных последовательностей // СПб.: Университет ИТМО. -2019. - 70 c.

100. Пикуза М.О., Михневич С.Ю. Тестирование аппаратного генератора случайных чисел при помощи набора статистических тестов NIST // Доклады БГУИР. - 2021. - Т. 19, № 4. - С. 37 -42.

101. Barbour A.D., Holst L., Janson S. Poisson Approximation // Oxford: Clarendon Press. - 1992. - 280 c.

102. Menezes A.J., Oorschot P.S., Vanstone S.A. Handbook of applied cryptography // Boca Raton: CRC Press. - 1997. - 794 с.

103. Рацеев С.М., Лавриненко А.Д., Степанова Е.А. Об алгоритме Берлекэмпа - Месси и его применении в алгоритмах декодирования // Вестник Самарского университета. Естественнонаучная серия. - 2021. - Т. 27, № 1. - С. 4461.

104. Turan M.Z., Barker E., Kelsey J., McKay K.A., Baish M.L., Boyle M. Recommendation for the Entropy Sources Used for Random Bit Generation // NIST Special Publication 800-90B. - 2018. - 84 с.

105. Иванюк А.А. Проектирование конфигурируемого сдвигового регистра с линейной обратной связью // Информатика. - 2013. - № 3 (39). - С. 82-92.

106. Иванов М.Ю. Современные информационные технологии криптографической защиты данных // Системы. Методы. Технологии. - 2015. - № 3 (27). - С. 73-78.

107. Боронников А.С., Деменкова Т.А. Методика проектирования уникальных идентификаторов интегральных микросхем на FPGA // Фундаментальные, поисковые, прикладные исследования и инновационные проекты: сборник трудов Национальной научно -практической конференции / под ред. С.У Увайсова - Москва: Ассоциация выпускников и сотрудников ВВИА им. проф. Жуковского, 2023. - С. 6-11.

108. Кряхтунов Г.М., Боронников А.С. Подходы к созданию проприетарного формата представления данных // International Journal of Open Information Technologies. - 2024. - Т. 12, № 5. - С. 141 -150.

ПРИЛОЖЕНИЕ А

Свидетельства о государственной регистрации программ для ЭВМ

ПРИЛОЖЕНИЕ Б

Акты внедрения

АО НТЦ «Модуль»

Кафедра вычислительной техники РТУ МИРЭА

УТВЕРЖДАЮ ектор РТУ МИРЭА д.х.н., профессор

Н.И. Прокопов

¿7/ Ю, 2025 г.

АКТ

о внедрении результатов диссертационного исследования Боронникова Антона Сергеевича «Метод, алгоригм и аппаратные средства для защиты интегральных микросхем от копирования с использованием физически неклонируемых функций», выполненного на соискание ученой степени кандидата технических наук по научной специальности 2.3.2. «Вычислительные системы и их элементы», в

образовательную деятельность Института информационных технологий федерального государственного бюджетного образовательного учреждения высшего образования «МИРЭА - Российский технологический университет»

Комиссия в составе: председатель - заведующий кафедрой вычислительной техники, к.т.н.. доцент Платонова О.В.; члены комиссии: ученый секретарь кафедры вычислительной техники, ассистент Гуличева A.A.; к.т.н., доцент Мусихин А.Г.; к.т.н., доцент Сорокин А.Б.: к.т.н., доцент Лозовский В.В.; к.т.н., профессор Коваленко С.М., настоящим актом подтверждает использование результатов диссертации Боронникова A.C. в образовательном процессе Института информационных технологий федерального государственного бюджетного образовательного учреждения высшего образования «МИРЭА - Российский технологический университет».

Полученные в рамках диссертации Боронникова A.C. результаты:

1. Предложена система шифрования идентификатора интегральной микросхемы (ИМС) на основе свойства метастабильности синхронного D-григгера физически неклонируемой функции типа арбитр (АФНФ). Полученный ключ таким образом не постоянный, тем самым устойчив к прогнозированию. В рамках системы предложен аппаратный функциональный блок, предназначенный для автоматической установки триггера АФПФ в метасгабильное состояние для работы данного блока в режиме генерации действительно случайных чисел.

2. Предложен метод декодирования зашифрованных данных с помощью системы шифрования идентификатора ИМС на основе свойства метастабильности арбитра АФНФ. В основе декодирования данных лежит изменение температуры кристалла ИМС.

3. Разработаны оригинальные схема и алгоритм активации ресурсов интегральной микросхемы, эффективные при условии отсутствия модификации её проектного описания.

Полученные результаты используются при проведении лекционных и практических шня шй по дисциплине «Проектирование и разработка систем на базе

ПРИЛОЖЕНИЕ В

Описание аппаратных модулей тестового стенда

Листинг В.1 - Модуль верхнего уровня

module ACTIVATION RESOURCES Top(

input

input

input

output

output

[1:0]

CLK,

SYS_NRST, UART_RXD, UART_TXD, LED

wire RST;

reg [1:0] RST_S;

wire UART CE;

wire

wire [9:0]

RX_DATA_EN; RX DATA T;

wire TX_RDY_T;

wire [7:0] TX_DATA_T; wire TX_RDY_R;

wire [31:0] STR_RANGE;

wire [31:0] END_RANGE;

wire [31:0] FIX_CH; wire FIX_FLG;

wire [31:0] VRESP; wire VRESP_WR; wire VRESP_RD;

wire [7:0] SYSB; wire SYS_WR; wire SYS_RD; wire REQ_START; wire ACK_START; wire REQ_STOP; wire ACK_STOP;

wire [31:0] CH;

wire [31:0] VRESP_IN; wire VRESP_CE;

wire [31:0] VRESP_OUT; wire ACTIVATION; wire DESTROY; wire CNTRL_RDY_T;

wire [65:0] CNTRL_DATA_T; wire CNTRL RDY R;

reg test;

always @ (posedge CLK, posedge RST) if(RST)

test <= 1'b0; else if(REQ_START && ACK_START) test <= 1'b1;

// Reset Synchronizer: always @ (posedge CLK, negedge SYS_NRST) if(!SYS_NRST)

RST S <= 2'b11;

else

RST_S <= {RST_S[0],

assign RST = RST_S[1]; //----------------------

1'b0};

// UART Divider: KRG_UART_DIV_V10 #( .FREQ(100000000), .BAUDRATE(115200), .RATIO(16) ) UART_DIV( // System: .CLK(CLK), .RST(RST),

// Clock Enable Output:

.CEO(UART_CE) );

//-----------------------

// UART: KRG_UART_V10 UART( // System: .CLK(CLK), .RST(RST),

// Uart Clock Enable: .UART_CE(UART_CE), // UART: .RXD(UART_RXD), .TXD(UART_TXD), // Configuration: .C0NF(4'h0), // STP:

.RX_DATA_EN(RX_DATA_EN), .RX_DATA_T(RX_DATA_T), // DRP:

.TX_RDY_T(TX_RDY_T), .TX_DATA_R(TX_DATA_T), .TX_RDY_R(TX_RDY_R), // RX Break:

.RX_BREAK() );

//-----------------------

// PUF Analyzer:

PUF_ANALYZER_V10 PUF_ANALYZER( .CLK(CLK), .RST(RST),

.RX_DATA_R(RX_DATA_T[7:0]), .RX_DATA_EN(RX_DATA_EN), .STR_RANGE(STR_RANGE), // Start Range .END_RANGE(END_RANGE), // End Range .FIX_CH(FIX_CH), // Fixed Challenge

.FIX_FLG(FIX_FLG), // Fixed Challeng Flag

.VRESP(VRESP), // Vector Response

.VRESP_WR(VRESP_WR), // Vector Response Write .VRESP_RD(VRESP_RD), // Vector Response Write .SYSB(SYSB), // System Byte

.SYS_WR(SYS_WR), // System Write .SYS_RD(SYS_RD), // System Read .REQ_START(REQ_START), // Request Start .ACK_START(ACK_START), // Acknowledge Start .REQ_STOP(REQ_STOP), // Request Stop .ACK_STOP(ACK_STOP) // Acknowledge Start

);

//--------------------------------------

// PUF Controller:

PUF_CNTRL_V10 PUF_CNTRL( .CLK(CLK), .RST(RST),

.STR_RANGE(STR_RANGE),

.END_RANGE(END_RANGE),

.FIX_CH(FIX_CH),

.FIX_FLG(FIX_FLG),

.VRESP(VRESP),

.VRESP_WR(VRESP_WR),

.VRESP_RD(VRESP_RD),

.SYSB(SYSB),

.SYS_WR(SYS_WR),

.SYS_RD(SYS_RD),

.REQ_START(REQ_START),

.ACK_START(ACK_START),

.REQ_STOP(REQ_STOP),

.ACK_STOP(ACK_STOP),

.PULSE(),

.CH(CH),

.VRESP_IN(VRESP_IN),

.VRESP_CE(VRESP_CE),

.VRESP_OUT(VRESP_OUT),

.ACTIVATION(ACTIVATION),

.DESTROY(DESTROY),

.CNTRL_RDY_T(CNTRL_RDY_T),

.CNTRL_DATA_T(CNTRL_DATA_T),

.CNTRL_RDY_R(CNTRL_RDY_R)

);

//--------------------------------------

// PUF Transmitter Message:

PUF_TRANS_MSG_V10 PUF_TRANS_MSG( .CLK(CLK), .RST(RST),

.CNTRL_RDY_T(CNTRL_RDY_T),

.CNTRL_DATA_R(CNTRL_DATA_T),

.CNTRL_RDY_R(CNTRL_RDY_R),

.RES_RDY_T(TX_RDY_T),

.RES_DATA_T(TX_DATA_T),

.RES_RDY_R(TX_RDY_R)

);

//--------------------------------------

// Activation Resourses:

ACTIVATION_RESOURCES_V10 ACTIVATION_RESOURCES( .CLK(CLK), .RST(RST), .REF_CH(CH), .REF_CID(VRESP_OUT), .CE(VRESP_CE), .CD_CID(VRESP_IN), .ACTIVATION(ACTIVATION), .DESTROY(DESTROY)

);

//--------------------------------------

// Assign LED:

assign LED[1:0] = {DESTROY, ACTIVATION};

//--------------------------------------

endmodule

Листинг В. 2 - Модуль анализатора команд

module PUF_ANALYZER_V10 #(

parameter CH_WIDTH = 32, parameter VRESP_WIDTH = 32

) (

// System:

input CLK,

input RST,

// Input Data Port:

input [7:0] RX_DATA_R,

input RX_DATA_EN,

// Other Signal's:

output reg [CH WIDTH - 1 :0] STR RANGE, // Start Range

output reg [CH WIDTH - 1 :0] END RANGE, // End Range

output reg [CH WIDTH - 1 :0] FIX_CH, // Fixed Challenge

output reg FIX_FLG, // Fixed Challeng Flag

output reg [VRESP WIDTH - 1:0] VRESP, // Vector Response

output reg VRESP WR, // Vector Response Write

output reg VRESP RD, // Vector Response Write

output reg [7:0] SYSB, // System Byte

output reg SYS WR, // System Write

output reg SYS_RD, // System Read

output reg REQ START, // Request Start

input ACK START, // Acknowledge Start

output reg REQ STOP, // Request Stop

input ACK STOP // Acknowledge Start

// Function's:

function integer clog2; // Base 2 logarithm

input integer value; integer temp;

begin

temp = value - 1;

for (clog2 = 0; temp > 0; clog2 = clog2 + 1) begin temp = temp >> 1;

end

end endfunction

// ------------------------

localparam CH_CT_VALUE localparam CH_CT_WIDTH localparam VRESP_CT_VALUE

localparam VRESP_CT_WIDTH // ------------------------

CH_WIDTH / 4 - 1; clog2(CH_WIDTH/4); VRESP_WIDTH / 4 - 1; clog2(VRESP_WIDTH/4);

// Internal Signal's and Register's: reg [4:0]

reg [CH_CT_WIDTH - 1 :0] reg [VRESP_WIDTH - 1: 0] wire

wire [3:0] // ----------------------

FSM_STATE; CH_CT; VRESP_CT; HEX_FLG; DC HEX;

// ASCII TO HEX: KRG_DC_ASCII_HEX DC_ASCII_TO_HEX( .ASCII(RX_DATA_R), .HEX(DC_HEX),

.HEX_FLG(HEX_FLG) );

// State's:

localparam IDLE = 0;

localparam S1 = 1;

localparam T1 = 2;

localparam O = 3;

localparam P = 4;

localparam SPACE5 = 5;

localparam A = 6;

localparam R3 = 7;

localparam T2 = 8;

localparam SPACE0 = 9;

localparam STRR = 10

localparam SPACE1 = 11

localparam ENDR = 12

localparam SPACE2 = 13

localparam FIX CH STATE = 14

localparam SPACE3 = 15

localparam VRESP STATE = 16

localparam SPACE4 = 17

localparam R1 = 18

localparam D = 19

localparam S2 = 20

localparam W = 21

localparam R2 = 22

localparam S3 = 23

localparam SPACE6 = 24

localparam SYSB STATE0 = 25

localparam SYSB STATE1 = 26

localparam INIT START = 27

localparam WAIT START = 28

localparam INIT_STOP = 29

localparam WAIT STOP = 30

// Analyzer FSM: always @(posedge CLK, posedge RST) if(RST) begin

FSM STATE <= IDLE;

CH CT <= CH CT VALUE;

VRESP CT <= VRESP CT VALUE;

STR RANGE <= {CH WIDTH{1'b0}};

END RANGE <= {CH WIDTH{1'b0}};

FIX CH <= {CH WIDTH{1'b0}};

FIX FLG <= 1' b0;

VRESP <= {VRESP WIDTH{1'b0}};

VRESP WR <= 1' b0;

VRESP RD <= 1' b0;

SYSB <= 8' h00;

SYS WR <= 1' b0;

SYS_RD <= 1' b0;

REQ START <= 1' b0;

REQ STOP <= 1' b0;

end else case(FSM_STATE) IDLE: begin

FIX_FLG VRESP_WR VRESP_RD SYS_WR SYS RD

<= <= <= <= <=

1'b0; 1'b0; 1'b0; 1'b0; 1'b0;

if(RX_DATA_EN) begin

if(RX DATA R == 8'h53 II RX _DATA_ R == 8'h73) FSM STATE <= S1;

else if(RX DATA_ R == 8 ! 'h52 II RX_ DATA_ R == 8 ' h72) FSM "state <= R1;

else if(RX DATA_ R == 8 Î 'h57 II RX_ DATA_ _R == 8 ' h77) FSM STATE <= W;

end end // --S1: if( els end T1: if( els els end O: i if( els end P: i if( els els end

// --------------------------

SPACE5: if(RX_DATA_EN) begin if(RX_DATA_R == 8'h0D) else if(RX_DATA_R == 8'h20) else end

// --------------------------

if(RX_DATA_EN) begin

RX_DATA_R == 8'h54 || RX_DATA_R == 8'h74) FSM_STATE <= T1;

e FSM_STATE <= IDLE;

if(RX_DATA_EN) begin

RX_DATA_R == 8'h41 || RX_DATA_R == 8'h61) FSM_STATE <= A; e if(RX_DATA_R == 8'h4F || RX_DATA_R == 8'h6F) FSM_STATE <= O;

e FSM_STATE <= IDLE;

f(RX_DATA_EN) begin

RX_DATA_R == 8'h5 0 || RX_DATA_R == 8'h7 0) FSM_STATE <= P;

e FSM STATE <= IDLE;

f(RX_DATA_EN) begin RX_DATA_R == 8'h0D) e if(RX_DATA_R == 8'h2 0) e

FSM_STATE <= INIT_STOP; FSM_STATE <= SPACE5; FSM STATE <= IDLE;

FSM_STATE <= INIT_STOP; FSM_STATE <= SPACE5; FSM STATE <= IDLE;

f(RX_DATA_EN) begin

RX_DATA_R == 8'h52 || RX_DATA_R == 8'h72) e

if(RX_DATA_EN) begin

RX_DATA_R == 8'h54 || RX_DATA_R == 8'h7 4) e

if(RX_DATA_EN) begin (RX_DATA_R == 8'h20) se

A: i if( els end R3: if( els end T2: if el end

// -------------------------------------------------

SPACE0: if(RX_DATA_EN) begin if(HEX_FLG) begin FSM_STATE <= STRR;

STR_RANGE <= {STR_RANGE[CH_WIDTH - 5 :0], DC_HEX}; end

else if(RX_DATA_R == 8'h20) else end

STRR: if(RX_DATA_EN) begin if(~|CH_CT) begin CH_CT <= CH_CT_VALUE;

if(RX_DATA_R == 8'h20) FSM_STATE <= SPACE1; else FSM_STATE <= IDLE;

end

else if(HEX_FLG) begin STR_RANGE <= {STR_RANGE[CH_WIDTH - 5 :0], DC_HEX}; CH_CT <= CH_CT - 1'b1;

end

else begin FSM_STATE <= IDLE; CH_CT <= CH_CT_VALUE;

end end

// -------------------------------------------------

FSM_STATE <= R3; FSM STATE <= IDLE;

FSM_STATE <= T2; FSM STATE <= IDLE;

FSM_STATE <= SPACE0; FSM STATE <= IDLE;

FSM_STATE <= SPACE0; FSM STATE <= IDLE;

SPACE1: if(RX_DATA_EN) begin if(HEX_FLG) begin FSM_STATE <= ENDR;

END_RANGE <= {END_RANGE[CH_WIDTH - 5 end

if(RX DATA R == 8'h2 0)

:0], DC HEX};

else else end

ENDR: if(RX_DATA_EN) begin if(~|CH_CT) begin CH_CT <= CH_CT_VALUE; FIX_FLG <= 1'b0; if(RX_DATA_R == 8'h0D) begin FSM_STATE <= INIT_START; VRESP_RD <= (~|STR_RANGE) _

end

else if(RX_DATA_R == 8'h2 0) FSM_STATE <= SPACE2; else FSM_STATE <= IDLE;

end

else if(HEX_FLG) begin

FSM_STATE <= SPACE1; FSM STATE <= IDLE;

& (~|END RANGE)

<= {END_RANGE[CH_WIDTH - 5 <= CH_CT - 1'b1;

<= IDLE;

<= CH CT VALUE;

END_RANGE CH_CT end

else begin FSM_STATE CH_CT end end

// ------------------------------

SPACE2: if(RX_DATA_EN) begin if(RX_DATA_R == 8'h0D) begin FSM_STATE <= INIT_START; VRESP_RD <= (~|STR_RANGE) & end

else if(RX_DATA_R == 8'h2 0) FSM_ else if(HEX_FLG) begin if((~|STR RANGE) & (~|END RANGE))

:0], DC HEX};

|END_RANGE); STATE <= SPACE2;

begin

VRESP_STATE; {VRESP[VRESP WIDTH-5:0]

DC HEX};

DC HEX};

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.