Аппаратная информационная безопасность в задачах синтеза схем

Аппаратная информационная безопасность рассматривает угрозы, возникающие не только в программном коде, но и в самой логической/физической реализации устройства. В материалах кафедры выделяются два направления: проектирование схем, затрудняющих раскрытие их функциональности и несанкционированное копирование, и методы обнаружения нежелательных аппаратных «закладок» в спроектированных схемах.1

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

Что важно запомнить
  • Аппаратная реализация сама является объектом защиты: риски могут возникать на уровне логической сети, физического проектирования и изготовления.
  • Одно направление защиты — затруднить восстановление функции и несанкционированное копирование схемы.1, 2
  • Другое направление — обнаруживать нежелательные аппаратные модификации («закладки», hardware trojans).1, 3
  • Защитное преобразование должно сохранять требуемое штатное функционирование устройства.

Почему безопасность относится к синтезу

После перехода от алгоритма к логической сети и далее к топологии появляется отдельный объект атаки — аппаратная реализация. Злоумышленнику может быть интересна структура netlist, возможность копирования проекта или скрытое изменение схемы на одном из этапов проектирования и производства.

Сокрытие функциональности

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

Аппаратные закладки

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

Безопасность как критерий проектирования

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

Пример простыми словами

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

Частые ошибки
  • Сводить аппаратную безопасность к шифрованию данных. Здесь объект защиты — также структура и функционирование самой схемы.
  • Считать любую дополнительную логику защитой. Она должна иметь определённую модель угроз и не нарушать штатную функцию.
  • Отождествлять обнаружение аппаратной закладки с обычным поиском случайной неисправности: модель противника и скрытое поведение могут быть другими.

Другие вопросы

Источники

  1. 1 Кафедра математической кибернетики ВМК МГУ. Mathematical Models and Methods in VLSI Design Презентация направления. Раздел «Аппаратная безопасность (hardware security)»: защита функциональности и обнаружение аппаратных закладок
  2. 2 Han Z., Yasin M., Rajendran J. Does Logic Locking Work with EDA Tools? 30th USENIX Security Symposium (USENIX Security 21), 2021, pp. 1055–1072
  3. 3 Tehranipoor M., Koushanfar F. A Survey of Hardware Trojan Taxonomy and Detection IEEE Design & Test of Computers, 2010, Vol. 27, No. 1, pp. 10–25