Jump to content

    

Recommended Posts

On 2/1/2005 at 6:52 PM, prom said:

Интересуют книги/статьи и т.п. по обеспечению защиты прошивки ПЛИС.

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

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

Здесь большой простор для желающих защитить свои авторские права.    

Share this post


Link to post
Share on other sites

Думаю что на Zinq 7010 можно сделать прошивку в проц RMkey, и подпись образа целиком парой ключей, сгенеренных под этот ключ. Так же этот ключ позволит криптовать бинарники. Скопировать можно - а вот запустить в неподписанной ОСи - уже нет. Ну, собственно, как и запустить неподписанной бинарник в подписаннной ОСи. 

 

Share this post


Link to post
Share on other sites

Друзья, случилось горе, разрядилась батарея, питающая защищённую область xilinx  Virtex®-4 LX  xc4vlx25  fpga.

Финита-ля камедиа?

Или есть возможность считать защищённую область и перезаписать в стертую м/с (устройства два).

Существуют-ли известные дыры в защите?

Разработчик - известная компания забугром, обслуживание прекращено..

Устройство подключается в USB, и похоже, грузит прошивку с компа.

Edited by Maxim_S

Share this post


Link to post
Share on other sites

Приветствую!

Сочувствую, но кажется мне что действительно тут только букетик и нужен :cray:

Теоретически  конечно можно  экспериментировать  со второй платой, даже  статьи  есть типа  "Black-Box Side-Channel Attacks Highlight the Importance of Countermeasures – An Analysis of the Xilinx Virtex-4 and Virtex-5 Bitstream Encryption Mechanism"  В которых  "ломали" ключ загрузки.  Но  практически такая  реализация кажется мне сомнительной, тем более  на единственном еще  живом "пациенте".

 

Удачи! Rob. 

Share this post


Link to post
Share on other sites

Приветствую!

5 minutes ago, Maxim_S said:

Блин обидно, устройство подешевело ~ в 17 раз)) если FPGA стоит 61 тыр.

Навряд ли сейчас FPGA Virtex®-4 LX  xc4vlx25 стоит такие деньги.  Старенькие уже, и маленькие :yes3:  
А что за устройство хоть?

   

Удачи! Rob.

Share this post


Link to post
Share on other sites

Приветствую!

Ну так это новые  (да  еще в таком магазине :english_en:)  А  паяные  сотня $ за пучок  :biggrin:

1 minute ago, Maxim_S said:

быстродействующий лог анализатор-приставка.

Понятно.  Тут только с производителем связываться (если  получится)  Может  сжалится  за малую денежку восстановит ключ.

Ну или самому прошивку ваять :scratch_one-s_head:


Удачи! Rob.

Share this post


Link to post
Share on other sites

Не нашёл в теме про шифрование прошивки в 7 серии xilinx. Пишут, что прошивка шифруется, а при программировании на лету дешифруется уже внутри ПЛИС (ug470 стр. 96), а ключ для дешифровки зашивается один раз и навсегда. Это разве не решает вопрос защиты от копирования? 

И может кто знает, есть ли что-то подобное у Альтеры?

Edited by Trumr

Share this post


Link to post
Share on other sites
3 hours ago, Trumr said:

Не нашёл в теме про шифрование прошивки в 7 серии xilinx. Пишут, что прошивка шифруется, а при программировании на лету дешифруется уже внутри ПЛИС (ug470 стр. 96), а ключ для дешифровки зашивается один раз и навсегда. Это разве не решает вопрос защиты от копирования? 

И может кто знает, есть ли что-то подобное у Альтеры?

 

вопрос с копированием решается тем, что ПЛИС с прошитым ключом скопировать нельзя.

то есть зашифрованная прошивка не будет работать в "чистой" ПЛИС

-----------------

у Альтеры есть, но в более-менее дорогих ПЛИС - в Стратиксах|Ариях, может в "крайних" Циклонах - спросите у Stewart Little

Share this post


Link to post
Share on other sites
19 minutes ago, yes said:

вопрос с копированием решается тем, что ПЛИС с прошитым ключом скопировать нельзя.

то есть зашифрованная прошивка не будет работать в "чистой" ПЛИС

В 7-ой серии Xilinx'а этот вопрос уже давно решен и всё легко копируется: A Full Break of the Bitstream Encryption of Xilinx 7-Series FPGAs

:biggrin:

Share this post


Link to post
Share on other sites
13 minutes ago, blackfin said:

В 7-ой серии Xilinx'а этот вопрос уже давно "решается" и всё легко копируется: A Full Break of the Bitstream Encryption of Xilinx 7-Series FPGAs

:biggrin:

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

 

Share this post


Link to post
Share on other sites
49 минут назад, yes сказал:

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

Вы ничего не путаете? В статье написано:

Цитата

In our attack, we manipulate the encrypted bitstream to redirect its (decrypted) content from the fabric to a conf i gu-ration register. We then read out this conf i guration register, which holds the unencrypted bitstream data; the readout of the conf i guration register is not prevented even in the presence of an encrypted bitstream anyway.

Вижу явное противоречие в ваших словах и тезисах статьи.

Share this post


Link to post
Share on other sites
9 minutes ago, makc said:

Вы ничего не путаете? В статье написано:

Вижу явное противоречие в ваших словах и тезисах статьи.

прочитайте дальше тезисов :)

они чтобы считать регистр должны же туда что-то (прошивку, которая загрузится) загрузить? поищите в pdf unencrypted 

 

upd: там энкриптед нет, есть readout - вот это как раз оно, по-моему. пункт 4

 

The attack is essentially mounted in five steps:
1. Create a malicious bitstream and a readout bitstream
2. Configure the FPGA with the malicious bitstream
3. Reset the FPGA (automatically)
4. Read out the WBSTAR register using the readout bitstream
5. Reset the FPGA (manually)

 

upd2: ну вот совсем уж английским по белому

In Step 4, a (not encrypted) readout bitstream is sent to the
FPGA to obtain the content of the WBSTAR register.
 

Share this post


Link to post
Share on other sites
1 час назад, yes сказал:

они чтобы считать регистр должны же туда что-то (прошивку, которая загрузится) загрузить? поищите в pdf unencrypted 

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

1164174646_.thumb.png.4cbded5be81d262d87c29fb3633ef6ab.png

1 час назад, yes сказал:

In Step 4, a (not encrypted) readout bitstream is sent to the
FPGA to obtain the content of the WBSTAR register.

Да, это в принципе логично, потому как иначе до регистра не доберешься.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.