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

 
 
> stm32F10x- защита от чтения , использование flash как eeprom и собственный бутлоадер, нюансы реализации.
Serj78
сообщение Apr 16 2013, 15:14
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499



Прошу помощи у коллег кто сталкивался с подобным противоречием..

Если ставить бит защиты от считывания- то он автоматически блокирует запись в память. ( Например чтобы не закатали через бутлоадер утилитку по считыванию памяти, такова идея защиты разработчиков ST)
Блокирует из любого источника или только со стороны бутлоадера?
Кажется на первый взгляд из любого, т.к через SWD также нельзя записать ничего.
При этом также ничего нельзя писать в память из приложения, те эмуляция eeprom для хранения настроек не возможна.. Или это не так?


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

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Непомнящий Евген...
сообщение Apr 17 2013, 11:49
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Подписываю. Ресурсы именно на подпись не считал. Загрузчик с шифрованием и цифровой подписью, прием по rs232 и еще несколько плюшек на gcc у меня занимает почти 8к. Флаги оптимизации подобрал, писал не сильно заморачиваясь на "С с классами".
Go to the top of the page
 
+Quote Post
aoreh
сообщение Apr 18 2013, 09:35
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 16-06-11
Пользователь №: 65 731



Цитата(Непомнящий Евгений @ Apr 17 2013, 14:49) *
Подписываю. Ресурсы именно на подпись не считал. Загрузчик с шифрованием и цифровой подписью, прием по rs232 и еще несколько плюшек на gcc у меня занимает почти 8к. Флаги оптимизации подобрал, писал не сильно заморачиваясь на "С с классами".

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

Сообщение отредактировал aoreh - Apr 18 2013, 11:05
Go to the top of the page
 
+Quote Post
Непомнящий Евген...
сообщение Apr 19 2013, 05:31
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 16-07-07
Из: Волгодонск
Пользователь №: 29 153



Цитата(aoreh @ Apr 18 2013, 13:35) *
а зачем сложно подписывать, если программа зашифрована? расшифровать и зашифровать свое ведь и так никто не сможет (в разумное время/деньги)? а загрузчик должен работать только с шифрованными данными ну и какой-нибудь црц, что бы убедиться, что распаковано верно.


Подпись дает бОльшую гарантию, чем CRC. А так как и она и шифрование основаны на одном и том же коде - то накладные расходы минимальны

Цитата(Aner @ Apr 18 2013, 23:24) *
За последние лет 10 не припомню случая, чтобы кто-то вскрыл мою криптованную программу.

Неуловимый Джо? wink.gif

Цитата
Хотя знаю, что это задача решаемая, но недешево. Поскольку есть детерминанта определяемая ограниченностью кода...

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

Другое дело, что часто за эти деньги дешевле написать программу с нуля и получить поддерживаемый код на ЯВУ, а не дизасм...


Цитата(k000858 @ Apr 19 2013, 07:05) *
1) изначально область загрузчика должна быть закрыта битами защиты, что бы его не могли считать средствами отладки и левой прогой во флэш. как называются эти биты в stm32f4 и можно ли их устанавливать не на всю флэш а на определенные области?
2) при снятии защиты с области памяти основной прошивки, не сотрется ли вся флэш, включая загрузчик?

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

Детали стоит почитать в Flash programming manual для вашей модели процессора.

Цитата
3) stm32f4 умеет декриптить AES, DES алгоритмами, думаю их и заюзать. какой алгоритм лучше заюзать?

aes более новый и по идее более защищенный, чем DES. Возможно и более тормозной...

Цитата
4) ну допустим контроллер я научу расшифровывать, вопрос чем и как (имеет ввиду на пк) предварительно зашифровать прошивку ?

Напишешь программу для ПК. На каком-нить питоне скажем в стандартной библиотеке есть алгоритмы шифрования. Для С/С++ надо поискать библиотеку - их полно
Go to the top of the page
 
+Quote Post
aoreh
сообщение Apr 19 2013, 13:44
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 16-06-11
Пользователь №: 65 731



Цитата(Непомнящий Евгений @ Apr 19 2013, 08:31) *
Подпись дает бОльшую гарантию, чем CRC.

гараинтию чего? того, что код закриптован именно вами? sm.gif
Цитата(Непомнящий Евгений @ Apr 19 2013, 08:31) *
А так как и она и шифрование основаны на одном и том же коде - то накладные расходы минимальны

минимальны, но и смысл в них сомнительный
или вы думаете, что ключ к коду сломали, а подпись не получится?

