реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Design Security Features in Altera FPGA
doom13
сообщение Apr 21 2014, 12:39
Сообщение #16


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Stewart Little @ Apr 21 2014, 15:26) *
Эта фича, по большому счету, не нужна. Достаточно nonvolatile.


Я так понимаю, в зависимости от того, какой ключ будет использоваться, нужна одна или другая.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Apr 21 2014, 12:51
Сообщение #17


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(doom13 @ Apr 21 2014, 15:39) *
Я так понимаю, в зависимости от того, какой ключ будет использоваться, нужна одна или другая.
Нет, Вы понимаете неправильно sm.gif
Достаточно только nonvolatile - оно покрывает оба варианта ключа.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
doom13
сообщение Apr 21 2014, 12:55
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Stewart Little @ Apr 21 2014, 15:51) *
Нет, Вы понимаете неправильно sm.gif
Достаточно только nonvolatile - оно покрывает оба варианта ключа.


Спасибо, буду знать.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение May 15 2014, 13:15
Сообщение #19


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(Stewart Little @ Apr 18 2014, 17:38) *
Да, все это так. Но у альтеры есть новое железо для прошивки - USB-Blaster II, который доже допускает управление параметрами JTAG'овских сигналов. Пока этот новый бластер только встраивают в отладочные платы для новый семейств, но обещают свделавть и как отдельный девайс. Вот я и имел в виду, а нельзя ли будет использовать USB-Blaster II для прошивки OPT-ключа??? Хотя, возможно вопрос несколько преждевременный sm.gif
Похоже, что USB-Blaster II таки годится для прошивки OPT-ключа:

Цитата
USB-Blaster II Download Cable Support
Up to 24MHz TCK/DCLK
4x improvement
Secure Key Programming


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
EugeneS
сообщение May 18 2014, 07:42
Сообщение #20


Частый гость
**

Группа: Свой
Сообщений: 181
Регистрация: 28-08-04
Пользователь №: 557



QUOTE (Stewart Little @ May 15 2014, 16:15) *
Похоже, что USB-Blaster II таки годится для прошивки OPT-ключа:


Вот еще:
http://www.altera.com/support/kdb/solution...032008_684.html
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 09:28
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Приветствую. Пришлось вспомнить старую тему - надо доразобраться с возможностью защиты прошивки для Cyclone 5.
Есть Q13.0.1, генерю key programming file (файл ini в системе отсутствует), заливаю его Terasic-Blaster (USB-Blaster), всё работает - ключ (volitile) заливается (Рисунок1), на вторую попытку говорит, что ключ уже есть.
Далее добавляю ini в bin64, генерю ekp и пробую залить. Выкидывает ошибку, что железо не поддерживает программирование данного ключа (Рисунок2). Как понимаю, во втором случае (после добавления в систему ini) получился non-volitile key и мой программер его не поддерживает.

Т.е. для программирования non-volatile key надо минимум заменить программатор на USB-Blaster II. Что может понадобиться ещё, прокатит ли использование ломаной версии Квартуса?

Ещё вопрос, в обоих случаях неактивна галка Security Bit, а это, как понимаю, и есть Tamper Protection Bit. Как тогда его активировать? Ведь есть режимы
- Non-volatile Key
- Non-volatile Key with Tamper Protection Bit Set
Спасибо.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Feb 18 2015, 10:30
Сообщение #22


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(doom13 @ Feb 18 2015, 12:28) *
Т.е. для программирования non-volatile key надо минимум заменить программатор на USB-Blaster II.

Да. Ежели надо, то есть в наличии.

Цитата
Что может понадобиться ещё, прокатит ли использование ломаной версии Квартуса?

Да вроде больше ничего не надо.
Кстати, из ломаной версии можно сделать "неломаную", если хотите.

Цитата
Ещё вопрос, в обоих случаях неактивна галка Security Bit, а это, как понимаю, и есть Tamper Protection Bit.

Вот тут не уверен. Надо тщательнеЕ вопрос поизучать.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 10:40
Сообщение #23


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Stewart Little @ Feb 18 2015, 13:30) *
Кстати, из ломаной версии можно сделать "неломаную", если хотите.

