Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: IMX6 Защита программ
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
mantech
Приветствую всех, кто работал в данной теме, ну и тех, кто писал, что с сабжем "в одиночку", т.е. без осей не разобраться biggrin.gif

Теперь вопрос в другом, есть бутлоадер, который грузится в OCRAM из SDкарты и загрузившись сам , грузит основную прогу в DDR, которую несложно зашифровать. Вопрос, как сделать так, чтобы грузить шифрованный бутлоадер?

Почитал что смог про HAB - какая-то каша в голове crying.gif
mantech
Жаль, видимо никто у нас не пишет коммерческое ПО на фрискале crying.gif
_3m
Цитата(mantech @ Nov 19 2014, 21:10) *
Жаль, видимо никто у нас не пишет коммерческое ПО на фрискале crying.gif

Кто пишет коммерческое по заключает NDA.
mantech
Цитата(_3m @ Nov 20 2014, 11:27) *
Кто пишет коммерческое по заключает NDA.


Я не про это, просто коммерческое ПО подразумевает защиту от копирования, а коли тут никто не написал, то это может означать:

1) Все альтруисты и пишут без защиты (к альтруизму я отношусь положительно, если это хобби или "между делом" biggrin.gif )

2) Пишут исключительно под линукс и "для себя"

3) Просто не хотят рассказать, как сами разобрались с этим делом... (Ну жалко - так жалко, лишь бы в радость)
Golikov A.
Или пишут не ширпотреб, где защитой является окружение. Если спереть мою прошивку, то надо еще где то сделать около 50 кг Железа-механики ее окружающего, еще плату такую же сделать, а потом вылезти на рынок с таким же продуктом и убедить что он лучше. А мы тем временем еще что-то доделаем и поменяем. Иногда овчинка выделки не стоит...
_3m
Цитата(mantech @ Nov 20 2014, 14:19) *
Я не про это, просто коммерческое ПО подразумевает защиту от копирования, а коли тут никто не написал, то это может означать:
1) Все альтруисты и пишут без защиты (к альтруизму я отношусь положительно, если это хобби или "между делом" biggrin.gif )
...
3) Просто не хотят рассказать, как сами разобрались с этим делом... (Ну жалко - так жалко, лишь бы в радость)

1)
Мы пишем без защиты. Ниразу не альтруисты, коммерческий продукт. Ну сопрете вы по и ЧО ?
Без N кг железа от слитого по толку ноль. Кроме того даже если спереть все - нужно искать клиентов. Серьезные и денежные известны они не купят у красноглазика Пупкина, им нужен солидный поставщик + гарантия + поддержка + апдейты. Остается продавать уворованное нищебродам а на них денег не заработать.

3)
Закон нужно уважать. NDA - это значит не чесать языком попусту.

Нужно вам шифрование загрузчика - идите к официальному дилеру, подписывайте бумаги и будет вам счастье (закрытые AN, тулзы для шифрования и подписи кода, техподдержка). Но все только под Lin или Win.
mantech
Цитата(_3m @ Nov 20 2014, 17:59) *
Нужно вам шифрование загрузчика - идите к официальному дилеру, подписывайте бумаги и будет вам счастье (закрытые AN, тулзы для шифрования и подписи кода, техподдержка). Но все только под Lin или Win.


Ммм да уж... Плюс, еще бабок отвалить за это надо немало наверно... Чет как-то невесело получается.

ЗЫ. И почему в этих камнях нет встроенной флехи, хоть на пару мегов...

Интересно, кто В России официальный дилер? Плата куплена в стартерките, к ним стучаться?
krux
Цитата(mantech @ Nov 20 2014, 20:04) *
Интересно, кто В России официальный дилер?

freescale.com
открыть "Sample & Buy" -> Distributor network
указать страну.
неужели это требует от вас каких-то непомерных знаний?
_3m
Цитата(mantech @ Nov 20 2014, 20:04) *
Ммм да уж... Плюс, еще бабок отвалить за это надо немало наверно... Чет как-то невесело получается.
ЗЫ. И почему в этих камнях нет встроенной флехи, хоть на пару мегов...
Интересно, кто В России официальный дилер? Плата куплена в стартерките, к ним стучаться?

Бабок не просили. Забрали тока душу подпись.
Встроенная флэха... зачем она? Есть нанд, есть spi, есть e-mmc.
Раз плата куплена в стартерките логично начать с них как с крайних. Но пошлют-с.

Из интернетов:
"Симметрон является официальным дистрибьютором компании Freescale Semiconductor."
mantech
Цитата(_3m @ Nov 20 2014, 23:15) *
Встроенная флэха... зачем она? Есть нанд, есть spi, есть e-mmc.


Все понятно, только на плате нет ни нанда, ни еммс, только разъем под сд-карту...


Написал в silica, посмотрим, что ответят...
mantech
Цитата(mantech @ Nov 21 2014, 09:50) *
Все понятно, только на плате нет ни нанда, ни еммс, только разъем под сд-карту...


Написал в silica, посмотрим, что ответят...



Вообщем, ничего особо определенного мне не ответили, поэтому задам последний вопрос на эту тему -

Вообще, защита программы при помощи HAB, это что, защита кода или просто добавление к нему какой-либо цифровой подписи?? Если да, то код вообще защитить, т.е. зашифровать нельзя? Тогда зачем все это?
krux
любую защиту можно сломать.

