Форум программистов, компьютерный форум, киберфорум
Наши страницы

Микроконтроллеры

Войти
Регистрация
Восстановить пароль
 
 
Igor-air
0 / 0 / 0
Регистрация: 23.12.2015
Сообщений: 8
#1

Залоченность современных МК - Микроконтроллер

12.01.2018, 18:45. Просмотров 439. Ответов 22
Метки нет (Все метки)

Всем доброго времени суток!
Есть необходимость научиться обходить защиту (залоченность) современных МК. Из того, что нашёл в нете у меня сложилась такая картина:
Когда-то раньше производители использовали защиту от считывания прошивки из flash-памяти путём отжигания вывода записи.
Теперь защиту (залоченность) делают в виде так называемых FUSES.
Нашёл в нете:
FUSES (с англ.: плавление, пробка, предохранитель) - специальные 4 байта(4*8=32 бит) данных, которые настраивают некоторые глобальные параметры микроконтроллера в процессе прошивки. После прошивки данные биты нельзя изменить через внутреннюю программу что записана в МК.
Данной конфигурацией бит мы указываем микроконтроллеру вот что:
• какой использовать задающий генератор (внешний или внутренний);
• делить частоту генератора на коэффициент или нет;
• использовать ножку сброса (RESET) для сброса или же как дополнительный пин ввода-вывода;
• количество памяти для загрузчика;
• другие настройки зависимо от используемого микроконтроллера.
Вопрос первый:
Правильно ли я понимаю, что FUSES – это и есть залоченность современных МК?
Вопрос второй:
Эти самые FUSES хранятся всё в той же flash-памяти?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2018, 18:45
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Залоченность современных МК (Микроконтроллер):

модели современных процессоров - Процессоры
Какие сейчас существуют модели современных процессоров, и что в них появилось нового

книги о современных микропроцессорах - Микропроцессоры
Не могли бы вы поделиться ссылками или посоветовать книги о современных микропроцессорах.

Скриншот окна в современных ОС - C#
Привет всем! Есть проблема - если делать скриншот окна классическим методом, т.е. FindWindow, GetWindowDC, BitBlt, RelaseWindowDC, то...

Видеокарта для современных игр - Видеокарты
Какая лучше посоветуйте и которая из них станет на мою материнку. Asus P5KPL-AM SE. Если не одна из них не подойдет помогите тогда с...

Нужен ПК для современных игр - Игровой компьютер
Нужен ПК для современных игр. 1. Бюджет - 14.000.000 бел.руб. 2. Задачи и цели использования ПК - современные игры. 3. Будет ли...

О качестве современных DVD приводов - DVD, Blu-ray
Такая ерунда. Два дисковода. Оба DVD. Второй купил потому что первый начал кашлять. На сегодняшний день пользуюсь то одним, то другим....

22
Ethereal
Нарушитель
4513 / 1372 / 183
Регистрация: 17.02.2013
Сообщений: 2,281
12.01.2018, 19:15 #2
Кури вот это : https://www.cl.cam.ac.uk/~sps32/mcu_lock.html ну и все, что там по ссылкам.

Вот тут PDF-кой : http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-630.pdf

Хотя, судя по вопросам, не в коня будет корм.
0
Igor-air
0 / 0 / 0
Регистрация: 23.12.2015
Сообщений: 8
12.01.2018, 19:31  [ТС] #3
А просто ответить на мои 2 вопроса не можете?

Добавлено через 5 минут
В моём случае речь идёт о МК, используемых в бытовой технике - это не оборудование военного назначения и не банковские устройства
0
Ethereal
Нарушитель
4513 / 1372 / 183
Регистрация: 17.02.2013
Сообщений: 2,281
12.01.2018, 19:41 #4
Так Скоробогатов и корчит из себя крутого ученого, научно осветившего вскрытие бытовых микроконтроллеров, на которых никакой защиты и нет. Дескать те, кто до него это делали, делали это не научно. А он статьи в научные журналы пописывает. Он типа ученый из Кембриджа, а те типа были умельцами из деревни Мухосраново.
0
magirus
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
27746 / 15654 / 946
Регистрация: 15.09.2009
Сообщений: 67,839
Записей в блоге: 78
12.01.2018, 19:41 #5
они тем более могут быть одноразового программирования, в виде таблетки на плате, залитой компаундом.
0
Ethereal
Нарушитель
4513 / 1372 / 183
Регистрация: 17.02.2013
Сообщений: 2,281
12.01.2018, 20:00 #6
Цитата Сообщение от Igor-air Посмотреть сообщение
А просто ответить на мои 2 вопроса не можете?
А гуглем воспользоваться тебе впадлу ?
Цитата Сообщение от Igor-air Посмотреть сообщение
Правильно ли я понимаю, что FUSES
Слово FUSES имеет несколько смысловых значений.
Во первых это предохранители. То, что должно перегорать при исключительной ситуации.
Во вторых пережигаемые перемычки. К примеру нихромовые. То, что должно пережигаться для перевода устройства в другое состояние.
Ну а потом кто-то сообразил, что вместо нихромовой пережигаемой перемычки удобно использовать бит EEPROM. Его состояния 1 и 0 соответствуют состояниям перемычки - целая или пережжена. А выгода в том, что нихромовую перемычку можно пережечь только один раз, а бит EEPROM можно электрически стереть и откатить его состояние назад. Ну а название fuses за этим делом так и осталось.

