Страница 1 из 1
Защита прошивки
Добавлено: Вт авг 04, 2009 11:14:38
RVL
Уважаемые, а не подскажете ли как надо выставить галочки в CodeVisionAVR так, чтобы после прошивки мега16 нельзя было эту прошивку считать?
Добавлено: Вт авг 04, 2009 11:15:51
Aiudara
Хорошо бы и JTAG отключить.
Наверно отметить "програмин и верификейшн дисэбл"
Добавлено: Вт авг 04, 2009 12:46:26
VenomXP
Aiudara писал(а):Наверно отметить "програмин и верификейшн дисэбл"
Бред не несите.
Фьюзы: SPIEN, JTAGEN(вроде), а вообще для таких целей есть специальные LockBits.
Добавлено: Вт авг 04, 2009 13:10:26
ibiza11
VenomXP писал(а):Aiudara писал(а):Наверно отметить "програмин и верификейшн дисэбл"
Бред не несите.
Фьюзы: SPIEN, JTAGEN(вроде), а вообще для таких целей есть специальные LockBits.

что все кидаются на человека? сразу "БРЕД"

сами бред не несите! специальные LOckBits это и есть "programming and verification disabled"

Сами разберитесь сначала толком! и на остальных нефиг газовать, пока сами точно не узнаете! а вы "
вроде"!!!
добавлено ibiza11
херово вы свою библию читаете!!!
Добавлено: Вт авг 04, 2009 15:44:51
GP1
VenomXP писал(а):
Фьюзы: SPIEN, JTAGEN(вроде), а вообще для таких целей есть специальные LockBits.
для меги16 SPIEN при последовательном программировании недоступен (см. ДШ)
Добавлено: Вт авг 04, 2009 20:24:03
VenomXP
Признаю свою неправоту и прошу прощения за недостоверную информацию и, возможное, оскорбление.

Добавлено: Вт авг 04, 2009 23:19:27
Aiudara
Вот скриншот установки защиты прошивки в CVAVR ( на фьюзы справа можно не смотреть ).

Добавлено: Ср авг 05, 2009 07:49:14
GP1
Вообщето просили на мегу16

Добавлено: Ср авг 05, 2009 20:48:52
RVL
Спасибо за такое внимание к такому вопросу.
А делается все так:
выбирается опция "Programming and Verification disabled" в групбоксе "FLASH Lock Bits".
Как - показано на рисунке, любезно предоставленном товарищем Aiudara и GP1. НО! Я не ставил никакие Boot Lock Bits! Я оставил их в положении по-умолчанию (=1 =1 =1 =1)! Если их поставить в нижние положения - могут возникнуть проблемы с прерываниями. А по другому - вообще смысла нет, т.к. вроде они запрещают ЗАПИСЬ, а не чтение.
JTAG и так по-умолчанию отключен (галочка не стоит).
Устанавливать SPIEN - отключиться SPI интерфейс и программировать получиться только на палаллельном программаторе (собственно, считать прошивку можно на нем же).
После этого я делал так:
1. Стирал чип (Program->Erase Chip);
2. Заливал прошивку (Program->FLASH) (с проверкой);
3. Ставил фьюзы (Program->Fuse Bits);
4. Ставил локи (Program->LockBits).
Можно, конечно, нажать и "Program All", но по мне - так надежнее вручную. Да и не всегда мне надо заливать в EEPROM.
Если локи ставить перед загрузкой прошивки, то записать в чип по идее уже ничего не получиться толком

Если после всех вышеописанных процедур попытаться считать прошивку, то там будет возрастающий набор чисел.
Параллельный программатор тоже не поможет. Да вообще ничего не поможет, кроме каких-то китайцев, которые знаю какой-то хитрый секрет (в народе говорят).
Снять защиту с чипа можно только полностью стерев его (Program->Erase Chip).
Все выщесказанное проверенно на ATmega16L.
Добавлено: Ср авг 05, 2009 23:05:42
Lonleystranger
Секрет заключается в станке, который побитово снимает структуру чипа EEPROM, т.е. так и снимается программа. От него уже не защитишься

Добавлено: Пн авг 10, 2009 19:38:45
Aheir
Секрет, млин, заключается в умении пользоваться поиском, 1024 раза про все это уже говорили...