Это - заплатить много денег? sm.gif

Цитата(Stewart Little @ Feb 18 2015, 13:30) *
Вот тут не уверен. Надо тщательнеЕ вопрос поизучать.

То, что получилось показал на скринах, попробовал на версии Q14.0 - аналогично. Был бы рад помощи по данному вопросу.
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Feb 18 2015, 11:26
Сообщение #24


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(doom13 @ Feb 18 2015, 13:40) *
Это - заплатить много денег? sm.gif

Это тривиальный подход. А мы не ищем легких путей sm.gif
Напишите мне в личку.

Цитата
То, что получилось показал на скринах, попробовал на версии Q14.0 - аналогично. Был бы рад помощи по данному вопросу.

Увы, быстро не обещаю - завал на работе до вторника.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 11:34
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Stewart Little @ Apr 15 2014, 18:26) *
Для взведения Tamper protection bit нужно иметь специальный ini-файл, который должен быть помещен в папку ..\bin или ..\bin64 квартуса.
При наличии такого файла будет формироваться ekp со взведенным тампер протекшеном.

Тут ещё вопрос. Сгенерированный с ini файлом ключ - это тот же volatile с возведённым Tamper Protection (мой программер не умеет этот бит возводить,а в свойствах не отображается опция ON)
или это non_volatile (что мой программер так же не умеет прошивать), но как они тогда между собой отличаются. Т.е., как тогда понять по файлу ключа - это volatile или non-volatile?

Больше склоняюсь к тому, что с ini генерится non-volatile с Tamper Protection = OFF, но как оно на самом деле? И как тогда поднять Tamper Protection (повторюсь с вопросом)?

Цитата(Stewart Little @ Feb 18 2015, 14:26) *
Увы, быстро не обещаю - завал на работе до вторника.

Пока это и не горит, просто может понадобиться в обозримом будущем и хотелось бы поставить точку в данном вопросе.
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 12:43
Сообщение #26


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Нашёл часть ответов на свои вопросы.
Сначала нашёл это.

Потом сгенерил ekp-файл с ini-файлом и без.

Сообщения системы без ini-файла
Цитата
Info (210033): Memory Map File output_files/ddvi_5CEFA9.map contains memory usage information for file output_files/ddvi_5CEFA9.jic
Info (210118): Created EKP file E:/work/Altera_Projects/cyc5_adc_4x4/c5e_test_q14/output_files/ddvi_5CEFA9.ekp


Сообщения системы с ini-файлом
Цитата
Info (210033): Memory Map File output_files/ddvi_5CEFA9.map contains memory usage information for file output_files/ddvi_5CEFA9.jic
Info (210118): Created EKP file E:/work/Altera_Projects/cyc5_adc_4x4/c5e_test_q14/output_files/ddvi_5CEFA9.ekp
Info (210119): EKP file E:/work/Altera_Projects/cyc5_adc_4x4/c5e_test_q14/output_files/ddvi_5CEFA9.ekp sets the tamper protection bit


Stewart Little, получается - Вы были правы, ini - возводит Tamper Protection Bit.

Остаются вопросы:
1) Каким образом тогда выбирается volatile key или non-volatile key? Или если будет "нормальный" программатор, то должна появиться опция выбора типа ключа?
2) Что такое Security Bit в окне Quartus II Programmer?
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Feb 18 2015, 12:56
Сообщение #27


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(doom13 @ Feb 18 2015, 14:34) *
Тут ещё вопрос. Сгенерированный с ini файлом ключ - это тот же volatile с возведённым Tamper Protection (мой программер не умеет этот бит возводить,а в свойствах не отображается опция ON) или это non_volatile (что мой программер так же не умеет прошивать), но как они тогда между собой отличаются. Т.е., как тогда понять по файлу ключа - это volatile или non-volatile?

Не претендую на абсолютную истину, но склероз мне подсказывает следующее:
в ekp-файле прописаны обе опции - и volatile, и non-volatile. Какой из этих вариантов загружать - определяется в программере, галкой "Configure volatile design security key when available".

