|
|
  |
Защита данных FPGA, Кто подскажет где почитать? |
|
|
|
May 8 2005, 17:08
|
Частый гость
 
Группа: Свой
Сообщений: 102
Регистрация: 11-10-04
Пользователь №: 849

|
Цитата(makc @ May 7 2005, 23:04) Цитата(alexr22b @ May 7 2005, 22:42) Очень скоро Xilinx выпустит Spartan 3 с внутренним флашем. Будет на $.70 дороже обичного в серии. Да и lattice уже имеет fpga's с встроенным флашем А откуда такая информация? Можно ссылочку? Информация от xilinx rep. ссылочки нету потому как рано еше
|
|
|
|
|
May 10 2005, 21:57
|

Знающий
   
Группа: Свой
Сообщений: 541
Регистрация: 11-04-05
Из: Москва
Пользователь №: 4 045

|
А зачем держать под батарейкой ПЛИС? Если необходимо защитить не плату, а устройство (в корпусе), то достаточно питать лишь FLASH и стереть ее при попытке вскрытия/включения без корпуса.
Что касаемо гостайны - основным объектом секретности во всех системах являются ключи. На них базируется стойкость системы (поскольку алгоритм рано или поздно становится известен противнику) - закон Кирхгофа, если не ошибаюсь. А если прошивка, которую необходимо зашивать при производстве имеет гриф, то такой же гриф будет и у устройства - следовательно, возникнут проблемы с его производством, хранением, перевозкой и т.п.
Промелькнула еще здравая идея с частичным перепрограммированием ПЛИС, хотя непонятно, как это использовать (может ли ПЛИС программировать сама себя без участия внешних ног, например, через JTAG?).
Хотя, если подумать, даже если FLASH будет внутри корпуса, наверняка найдутся методы, как оттуда отковырять прошивку, все дело лишь в цене!
--------------------
Дурак, занимающий высокий пост, подобен человеку на вершине горы - все ему кажется маленьким, а всем остальным кажется маленьким он сам. /Законы Мерфи/
|
|
|
|
|
May 20 2005, 21:02
|
иногда заглядывающий
   
Группа: Свой
Сообщений: 900
Регистрация: 18-05-05
Из: Зеленоград
Пользователь №: 5 170

|
Защитить содержимое FPGA от потокового считывания, при ее начальной инициализации, практически нереально(не считая батарейки), соответственно остается, одно-необходимо сделать так, чтоб считывание собственно самой прошивки не принесло ничего хорошего, т.е нужно использовать внешний мк, с возможностью защиты от копирования. Методов защитить свзяку FPGA+мк достаточно, тут, как и в в сигнализациях для авто, важно чтоб взломщик поменьше знал о том, как может быть защищена данная связка. Побольше разнообразия  Цитата Промелькнула еще здравая идея с частичным перепрограммированием ПЛИС, хотя непонятно, как это использовать (может ли ПЛИС программировать сама себя без участия внешних ног, например, через JTAG?).
Хотя, если подумать, даже если FLASH будет внутри корпуса, наверняка найдутся методы, как оттуда отковырять прошивку, все дело лишь в цене! Как уже говорилось, не мы одни такие умные  , еслиб изготовители могли сделать кристаллы хорошей емкости с flash, они бы это сделали, это вопросы техпроцесса. Затраты на обход грамотной защиты превышают в десятки раз затраты на разработку устройства в целом, как правило. У мк MSP430 защита заключается в физическом отключении отладочного/программирующего интерфейса Jtag, соответственно если программист, не оставил в прошивке возможности считывать любой блок flash, то копирование становится практически невозможным(варианты восстановления топологии кристалла и прочий бред я не рассматриваю, рассматриваю лишь прогрммно-аппаратные решения, доступные рядовому разработчику).
|
|
|
|
|
May 23 2005, 13:18
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 17-05-05
Из: Красноярск
Пользователь №: 5 108

|
Тут уже мелькало подобное. У меня, например, сделано так: в прошивке есть возможность доконфигурировать ее из вне - не критичные к быстродействию, но несомненно, влияющие на работоспособность блоки. В общем, накладных расходов не так уж и много. Осталось только защитить обмен между ПЛИС и другим управляющим устройством. В соответствии с заданными требованиями к мерам по обеспечению секретности.
И еще, тут, по моему неучли человеческий фактор. Криптостойкость, скорее всего, будет расти. И очень скоро окажется что человека "сломать" окажется проще/дешевле.
P.S. Если вы хотите надежно защитить свой сервер, то отключите его от всего, спрячьте в сейф, поставте кучу охраны... и все равно сломают.
|
|
|
|
|
May 23 2005, 13:46
|

Гуру
     
Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904

|
Цитата(kas @ May 23 2005, 16:18) Тут уже мелькало подобное. У меня, например, сделано так: в прошивке есть возможность доконфигурировать ее из вне - не критичные к быстродействию, но несомненно, влияющие на работоспособность блоки. В общем, накладных расходов не так уж и много. Осталось только защитить обмен между ПЛИС и другим управляющим устройством. В соответствии с заданными требованиями к мерам по обеспечению секретности. Не могли бы Вы рассказать по-подробнее, каким образом реализуется возможность доконфигурации ПЛИС?
--------------------
BR, Makc В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
|
|
|
|
|
May 24 2005, 03:43
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 17-05-05
Из: Красноярск
Пользователь №: 5 108