Добавлено через 5 минут
Цитата Сообщение от Igor-air Посмотреть сообщение
Эти самые FUSES хранятся всё в той же flash-памяти?
У всех памперсы, а у нас Хаггис. У всех РППЗУ-ЭС (EEPROM), а у нас FLASH.
0
northener
пофигист широкого профиля
3246 / 2298 / 498
Регистрация: 15.07.2013
Сообщений: 13,554
13.01.2018, 02:00 #7
Цитата Сообщение от Igor-air Посмотреть сообщение
А просто ответить на мои 2 вопроса не можете?
Насколько просто нужно ответить?
Цитата Сообщение от Igor-air Посмотреть сообщение
Есть необходимость научиться обходить защиту (залоченность) современных МК.
Простые ответы тут не помогут.

P.S. Ну и неплохо было бы уточнить что вы подразумеваете под "современными МК". Имя им (современным МК) - легион.
0
Igor-air
0 / 0 / 0
Регистрация: 23.12.2015
Сообщений: 8
13.01.2018, 02:16  [ТС] #8
Ну вот например МК R5F21258SN FP
Кстати, если рассматривать МК стиральных машин - то у них есть две прошивки. В нашей среде их называют дамп и конфиг. Иногда конфиг вынесен на внешнюю микросхему памяти типа 24С64 - это и есть EEPROM. Но всё чаще и дамп, и конфиг засовывают в МК.
P.S. Прошу сильно не пинать - я мало что пока знаю по этой теме

Добавлено через 5 минут
У меня собственно нет задачи получить контроль над работой МК - только считать или залить прошивку - как конфиг, так и дамп
0
ValeryS
Модератор
7023 / 5361 / 531
Регистрация: 14.02.2011
Сообщений: 18,086
13.01.2018, 08:19 #9
Цитата Сообщение от Igor-air Посмотреть сообщение
как конфиг, так и дамп
процессоры могут быть залочены, а может там уже стоит прошитая ПЗУшка масочного типа, которая прописывается(штампуется) при производстве то гораздо дешевле.
Гарвардская архитектура позволят не допускать из вне в область программ
современные локи снять в домашних условиях не получится не стерев всю прошивку, ибо производители не идиоты
раньше из-за косяка архитектуры можно было расшифровать прошивку у AT89C51.
давался сигна на стирание микросхемы и тут же сбрасывался, в результате затирались блокирующие биты
но с 2002 года дырка это закрыта,биты находятся в конце области памяти
Посему иногда самый простой способ это исследование "черного ящика"
подаешь сигнал на микросхему и смотришь на её реакцию, на основании полученных данных пишешь свою прошивку
0
pyzhman
1009 / 450 / 62
Регистрация: 15.05.2012
Сообщений: 2,541
13.01.2018, 08:53 #10
Цитата Сообщение от Igor-air Посмотреть сообщение
В нашей среде
С этого и надо начинать.
Закажите себе универсальную плату управления и прошивку для ремонтируемых агрегатов.
0
Ethereal
Нарушитель
4513 / 1372 / 183
Регистрация: 17.02.2013
Сообщений: 2,281
13.01.2018, 10:34 #11
Цитата Сообщение от Igor-air Посмотреть сообщение
У меня собственно нет задачи получить контроль над работой МК - только считать или залить прошивку
Нет простых способов считать залоченный МК. Стали бы производители МК создавать защиту от считывания, которую легко обойти. Способы есть, но никак не простые.
Тут одно из двух - или ты с головой погружаешься в тему, но это потребует массы времени для исследований, оборудования и таланта или изучаешь прайс-листы фирм, которые считывают залоченные МК за деньги. Но у них все ... в общем денег стоит. Если такие расходы никогда не отобьются, то просто забываешь о самой мысли считать прошивку с закрытого от чтения МК.
0
Igor-air
0 / 0 / 0
Регистрация: 23.12.2015
Сообщений: 8
13.01.2018, 22:36  [ТС] #12
Я выше привёл пример конкретного МК. Можете что-то сказать насчёт его залоченности?