Добавлено: Пн авг 10, 2009 21:00:07
Igor_67
А по мне, так тут вообще никаких секретов нет. Если лок-биты установлены (оба), то все читается FF. Естественно, записываться тоже не будет, т.к. сначала надо ERASE CHIP сделать, но это, кстати, при любых лок-битах. Если лок-биты сняты, то все читается и сравнивается ОК!
Секрет заключается в станке, который побитово снимает структуру чипа EEPROM
Да вы шо?! И покажите мне тот станок!
Я его у вас даже за 500 баксов куплю!
Если установлены локи, никакой станок, и даже прокатный стан не поможет. Производители МК, идиоты, по-вашему?
Добавлено: Пн авг 10, 2009 21:13:06
GP1
RVL писал(а):... Я оставил их в положении по-умолчанию (=1 =1 =1 =1)! Если их поставить в нижние положения - могут возникнуть проблемы с прерываниями.
...
JTAG и так по-умолчанию отключен (галочка не стоит).

Добавлено: Пн авг 10, 2009 21:43:01
NiTr0
Igor_67 писал(а):Я его у вас даже за 500 баксов куплю!
Дык кто угодно его за 500 баксов бы купил.. т.к. стоит он намного дороже

Советую почитать
http://www.cl.cam.ac.uk/TechReports/UCAM-CL-TR-630.pdf
Добавлено: Пн авг 10, 2009 21:49:26
ARV
мне кажется, слухи о ценности таких станков и вообще технологии считывания закрытых чипов (а именно МК) сильно преувеличены. в современном мире гораздо проще и дешевле нанять кого-то, кто напишет полный аналог прошивки для конкретного девайса с нуля, без всякого взлома. я еще понимаю - снять топологию ПЛИС или памяти с аппаратным шифрованием, но программу МК?! это не актуально, имхо. особенно МК класса AVR
Добавлено: Пн авг 10, 2009 22:10:24
NiTr0
Как вариант - МК имеет внутри помимо всего прочего некий криптоалгоритм, неизвестный и ресурсоемкий, и по этой причине - практически неломаемый без вмешательства вовнутрь. И при этом работает в составе дорогого и пользующегося спросом АПК.
Добавлено: Пн авг 10, 2009 22:57:20
Yellow Tiger
Igor_67 писал(а):Да вы шо?! И покажите мне тот станок! Я его у вас даже за 500 баксов куплю!
Станки такие действительно существуют - сродни тем, с помощью которых производились цельнотянутые "аналоги" i8086, так что ирония эта - мимо кассы абсолютно. Производители м/к не идиоты, просто против лома нет приема - "что одн человек сделал, другой - завсегда сломать может". Да и кроме таких станков, есть другие методы - там уже давно не так примитивно все. А купить такое за 500 баксов не удастся. Полагаю, и за 500 штук баксов - тоже не удалось бы.
ARV писал(а):...в современном мире гораздо проще и дешевле нанять кого-то, кто напишет полный аналог прошивки ...
Тема разумеется не ограничивается контроллерами от Атмела.

А задача эта существует и в современном мире, так как далеко не всегда "проще и дешевле нанять кого-то" - алгоритм сам по себе может быть тем секретом, который скрывают за локбитами, а доход от владения таким секретом м.б. достаточно высок; при одновременном выполнении этих условий может оказаться, что взлом, даже несмотря на чрезвычайно высокие расценки, экономически оправдан - вот тогда-то и зовут на помощь этих умельцев. И приведенные Вами в пример системы шифрования - очень подходящая иллюстрация, так как секреты такого уровня, на котором используется аппаратное шифрование, дешевыми бывают чрезвычайно редко.

Добавлено: Пн авг 10, 2009 23:06:02
NiTr0
Yellow Tiger писал(а):Полагаю, и за 500 штук баксов - тоже не удалось бы.

Пройдите по ссылке - новый станок для, как я понял, напыления/удаления слоев (вплоть до восстановления чипа) с разрешением 100нм, стоит 500к евро, б/у - 40к евро. Час работы на нем - 200 евро. Станки для подключения к оголенным контактным площадкам чипов с "толстым" техпроцессом - до 5к евро б/у.