Перейти к содержанию
    

Защита программы от несанкционированного распространения

 

 

Есть открытые библиотеки для работы с программатором, пишите на их основе свой загрузчик, который зашивает вашу прошивку, считает количество заливок и отправляет вам по интрнету.

конечно можно взломать, если успеет вытащить процеcсор до пережигания jtag, либо подать более низкое напряжение чтобы он не смог пережечь jtag

 

можно тоже самое сделать через bootloader, предварительно проверить убит ли jtag

 

Погодите-ка... Получается, после распаковки в устройстве заказчика будет находится работоспособная прошивка. С условием того, что JTAG у него рабочий, что мешает ему скопировать эту прошивку и заливать ее уже без моего участия? Не пойдет так!

 

Но Ваше предложение об устройстве, заливающем прошивку, родило следующую идею. Можно изготовить устройство-загрузчик на основе лишь одного МК без микросхемы памяти. В этом МК будет хранится прошивка для заливки и загрузчик. Фьюз JTAG у этого МК должен быть пережжен. Заказчик, получив от меня устройство-загрузчик по обычной почте, подключает его к своему целевому МК. Что важно, подключение будет осуществлено по JTAG. После физического подключения, заказчик нажимает на устройстве-загрузчике кнопку, в результате чего оно начинает копировать в целевой МК прошивку. После завершения копирования, устройство-загрузчик прожигает фьюз целевого МК, а так же стирает собственную память. В результате у заказчика остается работоспособное устройство с моей прошивкой, но с невозможностью сделать копию, а так же мое устройство-загрузчик, которое уже не способно что-либо загрузить. Его он мне отсылает назад. Я через BSL загружаю в него прошивку и загрузчик и снова готов отправить ее для заливки.

Вопрос: как осуществить "общение" по JTAG порту? Где взять протокол обмена?

 

вот это устройство

http://www.ti.com/tool/msp-gang

 

наверно уже можно прямо на нем сделать однократную прошивку

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Бутлоадер - это программа в МК, которая может обновить проц? Если так, то как бутлоадер проверит, что JTAG пережжен?

 

 

Изменено пользователем d7d1cd

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Бутлоадер - это программа в МК, которая может обновить проц? Если так, то как бутлоадер проверит, что JTAG пережжен?

 

если не ошибаюсь в бутлоадере есть такая функция,

если нет, то это можно проверить аппаратно (если есть доступ к jtag)

 

 

сколько планируется прошивать штук? единичные количества или как?

чем плоха почта? нельзя выпаивать ?

обновления версии планируется?

 

 

можно отправлять с уже прошитым своим бутлоадером, который принимает шифрованный образ и имеет свой серийный номер

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сколько работаю с MSP430, никогда нигде не видел, что можно программно определить, прожжен фьюз или нет. Думаю, что это в принципе невозможо сделать "изнутри" проца.

Сколько будет прошиваться устройств не знаю. Может одно-два, может 100-200.

Выпаивать нельзя.

Обновление чего? Заливаемой прошивки? Да, планируется, но уже через интерфейс связи.

 

Если бы программно можно было определить состояние фьюза JTAG, то решение моей задачи было бы очень простым. :05:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

как добавить уникальности

 

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

 

все вышеперчисленное меняеться от времени и температуры, но если запрос уникальности, формирование образа, прошивки и проверки делать автоматически и быстро, то за столь короткое время не успеет измениться.

 

Сколько работаю с MSP430, никогда нигде не видел, что можно программно определить, прожжен фьюз или нет. Думаю, что это в принципе невозможо сделать "изнутри" проца.

 

не знаю, спорить не буду,

 

fuse можно проверить Jtag программатором, но лучше чтобы он сам его и прожигал

 

JTAG fuse check mode

MSP430 devices that have the fuse on the TDI terminal have a fuse check mode that tests the continuity of the

fuse the first time the JTAG port is accessed after a power-on reset (POR). When activated, a fuse check current,

I TF , of 1 mA at 3 V, 2.5 mA at 5 V can flow from the TDI pin to ground if the fuse is not burned. Care must be

taken to avoid accidentally activating the fuse check mode and increasing overall system power consumption.

Activation of the fuse check mode occurs with the first negative edge on the TMS pin after power up or if the

TMS is being held low during power up. The second positive edge on the TMS pin deactivates the fuse check

mode. After deactivation, the fuse check mode remains inactive until another POR occurs. After each POR the

fuse check mode has the potential to be activated.

The fuse check current will only flow when the fuse check mode is active and the TMS pin is in a low state (see

Figure 18). Therefore, the additional current flow can be prevented by holding the TMS pin high (default

condition).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

все вышеперчисленное меняеться от времени и температуры, но если запрос уникальности, формирование образа, прошивки и проверки делать автоматически и быстро, то за столь короткое время не успеет измениться.

Прошивка должна будет "всю жизнь" проверять эти параметры. А так как они могут измениться, то и работа прекратится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошивка должна будет "всю жизнь" проверять эти параметры. А так как они могут измениться, то и работа прекратится.

 

нет, только однократно при старте

 

если нужен серийный номер для дальнейшей работы, то его можно сформировать (случайнный, последовательный и хэш) при старте и передать программатору , ну и сохранить у себя

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...