|
Цитата(makc @ May 23 2005, 21:46) Цитата(kas @ May 23 2005, 16:18) Тут уже мелькало подобное. У меня, например, сделано так: в прошивке есть возможность доконфигурировать ее из вне - не критичные к быстродействию, но несомненно, влияющие на работоспособность блоки. В общем, накладных расходов не так уж и много. Осталось только защитить обмен между ПЛИС и другим управляющим устройством. В соответствии с заданными требованиями к мерам по обеспечению секретности. Не могли бы Вы рассказать по-подробнее, каким образом реализуется возможность доконфигурации ПЛИС? Все очень просто. Делаю схему с избыточными связями. Например, генератор ПСП. В генераторе предусмотрена возможность задавать любой полином, любое начальное состояние, любое состояние по достижению которого регистр примет начальное состояние и снимать ПСП с любого отвода регистра. После конфигурации кристала я прогружаю регистры которые отвечают за те или иные параметры. Тем самым получаю нужную мне ПСП. Которую, при необходимости, достаточно легко изменить.
|
|
|
|
|
May 24 2005, 03:47
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(kas @ May 23 2005, 22:43) Цитата(makc @ May 23 2005, 21:46) Цитата(kas @ May 23 2005, 16:18) Тут уже мелькало подобное. У меня, например, сделано так: в прошивке есть возможность доконфигурировать ее из вне - не критичные к быстродействию, но несомненно, влияющие на работоспособность блоки. В общем, накладных расходов не так уж и много. Осталось только защитить обмен между ПЛИС и другим управляющим устройством. В соответствии с заданными требованиями к мерам по обеспечению секретности. Не могли бы Вы рассказать по-подробнее, каким образом реализуется возможность доконфигурации ПЛИС? Все очень просто. Делаю схему с избыточными связями. Например, генератор ПСП. В генераторе предусмотрена возможность задавать любой полином, любое начальное состояние, любое состояние по достижению которого регистр примет начальное состояние и снимать ПСП с любого отвода регистра. После конфигурации кристала я прогружаю регистры которые отвечают за те или иные параметры. Тем самым получаю нужную мне ПСП. Которую, при необходимости, достаточно легко изменить. а можно поподробнее ?? какова длина полинома, кол-во данных для его смены и т.д.? И ИМХО это те же яйца, только сбоку "Осталось только защитить обмен между ПЛИС и другим управляющим устройством" - чем это отличаеться от "осталось защитить обмен между конф. микросхемой и ПЛИС" ?
--------------------
|
|
|
|
|
May 24 2005, 05:56
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 17-05-05
Из: Красноярск
Пользователь №: 5 108

|
Цитата(des00 @ May 24 2005, 11:47) "Осталось только защитить обмен между ПЛИС и другим управляющим устройством" - чем это отличаеться от "осталось защитить обмен между конф. микросхемой и ПЛИС" ? ИМХО. Не совсем. В данном случае можно организовать шифрование/дешифрование информации уже с участием самой ПЛИС как готового устройства, а не конфигурируемого. В случае обмена между ПЛИС и конф. микросхемой структура данных и контакты известны. А в моем случае надо знать структуру управляющих кадров/контактов. Сложность получения этих данных многократно выше сложности получения "прошивки" ПЛИС.
|
|
|
|
|
May 24 2005, 06:49
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата ИМХО. Не совсем. В данном случае можно организовать шифрование/дешифрование информации уже с участием самой ПЛИС как готового устройства, а не конфигурируемого. Хмм а вот здесь можно поподробнее ?? Какий именно алгоритм и с какой длинной ключа вы собираетесь пользовать ? А прикидывали ли вы во что это выльеться ? Цитата В случае обмена между ПЛИС и конф. микросхемой структура данных и контакты известны. А в моем случае надо знать структуру управляющих кадров/контактов. Сложность получения этих данных многократно выше сложности получения "прошивки" ПЛИС. Хмм может мы спорим о разных вещах, но если меня будет интеросовать копирование именно вашего устройства, то я солью прошивку вашей фпга и коды управления фпга., именно с этой прошивкой. И какая мне разница чем они закодированны и какой формат они имеют. Или вы имеете в виду накинуть на все это еще и алгоритм динамической смены ключа ?? то собираетесь ли вы менять весь ключ ? как вы синхронизируете смену ключа в ФПГА и МК и т.д. ?
--------------------
|
|
|
|
|
May 24 2005, 06:49
|

Гуру
     
Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904