Цитата
Больше склоняюсь к тому, что с ini генерится non-volatile с Tamper Protection = OFF, но как оно на самом деле? И как тогда поднять Tamper Protection (повторюсь с вопросом)?

Нет, на так!!!
С ini-файлом всегда генерится ekp-файл c взведенным Tamper Protection.
Но про галку в опциях программере при этом не забывайте.
Здесь по поводу Non-volatile key with Tamper Protection вопросов нет.
А вот по поводу Volatile key with Tamper Protection - все зависит от используемого семейства ПЛИС : "The volatile key tamper-protection is only available for Arria II, Arria V, Cyclone V, and Stratix V devices".



Цитата(doom13 @ Feb 18 2015, 15:43) *
Остаются вопросы:
1) Каким образом тогда выбирается volatile key или non-volatile key? Или если будет "нормальный" программатор, то должна появиться опция выбора типа ключа?

Выше рассказал.

Цитата
2) Что такое Security Bit в окне Quartus II Programmer?

Это из другой оперы. Это опции файла. Если девайс имеет Security Bit (например MAX3000A или MAX II), то программирующий файл может быть создан со взведенным битом защиты (необходимость этого указывается в "Device and Pin options", емнип.


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 13:32
Сообщение #28


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Stewart Little @ Feb 18 2015, 15:56) *
Не претендую на абсолютную истину, но склероз мне подсказывает следующее:
в ekp-файле прописаны обе опции - и volatile, и non-volatile. Какой из этих вариантов загружать - определяется в программере, галкой "Configure volatile design security key when available".

Похоже это так. Когда сгенерил ключ без Tamper Protection он заливается USB-Blaster-ом.
При прошивке пишет:
Цитата
Info (209060): Started Programmer operation at Wed Feb 18 16:21:20 2015
Info (209017): Device 1 contains JTAG ID code 0x02B140DD
Info (209024): Programming device 1
Info (209011): Successfully performed operation(s)
Info (209061): Ended Programmer operation at Wed Feb 18 16:21:20 2015


Если второй раз попробуем залить ключ:
Цитата
Info (209060): Started Programmer operation at Wed Feb 18 16:21:41 2015
Info (209005): Programming status: Device 1 has already had a volatile design security key successfully programmed for optional-secure bitstream configuration. It can accept both secured and unsecured configuration bitstreams
Info (209017): Device 1 contains JTAG ID code 0x02B140DD
Info (209024): Programming device 1
Info (209011): Successfully performed operation(s)
Info (209061): Ended Programmer operation at Wed Feb 18 16:21:42 2015


Если снять галку "Configure volatile design security key when available", то начинает ругаться:
Цитата
Info (209060): Started Programmer operation at Wed Feb 18 16:26:36 2015
Info (209005): Programming status: Current hardware doesn't support security key programming
Error (209012): Operation failed
Info (209061): Ended Programmer operation at Wed Feb 18 16:26:36 2015

Долго не мог вспомнить, где находится эта галка (Tools->Options->Programmer).

Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 14:50
Сообщение #29


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Затестил работу для volatile ключа. Батарейки на плате нет. Сгенерил зашифрованную прошивку, залил во флэш-память. Включаю питание - ПЛИС не стартует. Программатором заливаю volatile key - ПЛИС стартует. Через Remote Update даю команду на реконфигурацию - перезагружается. Сбрасываю питание - опять не стартует и т.д.
Volatile key работает. Проверить работу non-volatile пока нет возможности, но, думаю, всё будет так же.
Спасибо Stewart Little за оказанную помощь.
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 18 2015, 18:20
Сообщение #30


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Использование volatile key кажется менее надёжным, т.к. если умирает батарейка (это наверное маловероятно, но через много-много лет) или если она отвалится, то при условии, что возведён Tamper Protection Bit, оживить FPGA не получится. В случае non-volatile key, если используется Remote Update и стабильно рабочий factory image, всё будет работать и сможем при необходимости обновлять прошивку для factory image.
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 18:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01564 секунд с 7
ELECTRONIX ©2004-2016