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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Можно ли привязать прошивку под железо- AVR ?
D&M
сообщение Nov 27 2009, 07:05
Сообщение #1





Группа: Участник
Сообщений: 13
Регистрация: 24-10-09
Пользователь №: 53 179



В прогах на комп можно программу привязать под конкретное железо,например на сетевую карту, можно ли такое сделать для AVR контроллера, есть ли у них записанный серийник или другой номер,если-да,то как прочитать?
Go to the top of the page
 
+Quote Post
Spider
сообщение Nov 27 2009, 07:14
Сообщение #2


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Цитата(D&M @ Nov 27 2009, 13:05) *
В прогах на комп можно программу привязать под конкретное железо,например на сетевую карту, можно ли такое сделать для AVR контроллера, есть ли у них записанный серийник или другой номер,если-да,то как прочитать?
Помоему нет. А зачем? Запиши в ЕЕПРОМ свой серийник и фьюзами запротекть его. Воля.
Go to the top of the page
 
+Quote Post
V_G
сообщение Nov 27 2009, 07:17
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Есть в xmege, есть в FT232, если общаетесь через USB

В простой меге можете в ЕЕPROM записать серийник. Или в память программ. Заведите специальную команду в интерфейсе и читайте на здоровье.
Я во всех программах делаю такую строку:
Version:
.DB __DAY__,__MONTH__,__YEAR__,__HOUR__,__MINUTE__,__SECOND__ ;версия ПО

В это место AVRStudio автоматом пишет дату и время компиляции, есть специальная команда, читающая эти данные и передающая по компорту.

Или проблема глубже и что-то не понимаю?
Go to the top of the page
 
+Quote Post
D&M
сообщение Nov 27 2009, 07:27
Сообщение #4





Группа: Участник
Сообщений: 13
Регистрация: 24-10-09
Пользователь №: 53 179



идея была такая-я даю по инету человеку прошивку, чтобы прошивка работала только на одном контроллере

Вот программа AVR-PROG читает с мк -Device signature - 1E 94 03, я думал,может это номер мк

Сообщение отредактировал D&M - Nov 27 2009, 07:22
Go to the top of the page
 
+Quote Post
MSprut
сообщение Nov 27 2009, 07:35
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 225
Регистрация: 25-04-06
Из: Украина, Луганск
Пользователь №: 16 476



Это номер модели микроконтроллера, т.е допустим для всех мега8 он будет одинаковым.
Go to the top of the page
 
+Quote Post
Spider
сообщение Nov 27 2009, 07:37
Сообщение #6


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Цитата(D&M @ Nov 27 2009, 13:27) *
идея была такая-я даю по инету человеку прошивку, чтобы прошивка работала только на одном контроллере

Вот программа AVR-PROG читает с мк -Device signature - 1E 94 03, я думал,может это номер мк

Это код устройства. Для всех процессоров данного типа он будет одинаковый. Видать у тебя ATMega16
Go to the top of the page
 
+Quote Post
V_G
сообщение Nov 27 2009, 08:11
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Пишите свой бутлоадер, проверяющий какой-нибудь код в Application section.
Естественно, у каждого бутлоадера (защищенного от чтения и записи) будет свой индивидуальный номер. Бутлоадер считывает его, считывает соотв. код из присланной прошивки (в Application) и при несовпадении просто останавливает работу.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 27 2009, 10:27
Сообщение #8


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Помимо сигнатуры многие МК архитектуры AVR имеют уникальный серийный номер (Unique Serial Number). Хранится он рядом с сигнатурой, и достается похожими командами.
Вот, например, выдержка из даташита на AT90USB647:

Table 28-6. Signature Row Addressing
Signature Byte Z-Pointer Address
Device Signature Byte 1 0x0000
Device Signature Byte 2 0x0002
Device Signature Byte 3 0x0004
RC Oscillator Calibration Byte 0x0001
Unique Serial Number From 0x000E to 0x0018