|
Цитата(kas @ May 24 2005, 08:56) Цитата(des00 @ May 24 2005, 11:47) "Осталось только защитить обмен между ПЛИС и другим управляющим устройством" - чем это отличаеться от "осталось защитить обмен между конф. микросхемой и ПЛИС" ? ИМХО. Не совсем. В данном случае можно организовать шифрование/дешифрование информации уже с участием самой ПЛИС как готового устройства, а не конфигурируемого. В случае обмена между ПЛИС и конф. микросхемой структура данных и контакты известны. А в моем случае надо знать структуру управляющих кадров/контактов. Сложность получения этих данных многократно выше сложности получения "прошивки" ПЛИС. Если я правильно понял, то в описываемом Вами случае ПЛИС выполняет роль шифратора, параметры которого (ключ и пр.) прогружаются уже после того, как прошла конфигурация самой ПЛИС. Как Вы правильно заметили, при обмене между ПЛИС и конфигурационной памятью все известно - и структура, и контакты, т.е. можно совершенно спокойно снять дамп прошивки ПЛИС. При этом получается, что вся секретность строится лишь на структуре управляющих кадров и контактов. Но я не могу понять, почему Вы считаете, что "Сложность получения этих данных многократно выше сложности получения "прошивки" ПЛИС."? Ведь если есть возможность получить прошивку ПЛИС, которая получает эти кадры, из нее можно будет выяснить через какие контакты эти кадры приходят и как они обрабатываются. Т.е. останется только перехватить поток этих ключевых кадров... Да, я согласен, что это несколько затрудняет исследование ПЛИС. Но все-таки это не решает основной проблемы - защиты данных конфигурации ПЛИС. Это, скорее, описание решения задачи защиты других данных, не относящихся к ПЛИС и ее конфигурации.
--------------------
BR, Makc В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
|
|
|
|
|
May 24 2005, 10:24
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 17-05-05
Из: Красноярск
Пользователь №: 5 108

|
Цитата(des00 @ May 24 2005, 14:49) Хмм может мы спорим о разных вещах, но если меня будет интеросовать копирование именно вашего устройства, то я солью прошивку вашей фпга и коды управления фпга., именно с этой прошивкой. И какая мне разница чем они закодированны и какой формат они имеют. Или вы имеете в виду накинуть на все это еще и алгоритм динамической смены ключа ?? то собираетесь ли вы менять весь ключ ? как вы синхронизируете смену ключа в ФПГА и МК и т.д. ? Вы сможете слить прошивку ПЛИС, возможно, разберетесь куда что пишется, но полноценно управлять данной пршивкой Вы не сможете (что сводит на нет все потраченные усилия). Я забыл раньше отметить, что у моего устройства значительная часть обработки информации происходит в программной части. И обмен м/у ПЛИС и программной частью зависит от данных приходящих (сигнал+шум) на ПЛИС из вне. И поэтому коды управления ПЛИС полученные в какой-то определенный отрезок времени Вам скорее всего ничего не дадут.
|
|
|
|
|
May 24 2005, 10:49
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(kas @ May 24 2005, 05:24) Цитата(des00 @ May 24 2005, 14:49) Хмм может мы спорим о разных вещах, но если меня будет интеросовать копирование именно вашего устройства, то я солью прошивку вашей фпга и коды управления фпга., именно с этой прошивкой. И какая мне разница чем они закодированны и какой формат они имеют. Или вы имеете в виду накинуть на все это еще и алгоритм динамической смены ключа ?? то собираетесь ли вы менять весь ключ ? как вы синхронизируете смену ключа в ФПГА и МК и т.д. ? Вы сможете слить прошивку ПЛИС, возможно, разберетесь куда что пишется, но полноценно управлять данной пршивкой Вы не сможете (что сводит на нет все потраченные усилия). Я забыл раньше отметить, что у моего устройства значительная часть обработки информации происходит в программной части. И обмен м/у ПЛИС и программной частью зависит от данных приходящих (сигнал+шум) на ПЛИС из вне. И поэтому коды управления ПЛИС полученные в какой-то определенный отрезок времени Вам скорее всего ничего не дадут. Ну в таком случае, ваш вариант за уши притянут к теме обсуждения  ) Т.к. в вашем случае вопрос стоит не о в защите прошивки ПЛИС, а в защите всего програмно аппаратного блока. Так стоит ли огород городить ?? А тема взлома мк это отдельный разговор.....
--------------------
|
|
|
|
|
May 25 2005, 05:14
|
Частый гость
 
Группа: Свой
Сообщений: 77
Регистрация: 17-05-05
Из: Красноярск
Пользователь №: 5 108

|
Цитата(des00 @ May 24 2005, 18:49) Ну в таком случае, ваш вариант за уши притянут к теме обсуждения  ) Т.к. в вашем случае вопрос стоит не о в защите прошивки ПЛИС, а в защите всего програмно аппаратного блока. Так стоит ли огород городить ?? А тема взлома мк это отдельный разговор..... Вопрос стоял о защите интелектуальной собственности. В какой-то степени мне удалось защитить свою систему от простого копирования. Если попытаться развивать дальше данное направление, но уже в сторону защиты исключительно аппаратной части (прошивки ПЛИС), то неисключено, что можно найти способ, который в значительной степени усложнит жизнь так называемым "копирам". В конечном итоге все будет определяться ценой и временем затраченными на подготовку к копированию продукта. В принципе можно вообще залить всю плату "эпоксидкой" или чем-нибудь покрепче, тогда копировать даже прошивку ПЛИС станет несколько сложнее.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|