Добавлено через 58 секунд
ПЗУ масочного типа в современной бытовой технике не используются
0
Humanoid
Почетный модератор
9916 / 3819 / 187
Регистрация: 12.06.2008
Сообщений: 11,305
13.01.2018, 23:52 #13
Цитата Сообщение от Igor-air Посмотреть сообщение
Правильно ли я понимаю, что FUSES – это и есть залоченность современных МК?
Я не знаю, что вы понимаете под залоченностью. Если речь идёт о защите от чтения/записи прошивки, то в тех контроллерах, с которыми я работал, это делается записью конфигурационного регистра в специальный раздел Flash-памяти. Например, в STM32 при прошивке можно заблокировать чтение/запись. Но потом при желании попросить контроллер стереть эту конфигурацию, но контроллер перед этим сам вначале очистит всю прошивку. О применении Fuse в обычных микроконтроллерах я не слышал. Скорее всего, их не используют из-за особых требований к программатору.

Цитата Сообщение от Igor-air Посмотреть сообщение
Эти самые FUSES хранятся всё в той же flash-памяти?
Fuse - это перемычки на кристалле, которые пережигаются большим током или напряжением. Никакого отношения к flash-памяти не имеют.
Есть ещё OTP, который является Flash, но без возможности стереть его. Обычная flash-память может менять битики только в одном направлении... например, изначально все биты в единицах, но после записи байта 01010101 часть битов переводится в нули. Но если ещё раз записать другое значение (например 11110000), то мы получим 01010000, т.к. биты могут только переводиться из 1 в 0, но не наоборот. Что бы выставить биты обратно в 1 у Flash-памяти есть операция очистки, которая весь блок данных (в зависимости от конкретной модели памяти размеры блока сильно отличаются... например, 64КБ, 256КБ, 1МБ). После операции очистки можно заново переводить отдельные битики в 0.
Я это всё к тому, что в OTP (в отличии от Flash) нет операции стирания. Битики можно переводить только в одном направлении, но вернуть как было уже не получится.

Отличие OTP от Fuse в том, что для Fuse требуются высокое напряжение или ток для прошивки. А у OTP требования как у обычного flash'а. Fuse обычно используют для базового конфигурирования контроллера: отключение каких-то блоков, отключение части памяти и т.п.
Например, при изготовлении чипа иногда бывают дефекты. Чаще всего бывает повреждена часть оперативной памяти (т.к. она занимает достаточно большую площадь на кристалле). Если при тестировании обнаружилось, что память повреждена, а в контроллере не было заложено функций ремапинга (BISR), то наверняка у многих производителей заложена возможность отключить повреждённую память, путём прожига нужного Fuse и продавать контроллер как другой, у которого заявлено меньше памяти. Для других микросхем Fuse тоже применяются, но для других целей... например Fuse часто используют для точной подгонки выходного напряжения в стабилизаторах.

В OTP обычно хранят настройки для софта: MAC-адреса для сетевых карт, VID/PID для USB, название фирмы и т.п. OTP обычно прошивает уже сам покупатель.
0
northener
пофигист широкого профиля
3246 / 2298 / 498
Регистрация: 15.07.2013
Сообщений: 13,554
14.01.2018, 02:18 #14
Цитата Сообщение от Igor-air Посмотреть сообщение
У меня собственно нет задачи получить контроль над работой МК - только считать или залить прошивку - как конфиг, так и дамп
Ну так обращайтесь к производителю данных устройств/прошивок.
Но считать прошивку вам вряд ли позволят.
0
Ethereal
Нарушитель
4513 / 1372 / 183
Регистрация: 17.02.2013
Сообщений: 2,281
14.01.2018, 02:48 #15
Цитата Сообщение от Igor-air Посмотреть сообщение
Я выше привёл пример конкретного МК. Можете что-то сказать насчёт его залоченности?
Ты наверно на фирму-производителя этого МК работаешь. Если закрытый МК считывается копеечными средствами, то информация о том КАК это делается не бывает паблик. А если засвечивается, то производитель быстро прикрывает лавочку. Как в том-же случае с AT89C51. Какой-то идиот болтанул и производитель тут-же принял меры. И накрылся медным тазом метод.
0
14.01.2018, 02:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2018, 02:48
Привет! Вот еще темы с ответами:

Хватит ли для современных игр? - Игровой компьютер
Привет всем).Я собираюсь брать компьютер в основном для игр,но в пределах 20-24 т.р. Вот нашел такой комп: Процессор INTEL CORE i5...

Апгрейд ПК для современных игр - Апгрейд компьютера
Всем привет, подскажите, пожалуйста, выгодное обновление ПК для современных игр и возможно для IT-работы в будущем. Процессор:...

Качество картинки в современных играх - Видеокарты
Доброго дня ! Сорри за нубство ) Понимаю, что те вопросы, которые я сейчас задам уже тысячи раз задавались, но мне просто в лом искать...

Компьютер для современных игр - Игровой компьютер
Здравствуйте. Вот решил собрать себе комп по мощнее,быстрее, чтобы с современными играми летал. Выбрал: Процессор CPU AMD Phenom II X4...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru