Методы защиты ПЛИС
Использование в микропроцессорной технике программируемые логические интегральные схемы. Встроенные методы защиты шифрованием битового потока. Хранение ключей. Метод защиты посредством встраивания дешифратора. Использование микросхем специальной памяти.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 21.12.2018 |
Размер файла | 519,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Реферат
на тему «Методы защиты ПЛИС»
Перечень сокращений
ПЛИС - Программируемые логические интегральные схемы
CPLD - Complex Programmable Logic Device (комплексные программируемые логические устройства)
FPGA - Field Programmable Gate Array (программируемые вентильные матрицы)
САПР - Система автоматизированного проектирования
VHDL - VHSIC (Very high speed integrated circuits) Hardware Description Language (язык описания аппаратуры)
JTAG - Joint Test Action Group (рабочая группа по разработке стандарта IEEE 1149)
AES - Advanced Encryption Standard (усовершенствованный стандарт шифрования) - симметричный алгоритм блочного шифрования DES - Data Encryption Standard (стандарт шифрования данных) симметричный алгоритм шифрования
Введение
ПЛИС широко используются в микропроцессорной технике.
На ее основе можно разрабатывать цифровые фильтры, дешифраторы, логику обрамления микропроцессоров, формирователи управляющих сигналов. Преимущества и области применения ПЛИС:
1. Реализация цифровых (конечных) автоматов (statemachine). ПЛИС естественным образом вписывается в произвольный синхронный автомат. Триггерная матрица и дискретная комбинационная логика уступает в цене, стоимости проектирования и отладки и в размере конечного продукта;
2. Гибкость. Так как ПЛИС - программируемая схема, она имеет важное преимущество: на этапе проектирования итоговой схемы есть возможность перепрограммировать свой продукт без потери времени и средств, в случае, если допущена ошибка или необходимо что-то модифицировать. Это полезно, когда разработчик еще не до конца продумал, как будет работать его схема в итоге, что даст возможность применить различные идеи.
В связи с широким использованием ПЛИС на мировом рынке электроники важное место занимает защита интеллектуальной собственности.
Продукты интеллектуальной деятельности имеют стоимостные оценки, так как они могут быть включены в товарооборот на коммерческих условиях. Угрозу представляет кража интеллектуальной собственности, последствиями которой являются экономические потери. Предотвратить ее можно защитив цифровые электронные устройства.
программированный шифрование микросхема интегральный
1. Потенциальные уязвимости ПО ПЛИС
Так как ПЛИС с архитектурой FPGA не имеет возможности сохранять свою программу при отключении питания, возникает потребность во внешнем модуле энергонезависимой памяти (EEPROM англ. Electrically Erasable Programmable Read-Only Memory). Программное обеспечение (битовый поток) может быть прочитан злоумышленником как напрямую с ПЗУ, так и во время конфигурирования чипа ПЛИС. При отсутствии криптозащиты программного обеспечения злоумышленник получит готовую программу, которой он сможет воспользоваться как для декомпиляции, то есть получения исходного кода, так и для ее нелегального копирования в другие устройства ПЛИС, а также для несанкционированной модификации. Существуют различные методы защиты ПО: шифрование битового потока, использование микросхем специальной памяти, проверка серийного номера ПЛИС.
1.1 Модель нарушителя
Основным заинтересованным лицом в нелегальном доступе к интеллектуальной собственности является конкурент или лицо, работающее на заказ, существую также компании, которые специализируются на вскрытии «средств интеллектуальной собственности», решая задачи обратного проектирования. Так как главной целью является клонирование устройства независимо от понимания принципов его работы, для извлечения программы взломщику достаточно обладать базовыми знаниями электроники, также навыками работами с ПЛИС и микроконтроллерами.
1.2 Встроенные методы защиты шифрованием битового потока
Среда разработки, выпускаемая фирмой Xilinx, предоставляет возможность защиты программы «из коробки» для некоторых серий семейств чипов. Шифрование битового потока, впервые представленное Xilinx на чипе Virtex 2, служит как для того, чтобы предотвратить клонирование устройства, так и для того, чтобы защитить конфиденциальность интеллектуальной собственности.
Устройства Virtex4,5,6 и Spartan 6 имеют на чипе блок дешифрования AES для поддержки зашифрованных битовых потоков. Система шифрования битового потока Xilinx состоит из двух частей: шифрование битового потока на компьютере средой разработки и расшифрование битового потока на чипе с выделенной памятью для хранения 256-битного ключа шифрования. Используя XilinxISE -программное обеспечение пользователь генерирует сразу иключ шифрования, и зашифрованный битовый поток.
Первый алгоритм шифрования применялся для серий Virtex 2-алгоритм симметричного шифрования 3- DES (Data Encryption Standard), он устарел, для более новых серий, таких как Spartan-7, Virtex-7 сейчас используют усовершенствованный алгоритм под названием «Рейндол». Этот алгоритм был официально объявлен новым стандартом шифрования AES в 2001 году, он является более безопасным, быстродействующим и гибким. Алгоритм основан на нескольких заменах, подстановках и линейных преобразованиях, каждое из которых выполняется блоками по 16 байт, поэтому он называется блоковым шифром.
Операции повторяются несколько раз, каждый из которых называется «раунд». На основе ключа шифрования выполняется вычисление уникального ключа для каждого раунда и встраивается в вычисления. Благодаря подобной блоковой структуре AES, достаточно изменения одного бита или в ключе, или в текстовом блоке, чтобы полностью изменился весь шифр. Разница между AES-1, AES-192 и AE25S6 алгоритмами заключается только в длине ключа.
Ключ, длиной 128, 192 или 256 бит, более криптостойкий к атакам в сравнении с 56-битовым ключом DES. На сегодняшний день все попытки взломать шифр AES увенчались крахом. Благодаря описанным преимуществам, AES остается предпочтительным алгоритмом для правительственных организаций, банков и других систем, требующих высокий уровень безопасности, по всему миру.
Устройства Virtex 4,5,6 и Spartan 6 хранят ключ шифрования внутри, в выделенной ОЗУ, питаемой маленькой, подключенной внешне батарейкой или в единожды программируемых ячейках (OTP fuses-XilinxeFUSE). Ключ шифрования может быть прошит в устройства только через порт JTAG. В процессе конфигурирования устройство совершает обратную операцию, расшифровывая входящий битовый поток, используя встроенный в FPGA аппаратный блок расшифрования AES. Этот блок не может быть использован для других целей, кроме как расшифрование битового потока, поэтому его логика не доступна для пользовательского проекта и не может быть использована для расшифрования любых данных кроме конфигурационного битового потока.
Так как добавлен новый слой безопасности, зашифрованный битовый поток не может быть загружен в FPGA ПЛИС, в который прежде был загружен не зашифрованный битовый поток без начальной инициализации полного цикла прошивки, который, прежде всего, очищает содержимое конфигурационной памяти. Аналогично, загрузка незашифрованного битового потока в FPGA ПЛИС, прежде сконфигурированной зашифрованным битовым потоком, требует полной реконфигу 28 требование (очищать конфигурационную память перед прошивкой) мешает атакам реверс-инжиниринг.
1.3 Хранение ключей
Наиболее важным для поддерживающих шифрование битового потока чипов является безопасный способ хранение ключа. Virtex4,5,6 и Spartan 6 поддерживают хранение 256-битного ключа в ОЗУ, питаемое от батарейки. Устройства Virtex 6 и Spartan6 обеспечивают дополнительную опцию энергонезависимого хранения ключа в OTP-ячейках.
1.4 ОЗУ с питанием от батарейки
256-битный ключ хранится в энергозависимых ячейках памяти, находящихся на микросхеме. Это специальная память должна получать непрерывное питание от отдельного источника энергии для поддержания ее содержимого. В течение работы ПЛИС, эти ячейки памяти питаются от входного напряжения, чтобы продлить долговечность батарейки. Приложение может воспользоваться преимуществом этой необходимости во внешнем питании, лишив питания и ПЛИС, и хранилище ключа при попытке вмешательства или неавторизованного доступа.
Кроме того, в устройствах Xilinx есть дополнительная функция безопасности: любая попытка чтения или записи батарейно-питаемой памяти вызывает очистку ее содержимого и конфигурации FPGA до получения доступа.
1.5 eFUSE-регистры
Virtex 6 и Spartan 6 имеют следующие eFUSE-регистры:
FUSE_KEY для хранения 256-битного ключа AES;
FUSE_USER для хранения 32-битного пользовательского кода (только Virtex 6);
FUSE_ID для хранения 57-битного Devise DNA ID (все устройства Virtex 6 и Spartan 6);
FUSE_CNTL для хранения 32-х контрольных битов;
Эти ячейки позволяют пользователю безопасно хранить ключ для дешифрования битового потока без необходимости использования батарейно-питаемой памяти и самой батарейки.
OTP eFUSE-ячейки прошиваются перманентно через внешний источник напряжения и могут быть использованы в приложениях, где использование батарейно-питаемой ОЗУ не желательно. Кроме того, все eFUSE-ячейки продублированы для увеличения надежности хранения ключей.
1.6 Атака на встроенные методы защиты
Каждая защита может быть подвержена атакам. Шифрование данных с помощью алгоритма AES было признано самым надежным среди предложенных, и AES был принят в качестве стандарта шифрования данных. Он устойчив к теоретическому криптоанализу, однако атака по сторонним каналам использует информацию о физических процессах, происходящих в устройстве, которые не рассматриваются в теоретическом описание криптографического алгоритма. В криптографии существует целый класс атак, которые называют атаками по второстепенным каналам, использующих физические параметры вычислительного устройства для определения ключей шифров.
Криптографический алгоритм записывается в виде математических операторов, поэтому при исследовании алгоритма изучается математическая стойкость или криптостойкость. Если посмотреть на выполнение алгоритма с точки зрения физики - данные отражают физическое состояние логических элементов, в то время как вычисления -- это физические процессы, которые переводят состояние логических элементов из одного в другое. Следовательно, выполнение программы есть преобразование физических сигналов, и с такой точки зрения результат работы алгоритма определяется законами физики. Таким образом, реализация криптографического алгоритма может рассматриваться в математической, программной и физической средах. Любой алгоритм выполняется с помощью аппаратных средств, под которыми понимаются любые вычислительные механизмы, способные выполнять логические операции И, ИЛИ и операцию логического отрицания. Все вычислительные средства имеют два общих свойства: для выполнения вычисления необходимо затратить энергию (электрическую энергию), для корректного выполнения операций все вычислительные механизмы требуют нормальных внешних условий (необходимость в постоянном напряжении и токе). На этих двух свойствах основаны аппаратные атаки (hardwareattacks).
Исполнение алгоритма изменяет свойства вычислительного устройства. Алгоритм AES симметричный, он имеет различное число базовых операций: 11 сложений с ключом, по 10 операций таблицы замены (S-box), и лишь 9 операций над колонками MixColumn
Атака по сторонним каналам (SideChannelAttacks) основана на измерении входного напряжения с помощью дополнительных устройств. Измеренное напряжение позволяет определить:
Начало и окончание работы шифра для вычисления времени работы всего шифра;
Начало и окончание работы каждого раунда, позволяющие вычислить время работы раунда.
Операции каждого раунда: сложение с ключом, таблица замены Sbox, перемешивание колонок, побайтовый сдвиг строк.
Каждая отдельная группа инструкций потребляет индивидуальное количество энергии. Зная то, какое количество энергии потребляется при выполнении инструкции, которая зависит от значения ключа и известных нам параметров, то можно определить правильное значение ключа.
2. Метод защиты посредством встраивания дешифратора
Рассмотренная ниже концепция разработана на основе встроенного метода защиты шифрования битового потока. Она является некоторым аналогом аппаратного блока шифрования AES, но реализуется программным способом.
Основная идея заключается в следующем: среда разработки компилирует основную программу. Этот файл шифруется сторонними средствами (например, с помощью криптобиблиотеки). На вход модуля шифрования поступает основная программа, а на выходе формируется массив зашифрованных байтов. Эти байты помещаются в модуль дешифратора. В среде разработки создается и компилируется модуль дешифратора; затем модуль дешифратора и зашифрованная программа внутри него прошивается на ПЗУ, а на ПЛИС помещается ключ шифрования, в энергозависимую память, подпитываемую внешне батарейкой. Во время старта ПЛИС загружается модуль дешифратора и запускается, далее расшифровывает программу с помощью встроенного в ПЛИС секретного ключа, затем реконфигурирует вентильную матрицу. После этого программа запускается в рабочем режиме.
В случае атаки на данную криптосистему все, что получит злоумышленник - это зашифрованный поток байтов, который не имеет для него практической ценности, если он не владеет секретным ключом (ключом шифрования). Таким образом, у него отсутствует возможность декомпиляции, модификации или нелегального копирования.
В связи с тем, что только новейшие серии ПЛИС допускают возможность динамической реконфигурации, данный способ защиты будет доступен только на них. А они, как правило, уже имеют в своем составе встроенные методы шифрования битовых потоков.
2.1 Атака на метод защиты, использующий встраиваемый дешифратор
Метод защиты, описанный выше в пункте 2.4, также не защищен от атак по сторонним каналам, использующий измерение входного напряжения и параметры алгоритма для нахождения секретного ключа. Данная атака описана в разделе
2.2 Использование микросхем специальной памяти
Устройства, основанные на ПЛИС с архитектурой FPGA, выпускаются по технологии статического ОЗУ, конфигурация которых хранится в специализированной внешней памяти (постоянное запоминающее устройство). При включении питания конфигурационный файл в виде битового потока данных поступает в оперативное запоминающее устройство (вентильная матрица). При несанкционированных действиях злоумышленником этот конфигурационный поток данных может быть перехвачен и использован для копирования проекта на других устройствах - это означает, что проекты, реализованные на FPGA, уязвимы для копирования. Более современные серии ПЛИС Xilinx используют 33 кодированный конфигурационный поток, они, как правило, дороже и содержат дополнительный встроенный дешифратор на самом чипе и секретный ключ, прошитый в специальный энергозависимый регистр, подпитываемый дополнительной батарейкой. Этот метод защиты позволяет предотвратить нелегальное клонирование, как описано выше. Так как он поддерживается только новейшими сериями, встает вопрос о том, как же защитить более старые версии ПЛИС с архитектурой FPGA. Для таких семейств эффективным решением проблемы стало использование микросхем специальной памяти.
Использование микросхем специальной памяти, по-другому «определение - друг или враг» (Identification Friendor Foe, IFF) для обеспечения защиты ПЛИС FPGA от копирования. Главная идея такого метода защиты заключается в том, что пока не совпадет хеш-последовательность, вычисленная специальным блоком внутри FPGA и хеш последовательность, вычисленная во внешней микросхеме специальной памяти проект в ПЛИС FPGA не запустится и, соответственно, не начнет функционировать. Даже при перехвате конфигурационного файла найти блок расчета хеш-последовательности почти нереально, а в микросхеме специальной памяти нет доступа к расчету блока хеш-последовательности, поэтому проект защищен при таком способе атаки. Отсюда следует, что микросхема специальной памяти используется как вспомогательная защита для ПЛИС FPGA.
2.3 Реализация метода
Рисунок 1
Концепция Identification Friendor Foe требует вспомогательной микросхемы памяти, реализующей хеш-алгоритм. На рис.1 представлена реализация данной концепции на основе специальной микросхемы DS28E01.
Рис.1 Реализация концепции IFF
Данная микросхема, выпускаемая фирмой Maxim Integrate Product, подходит для реализации дополнительной защиты ПЛИС. Она содержит память EEPROM емкостью 1024 бита, имеет встроенный модуль для аппаратного вычисления хеш-последовательности с использованием алгоритма SHA-1 (Secure Hash Algorithm). Хеш-последовательность является 160-битным MAC (Message Authentication Code), вычисляемая, с помощью алгоритма SHA-1 в микросхеме DS28E01 для сгенерированного массива случайных чисел (формируется в специальном модуле в FPGA). Массив сгенерированных чисел передается в микросхему, записывается и хранится в памяти EEPROM. Данная защита основана на симметричном шифровании, 35 секретный ключ длиной 64 бита располагается в секретной области EEPROM, и к нему нет доступа, а на ПЛИС он находится в конфигурационном файле, что делает его практически невидимым для хакера.
Как видно на рисунке (см. рис.1), подключение FPGA к микросхеме DS28E01 реализовано благодаря однопроводному интерфейсу 1- Wire представляющего собой двунаправленную линию ввода/вывода. Для обеспечения уровня логической единицы линия подтягивается внешним резистором к напряжению питания соответствующего банка ввода/вывода.
Концепция IFF реализована компанией Altera для защиты проектов в FPGA семейства Cyclone 3 от нелегального клонирования.
На рис.2.2 показан алгоритм блока аутентификации концепции IFF.
Использование такого метода защиты проекта рекомендуется при небольшом производстве, если требуется массовое производство, можно 37 заказать у компании-производителя микросхемы с запрограммированным на фабрике секретным ключом.
Рис. 2.2 Алгоритм блока проверки при реализации концепции IFF.
2.4 Атака на метод защиты, использующий микросхему специальной памяти
На устройствах ПЛИС, построенные по методу защиты с использованием микросхем специальной памяти, можно выделить два направления для атаки:
Атака непосредственно на микросхему специальной памяти
Чтение битового потока при загрузке конфигурационного файла из ПЗУ в ПЛИС
Атака на микросхему специальной памяти заключается в том, что злоумышленник попытается извлечь ключ, используемый при вычислении MAC, который хранится в энергонезависимой памяти микросхемы. Такая атака обречена на провал, потому что секретный ключ, находится в защищенной памяти, которая не поддерживает операции чтения из нее.
Так как попытки атаки на микросхему специальной памяти не дают положительных результатов, единственным оставшимся способом обойти защиту в такой системе - чтение битового потока при загрузке конфигурационного файла из ПЗУ в ПЛИС, его декомпиляция, выявление места, где находится блок аутентификации с последующим выяснением ключа или удалением целого блока аутентификации из программы.
Заключение
В данной работе рассмотрены различные методы защиты программного обеспечения от нелегального использования целевой программы на устройствах, основанных на архитектуре FPGA ПЛИС.
Использованная литература
1. Вычужанин В. Состояние рынка и расширение сферы применения ПЛИС [Электронный ресурс]
2. Хоровиц П., Хилл.У. Искусство схемотехники [Текст]: В 3-х томах: Т. 2. Пер. с англ.-4-е изд., перераб. и доп.-М.: Мир, 1993. - 153 с.
3. Элементная база электроники [Электронный ресурс]
4. Programmable Devices [Электронный ресурс] // All Programmable FPGAs Xilinx Inc.: [сайт]. [2015].
5. Программируемые логические интегральные схемы
6. Сергиенко А.М. VHDL для проектирования вычислительных устройств [Текст] - К.: Изд-во ООО «ТИД «ДС», 203. - 203с.
Размещено на Allbest.ru
...Подобные документы
Средства защиты информации. Профилактические меры, позволяющие уменьшить вероятность заражения вирусом. Предотвращение поступления вирусов. Специализированные программы для защиты. Несанкционированное использование информации. Методы поиска вирусов.
реферат [23,5 K], добавлен 27.02.2009Анализ методов, основанных на использовании преобразования во временной области и добавления эхо-сигналов для стеганографической защиты аудио файлов. Метод встраивания с расширением спектра. Эффективность стеганографической защиты. Техника безопасности.
дипломная работа [2,9 M], добавлен 14.11.2011Современные физические и законодательные методы защиты информации. Внедрение системы безопасности. Управление доступом. Основные направления использования криптографических методов. Использование шифрования, кодирования и иного преобразования информации.
реферат [17,4 K], добавлен 16.05.2015Виды умышленных угроз безопасности информации. Методы и средства защиты информации. Методы и средства обеспечения безопасности информации. Криптографические методы защиты информации. Комплексные средства защиты.
реферат [21,2 K], добавлен 17.01.2004Проблемы защиты информации в информационных и телекоммуникационных сетях. Изучение угроз информации и способов их воздействия на объекты защиты информации. Концепции информационной безопасности предприятия. Криптографические методы защиты информации.
дипломная работа [255,5 K], добавлен 08.03.2013Понятие и сущность стеганографии, использование свойств формата файла-контейнера. Классификация методов стеганографии. Компьютерные вирусы и стеганография, гарантированное уничтожение информации. Методы воздействия на средства защиты информации.
контрольная работа [80,2 K], добавлен 02.01.2018Использование и создание компьютерных средств обучения. Содержание и реализация электронной обучающей программы. Методы защиты программ от несанкционированного доступа. Разработка эскизного, технического и рабочего проектов программы, ее интерфейса.
курсовая работа [462,8 K], добавлен 05.04.2014Способы и средства защиты информации от несанкционированного доступа. Особенности защиты информации в компьютерных сетях. Криптографическая защита и электронная цифровая подпись. Методы защиты информации от компьютерных вирусов и от хакерских атак.
реферат [30,8 K], добавлен 23.10.2011Основные задачи антивирусов и средства антивирусной защиты персонального компьютера. Механизм работы вирусов и способы их распространения. Методы и технологии защиты от вредоносных программ. Общие требования безопасности при работе за компьютером.
реферат [241,2 K], добавлен 22.09.2016Понятие компьютерной преступности. Основные понятия защиты информации и информационной безопасности. Классификация возможных угроз информации. Предпосылки появления угроз. Способы и методы защиты информационных ресурсов. Типы антивирусных программ.
курсовая работа [269,7 K], добавлен 28.05.2013Организационно-правовое обеспечение, виды, средства и методы защиты информации, основные объекты и степень их значимости. Классификация технических средств защиты, их достоинства и недостатки. Методы, используемые в защите государственной тайны.
курсовая работа [952,6 K], добавлен 13.05.2009Сущность проблемы и задачи защиты информации в информационных и телекоммуникационных сетях. Угрозы информации, способы их воздействия на объекты. Концепция информационной безопасности предприятия. Криптографические методы и средства защиты информации.
курсовая работа [350,4 K], добавлен 10.06.2014Использование средств статического и динамического анализа программ. Принципы работы компилятора при генерации кода на примере MS Visual Studio 2003 (C++). Взлом защиты от несанкционированного доступа предоставленной программы разными способами.
контрольная работа [4,2 M], добавлен 29.06.2010Основные положения теории защиты информации. Сущность основных методов и средств защиты информации в сетях. Общая характеристика деятельности и корпоративной сети предприятия "Вестел", анализ его методик защиты информации в телекоммуникационных сетях.
дипломная работа [1,1 M], добавлен 30.08.2010Обоснование актуальности проблемы защиты информации. Концепция защиты информации в адвокатской фирме "Юстина". Каналы и методы несанкционированного доступа к защищаемой информации. Организация комплексной системы защиты информации в адвокатской конторе.
курсовая работа [92,4 K], добавлен 21.10.2008Анализ функционирования и разновидностей компьютерных вирусов - программ, способных самостоятельно создавать свои копии и внедряться в другие программы, в системные области дисковой памяти компьютера. Характеристика основных средств антивирусной защиты.
контрольная работа [39,6 K], добавлен 03.04.2010Цели, методы и средства защиты информационных ресурсов. Права и обязанности субъектов. Обеспечение организационных мер. Попытки несанкционированного доступа. Виды угроз безопасности. Принципы создания системы защиты. Сущность криптографических методов.
контрольная работа [25,3 K], добавлен 17.11.2009Понятие защиты умышленных угроз целостности информации в компьютерных сетях. Характеристика угроз безопасности информации: компрометация, нарушение обслуживания. Характеристика ООО НПО "Мехинструмент", основные способы и методы защиты информации.
дипломная работа [135,3 K], добавлен 16.06.2012Необходимость и потребность в защите информации. Виды угроз безопасности информационных технологий и информации. Каналы утечки и несанкционированного доступа к информации. Принципы проектирования системы защиты. Внутренние и внешние нарушители АИТУ.
контрольная работа [107,3 K], добавлен 09.04.2011Модель угроз и классификация несанкционированных воздействий. Недостатки существующих и требования к современным средствам защиты. Методика идентификации типа информационного потока. Макет программного комплекса защиты автоматизированных систем.
дипломная работа [1,9 M], добавлен 21.12.2012