Вот пример как это сделать: http://chipmaker.com.ua/index.php?/...установленную-прошивку-с-arduino-atmega-2560/ Это если не установлена защита от извлечения кода. Если защита установлена, то нужны хакерские приспособы, но есть вероятность убить ардуину. Вот пример: https://habr.com/ru/company/ntc-vulkan/blog/483732/ Естественно, вытащенный код будет обычным бинарным файлом. Его можно дизассемблировать или декомпилировать, но оригинальный вид программы вы уже не получите.
Вам виднее, ставили ли вы защиту при прошивке. Если обычными методами прошивка не извлекается, значит защита есть.
Если локбиты установлены то код не считать. Мы тут уже пробовали пару лет назад. Я проводил эксперимент. Читается НЕХ код но это фуфло. И от оригинального очень сильно отличается
посмотреть на конфигурацию установленных фьюзов. Но даже если вытащишь бинарник (или hex), то дальше что? Там содержатся данные и машинные команды. Его можно дизассемблировать. Но чтобы прочитать получившийся код, необходимо владеть на 101% ассемблером.
Что за эксперименты ? Не могли бы выложить ссылки на эту тему ? Если хоть что-то путное - это уже точка опоры. С уважением.
точка опоры для чего? Прочитать залоченную прошивку? Сказано же - не получится. Программатор выдаёт шум. Народ на форумах говорит, что если прошивка уж очень ценная, то вскрывают кристалл и под микроскопом как-то высматривают область flash памяти. Но основной метод защиты прошивки от дизасма сегодня - шифрование. Где-то на хабре была целая статья.
Ничего интересного и путного. Спорили можно ли считать лоченый кристал или нет. Заливал Blink в Мегу8. Считывал. Потом лочил и считывал еще раз. Сравнивал 3 НЕХ файла. 1-прошитый.2-считаный с незалоченого кристалла.3-считаный с лоченого кристалла. Первые два-идентичные а последний отличается. И причем random пихает где то в середину. Поищу если интересно.
Дизасм был моим любимым хобби лет 30 назад. Любой зашифрованный код, если его читает серийный процессор, имеет в начале нормальный вменяемый участок кода для раскодирования остального. Задача только понять его. Это в любом случае будет проще чем воевать с лок-битами.
и как тебе это поможет? Ключ знает только загрузчик, который залочен в кристалле (а может даже вшит на заводе в область памяти без доступа к ней снаружи) и ты. Методом тупого перебора - ну, можно. Расшифровал, дизасм, понял, что чушь; следующий бит в ключи и так по кругу. Лет через пять что-то получится. Но к тому времени потеряет актуальность.