Сообщение отредактировал aoreh - Apr 19 2013, 13:45
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Serj78   stm32F10x- защита от чтения , использование flash как eeprom и собственный бутлоадер   Apr 16 2013, 15:14
- - Aner   ...Если мы хотим сделать собственный бутлоадер, то...   Apr 16 2013, 16:31
- - Непомнящий Евгений   Насколько я понимаю, эти фьюзы запрещают программи...   Apr 17 2013, 07:53
- - Aner   Не совсем так, или совсем не так. Фьюзы коде-проте...   Apr 17 2013, 08:31
- - demiurg_spb   Цитата(Serj78 @ Apr 16 2013, 19:14) и есл...   Apr 17 2013, 08:36
|- - Aner   QUOTE (demiurg_spb @ Apr 17 2013, 11:36) ...   Apr 17 2013, 09:14
|- - Непомнящий Евгений   Цитата(Aner @ Apr 17 2013, 13:14) Это в т...   Apr 17 2013, 09:29
|- - demiurg_spb   Цитата(Aner @ Apr 17 2013, 13:14) Это в т...   Apr 17 2013, 10:55
|- - kolobok0   Цитата(demiurg_spb @ Apr 17 2013, 14:55) ...   Apr 18 2013, 15:19
|- - demiurg_spb   Цитата(kolobok0 @ Apr 18 2013, 19:19) о к...   Apr 21 2013, 12:15
- - Aner   Немного не так. Вы пишите свой загрузчик и ставите...   Apr 17 2013, 10:16
|- - Непомнящий Евгений   Цитата(Aner @ Apr 17 2013, 14:16) Немного...   Apr 17 2013, 10:33
- - Aner   Это понятно и это не то. Вы ведь как-то делаете за...   Apr 17 2013, 10:46
- - Непомнящий Евгений   Не, стоп. Вы говорили про бекдор - загрузка сторон...   Apr 17 2013, 10:51
- - Aner   Даташит тут не причём. Проблема, бек дора образует...   Apr 17 2013, 11:47
|- - demiurg_spb   Цитата(Aner @ Apr 17 2013, 15:47) Похоже,...   Apr 17 2013, 16:37
|- - Непомнящий Евгений   Цитата(aoreh @ Apr 19 2013, 17:44) гараин...   Apr 19 2013, 14:36
- - Aner   Алгоритм цифровой подписи вам ничего особенного не...   Apr 17 2013, 13:59
|- - Непомнящий Евгений   Цитата(Aner @ Apr 17 2013, 17:59) Алгорит...   Apr 17 2013, 14:21
- - Aner   Не, мне читать не надо, я и так "fluffy...   Apr 17 2013, 14:36
- - Непомнящий Евгений   Гм, цифровая подпись обычно имеется в виду именно ...   Apr 17 2013, 15:20
- - Aner   Цифровая подпись есть цифровая подпись и ничего не...   Apr 17 2013, 15:44
- - Golikov A.   В целом забавная беседа%)... С одной стороны челов...   Apr 17 2013, 16:21
|- - Aner   QUOTE (Golikov A. @ Apr 17 2013, 19:21) В...   Apr 17 2013, 19:37
|- - Непомнящий Евгений   Цитата(Golikov A. @ Apr 17 2013, 20:21) В...   Apr 18 2013, 05:06
|- - Golikov A.   Цитата(Непомнящий Евгений @ Apr 18 2013, 09...   Apr 18 2013, 16:46
|- - Serj78   Огромное спасибо всем за обсуждение! Не ожида...   Apr 18 2013, 18:51
- - Golikov A.   Ваша беда что вы пишите это на основе ВАШЕГО лично...   Apr 18 2013, 03:34
|- - Aner   QUOTE (Golikov A. @ Apr 18 2013, 06:34) В...   Apr 18 2013, 09:21
- - IgorKossak   Заканчиваем обсуждать личности! Модератор.   Apr 18 2013, 14:18
- - Aner   В этих процах этот бит не совсем бит защиты памяти...   Apr 18 2013, 19:24
|- - Golikov A.   Цитата(Aner @ Apr 18 2013, 23:24) Использ...   Apr 19 2013, 08:16
||- - Aner   Цитата(Golikov A. @ Apr 19 2013, 11:16)я ...   Apr 19 2013, 14:32
||- - Golikov A.   Цитата(Aner @ Apr 19 2013, 18:32) [CENSOR...   Apr 19 2013, 15:18
|- - Serj78   Цитата(Aner @ Apr 18 2013, 23:24) В этих ...   Apr 19 2013, 14:26
|- - Serj78   Цитата(Aner @ Apr 18 2013, 23:24) В этих ...   Apr 19 2013, 15:04
- - k000858   Всем привет. почитал тему, сейчас как раз занимаюс...   Apr 19 2013, 03:05
|- - Aner   QUOTE (k000858 @ Apr 19 2013, 06:05) Всем...   Apr 19 2013, 14:06
|- - k000858   Цитата(Aner @ Apr 19 2013, 18:06) С Ether...   Apr 19 2013, 14:34
||- - Aner   QUOTE (k000858 @ Apr 19 2013, 17:34) загр...   Apr 19 2013, 14:44
||- - Aner   QUOTE (k000858 @ Apr 19 2013, 17:34) загр...   Apr 19 2013, 15:20
||- - Aner   QUOTE (k000858 @ Apr 19 2013, 17:34) загр...   Apr 19 2013, 15:51
||- - k000858   Цитата(k000858 @ Apr 19 2013, 18:34) загр...   Apr 25 2013, 09:34
||- - aoreh   Цитата(k000858 @ Apr 25 2013, 12:34) обло...   Apr 25 2013, 09:56
|||- - k000858   Цитата(aoreh @ Apr 25 2013, 13:56) не так...   Apr 25 2013, 10:17
|||- - aoreh   Цитата(k000858 @ Apr 25 2013, 13:17) може...   Apr 25 2013, 11:05
|||- - КонстантинТ   Цитата(k000858 @ Apr 25 2013, 13:17) може...   Apr 25 2013, 17:10
||- - PoReX   Цитата(k000858 @ Apr 25 2013, 13:34) обло...   Apr 25 2013, 11:18
||- - aoreh   Цитата(PoReX @ Apr 25 2013, 14:18) Как эт...   Apr 25 2013, 11:52
||- - PoReX   Цитата(aoreh @ Apr 25 2013, 15:52) Кроме ...   Apr 26 2013, 07:52
|- - PoReX   Цитата(Aner @ Apr 19 2013, 18:06) Подумай...   Apr 19 2013, 14:43
- - IgorKossak   Golikov A., Aner, предупреждаю обоих последний раз...   Apr 19 2013, 17:24
- - Allregia   Народ, сорри за дурацкий вопрос - а чем вы далете ...   Apr 20 2013, 10:12
|- - Сергей Борщ   QUOTE (Allregia @ Apr 20 2013, 13:12) Нар...   Apr 20 2013, 10:59
|- - Petka   Цитата(Allregia @ Apr 20 2013, 14:12) Нар...   Apr 20 2013, 11:44
|- - Allregia   Цитата(Petka @ Apr 20 2013, 13:44) srec-c...   Apr 20 2013, 15:15
|- - _Артём_   Цитата(Allregia @ Apr 20 2013, 18:15) Нав...   Apr 20 2013, 16:11
- - PoReX   Цитата(Aner @ Apr 19 2013, 19:51) У вас м...   Apr 20 2013, 19:01
|- - Allregia   Цитата(PoReX @ Apr 20 2013, 21:01) Для со...   Apr 20 2013, 19:43
|- - Aner   QUOTE (PoReX @ Apr 20 2013, 22:01) 1) Сер...   Apr 20 2013, 21:58
|- - PoReX   Цитата(Aner @ Apr 21 2013, 01:58) Я же пи...   Apr 21 2013, 15:55
- - Aner   Чип прекрасно виден jlink'ом и стирается. Это ...   Apr 21 2013, 13:42
|- - Непомнящий Евгений   Цитата(Aner @ Apr 21 2013, 17:42) Снятие ...   Apr 21 2013, 14:09
- - Aner   Дока -докой. А сам механиз защиты там софтовый и в...   Apr 21 2013, 14:29
|- - Непомнящий Евгений   Цитата(Aner @ Apr 21 2013, 18:29) Дока -д...   Apr 21 2013, 15:09
|- - demiurg_spb   Цитата(Непомнящий Евгений @ Apr 21 2013, 19...   Apr 21 2013, 15:30
- - Golikov A.   а вы не предполагаете что байт защиты стирается по...   Apr 21 2013, 14:44
- - Aner   Я выше об этом и писал, так оно и есть, только там...   Apr 21 2013, 14:57
- - Aner   Так и что это даёт? Своим загрузчиком под протект...   Apr 21 2013, 16:28
|- - PoReX   Цитата(Aner @ Apr 21 2013, 20:28) И так и...   Apr 21 2013, 17:33
- - Aner   Изделия выпускаются серийно, ... пальцев рук посчи...   Apr 21 2013, 20:42
|- - PoReX   Цитата(Aner @ Apr 22 2013, 00:42) Но непо...   Apr 22 2013, 06:01
- - Aner   Поясните тогда для ясности. ... И если вы в режим...   Apr 22 2013, 09:20
|- - PoReX   Цитата(Aner @ Apr 22 2013, 13:20) Пояснит...   Apr 22 2013, 09:58
- - Aner   Значит основная прога куда то лезет по сети? И есл...   Apr 22 2013, 10:54
- - PoReX   Цитата(Aner @ Apr 22 2013, 14:54) Значит ...   Apr 22 2013, 13:16


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

 


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


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