HAB расчитан на то, чтобы обеспечить доверенную цепь загрузки, т.е. убедиться что критичный код будет выполнятся в "безопасной" среде.
контрольная информация (ключ) прожигается в однократке - OTP-ROM (aka eFuse). Т.е. технология работает только с "прожжеными" процессорами в ходе настройки плат при серийном производстве.

первоначальный загрузчик всё равно можно расковырять, переподписать и выполнить на физически другом (свежем) процессоре, предварительно прошив его OTP новым ключом, соответствующим "хакнутой" прошивке.

т.е. "защита при помощи HAB" базируется на том, что перепаять старый iMX со старым прожженым ключом на новый - дороже, чем стоит сама прошивка.
mantech
Цитата(krux @ Dec 4 2014, 23:19) *
что перепаять старый iMX со старым прожженым ключом на новый - дороже, чем стоит сама прошивка.


А смысл вообще всего этого?? Т.е допустим, есть контроллер с прошивкой, на базе стандартной платы за 2Крубля, вся суть в программе, т.е. я так понимаю, можно оторвать всю эту подпись, купить такую же плату и залить в нее мою прогу, так получается? Иными словами, если я правильно понял, защиты именно софта в этих процах нет?
krux
Цитата
если я правильно понял, защиты именно софта в этих процах нет?

встречный вопрос: а в каких вам известных процах такая защита есть?
NULL
Цитата(krux @ Dec 5 2014, 01:49) *
встречный вопрос: а в каких вам известных процах такая защита есть?


У TI есть специфическая вещь Basic Secure Boot
Golikov A.
слушайте ну все уже давно решено до вас....
Ну защищают же на компах программы, ну сделайте внешнее устройство аля хасп, а то и готовый хасп возмите, поднимите USB и готово...

Потом есть такая штука ZKP, совершенно спокойно можно сделать алгоритм достоверно подтверждающий что вы тот кто есть не сообщив при этом совершенно ключа...
И продавайте не плату, а ключи, хотят платы тиражировать их дело, а ключи уникальны...
krux
Цитата(NULL @ Dec 5 2014, 15:31) *
У TI есть специфическая вещь Basic Secure Boot

не знаком к сожалению с современными TI OMAP.
во время выполнения того самого "secure boot image" возможно читать оперативные регистры через JTAG?
если да, то этот механизм не защищает саму программу.
mantech
Цитата(krux @ Dec 5 2014, 14:49) *
встречный вопрос: а в каких вам известных процах такая защита есть?


С внешним флешем - честно не знаю...
NULL
Цитата(krux @ Dec 5 2014, 08:16) *
не знаком к сожалению с современными TI OMAP.
во время выполнения того самого "secure boot image" возможно читать оперативные регистры через JTAG?
если да, то этот механизм не защищает саму программу.

Насколько мне известно, JTAG, по-умолчанию, у этих чипов отключён. Также доступа нет к ключам шифрования.
Integro
Цитата(krux @ Dec 5 2014, 14:49) *
встречный вопрос: а в каких вам известных процах такая защита есть?

samsung s5pv210, secure booting
psL
Blackfin Lockbox http://www.analog.com/ru/content/bf_lockbo...nology/fca.html
вообще довольно проблематично это все отлаживать: ключи прошиваются в otp память, jtag отключается также через otp
Видимо самая лучшая защита от копирования, это когда цена реверсинга оригинала и получения копии существенно выше самого оригинала.
mantech
Цитата(Golikov A. @ Dec 5 2014, 19:57) *
слушайте ну все уже давно решено до вас....
Ну защищают же на компах программы, ну сделайте внешнее устройство аля хасп, а то и готовый хасп возмите, поднимите USB и готово...


Дак похоже именно это и остается...
_3m
Цитата(mantech @ Dec 5 2014, 13:59) *
А смысл вообще всего этого?? Т.е допустим, есть контроллер с прошивкой, на базе стандартной платы за 2Крубля, вся суть в программе, т.е. я так понимаю, можно оторвать всю эту подпись, купить такую же плату и залить в нее мою прогу, так получается? Иными словами, если я правильно понял, защиты именно софта в этих процах нет?

Вы не вкурили принцип защиты.
Есть два метода:
1) Аутентификация бут кода. Проверяется хэш загрузчика. Если не совпадает проц не грузится.
Следствие- изменить код невозможно потому что надо переподписывать а ключей для подписи нет.
Загрузчик далее грузит криптованный прикладной софт, ключи берет из efuse.
Загрузчик можно расковырять, переподписать своим ключом и запустить на другом процессоре но приложение он не сможет декриптовать потому что в новом процессоре нет ключей для расшифровки а считать их из старого невозможно.

2) HAB сам умеет грузить криптованный код, но это в процах с криптофункциями.

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

mantech
Цитата(_3m @ Dec 17 2014, 12:34) *
Вы не вкурили принцип защиты.


Блин, ну почему у буржуев всегда все через зад делается... Неужели просто нельзя было забить ключ во фьюзы и зашифровать тулзой прогу с этим ключем?? Понимаю - это риторический вопрос...



Цитата(_3m @ Dec 17 2014, 12:34) *
2) HAB сам умеет грузить криптованный код, но это в процах с криптофункциями.


Интересно, а грузить подписанный, но не шифрованный код могут любые процы, и с отключенными криптофункциями??
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.