Там много знаков - целых 10 байт!
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Nov 27 2009, 10:37
Сообщение #9


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



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


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
arttab
сообщение Nov 27 2009, 14:07
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371



если высылается прошивка, то защита только от "дурака".
высылать надо либо прошитые мк или с прошитым загрузчиком (если разные программы пребуются).


--------------------
OrCAD, Altium,IAR, AVR....
Go to the top of the page
 
+Quote Post
V_G
сообщение Nov 27 2009, 14:35
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



А что, есть еще наивные люди, высылающие нешифрованные прошивки? Я когда советовал писать бутлоадер, по умолчанию подразумевал, что он должен быть дешифрующим. Тогда хоть обдизассемблируйся, никаких серийников не вытащишь
Go to the top of the page
 
+Quote Post
D&M
сообщение Nov 27 2009, 19:42
Сообщение #12





Группа: Участник
Сообщений: 13
Регистрация: 24-10-09
Пользователь №: 53 179



Я думал-удалили, оказывается тему сюда перенесли. Похоже, другого способа,чем отправить залоченный мк нет, бутлоадер же тоже сначала зашить надо в мк и отправить сам мк, тогда какой смысл затеи.
Go to the top of the page
 
+Quote Post
V_G
сообщение Nov 27 2009, 23:51
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Ага, проблема повернулась другим боком...
Тогда писать собственный софт к какому-либо известному программатору, имеющемуся у клиента. И в него положить зашифрованную прошивку с ключом в виде серийника. Имеет смысл, если уже есть наработки и готовые решения, и надо добавить лишь шифрование. В противном случае все-таки контроллер выслать проще и дешевле.
Go to the top of the page
 
+Quote Post
D&M
сообщение Nov 28 2009, 04:29
Сообщение #14





Группа: Участник
Сообщений: 13
Регистрация: 24-10-09
Пользователь №: 53 179



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

Блин,не пойдет,эти ключи можно клонировать.

Сообщение отредактировал D&M - Nov 28 2009, 05:21
Go to the top of the page
 
+Quote Post
Mitek
сообщение Mar 23 2010, 20:31
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 54
Регистрация: 12-06-06
Пользователь №: 17 988



D&M
Есть простой метод, но основан на доверии.
Клиенту нужен прошитый проц с вашей прошивкой, но он далеко(почта идёт на оленях) и т.д.
Но у клиента есть инет+программатор+проц , а у вас есть инет + ваша прошивка.
Клиент настраивает обычного или продвинутого пользователя на своём компе, настраивает ему удаленный рабочий стол
и вы удаленно заходите по инету на комп клиента использую его программатор + свою прошивку закрытую заливаете удаленно её в его проц. Всё.
Если клиент не поставит логеров или сниферов, али анализаторов , то и прошивку не получит в чистом виде.
Хотя впн + шифрование может помочь.
Go to the top of the page
 
+Quote Post
x736C
сообщение Mar 23 2010, 23:25
Сообщение #16


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Цитата(V_G @ Nov 27 2009, 17:35) *
А что, есть еще наивные люди, высылающие нешифрованные прошивки? Я когда советовал писать бутлоадер, по умолчанию подразумевал, что он должен быть дешифрующим. Тогда хоть обдизассемблируйся, никаких серийников не вытащишь

Может, не до конца понимаю технологию. Что мешает залить туда прошивку, читатающую бутлоадер, и дизассемблировать его для начала, потом прошивку? (навеял aaarrr)

По всей видимости это все же нереально.

Сообщение отредактировал x736C - Mar 23 2010, 22:53
Go to the top of the page
 
+Quote Post
Александр Куличо...
сообщение Mar 24 2010, 02:26
Сообщение #17


Местный
***

Группа: Свой
Сообщений: 256
Регистрация: 6-03-06
Из: Украина, г. Винница
Пользователь №: 15 017



мешает бит защиты чтения из секции бутлоалера. Да и для начала нужно знать ключ шифрования, чтобы бутлоадер позволил залить эту самую "читающую" прошивку.
Go to the top of the page
 
+Quote Post

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

 


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


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