Как работает эта защита прошивки ПЛИС Altera? Я в шоке...

Программируемая логика - это не так уж и сложно. Разберемся вместе.
Аватара пользователя
РадиоЛоматель
Мудрый кот
Сообщения: 1733
Зарегистрирован: Чт авг 21, 2008 22:03:30
Откуда: Одесса(Украина)
Контактная информация:

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение РадиоЛоматель »

Shagrat писал(а):Может отвечу и позновато...

С первого поста хотел написать, что, возможно, вход/выход меняется местами периодически, но меня опередили.
ПС. А где раньше была тема? Каждый день захожу в эту ветку, но раньше её не видел.
(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Реклама
Shagrat
Родился
Сообщения: 5
Зарегистрирован: Пт сен 13, 2013 20:38:01

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение Shagrat »

А тут она и была... в самом низу страницы.
А защита такая и вправду прикольная.. Если алгоритм незнаешь, то взломать практически нереально. Заметить разницу в несколько наносекунд в импульсах секундной длительности сложно... да и сами эти импульсы можно специально по продолжительности "пошимить" маленько.
Я пробовал такое взломать. Принцип угадал почти сразу, а что толку? :)
Реклама
Аватара пользователя
NemesiS2014
Нашел транзистор. Понюхал.
Сообщения: 161
Зарегистрирован: Вс сен 29, 2013 21:14:20

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение NemesiS2014 »

А может данные пробегают только в момент включения а дальше идут штатные импульсы WDT? :idea:
pwd
Родился
Сообщения: 1
Зарегистрирован: Пн фев 11, 2013 13:37:18

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение pwd »

Shagrat писал(а): ... то что выход перестал быть выходом, а стал входом маскируется оч просто, ну кто заметит, что вход посмотрел, на наличие сигнала - определил его отсутствие - и тут же снова стал выходом? и все это на импульсе длинной в пол-секунды! обычные приборы пока еще не научились определять какая из лапок сигнал выдает :)

Об этом можно просто не догадаться, но отследить не сложно. Как писал автор топика, он включал логику между выходом одной микросхемы и входом другой - все работало. Но это пример исключает подмену входа и выхода.
А отловить подобную подмену очень легко при помощи обычной логики. Куда сложнее понять алгоритм.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
DX168B
Друг Кота
Сообщения: 4468
Зарегистрирован: Вс янв 24, 2010 19:19:52
Откуда: Главный Улей России (Moscow)
Контактная информация:

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение DX168B »

Извиняюсь, что совсем поздно пишу в эту тему. Но помоему это никакая не защита от копирования. Это просто такой ватчдог для
защиты от зависаний. А у вас просто ATTIN13 не синхронизирована по времени с ПЛИСиной. Ну, например, при поступлении фронта от ПЛИС в МК, нужно сбросить таймер на МК и по истечению времени выдать фронт в сторону ПЛИС. А так, у Вас МК и ПЛИС тактируются от разных генераторов и время от времени будет происходить рассинхрон по фронтам, что и приводит к сбросу.
I am DX168B and this is my favourite forum on internet!
Реклама
Аватара пользователя
musor
Друг Кота
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение musor »

И 100ЛЕТ НЕ ПРОШЛО А ВОЗ НЫНЕ В БОЛОТЕ..
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Реклама
Аватара пользователя
QRP
Открыл глаза
Сообщения: 54
Зарегистрирован: Вс июл 07, 2019 04:29:09

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение QRP »

тини может просто передавать данные идентификации при инициализации, как писал автор данные при включении бегают. А дальше ПЛИС просто определяет фейк и включает режим защиты. Но чтобы обойти было сложней, ПЛИС отключается не сразу, а какое-то случайное время продолжает работать. Это затрудняет задачу взламывателю подобрать идентификацию, т.к. для тестирования любого варианта прийдётся ждать очень много времени, чтобы убедиться что контроллер был опознан :)

Это стандартный способ, называется плавающая защита. Смысл в том, что проверка происходит неявно и сразу не приводит к срабатыванию защиты, где-то в памяти делается отметка, которая в будущем при выполнении какогото кода приведёт к крэшу. Это задержка между детекцией подмены и срабатыванием защиты может составлять дни, месяцы и годы. :)
Vasily_A
Родился
Сообщения: 1
Зарегистрирован: Пн янв 08, 2018 14:32:27

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение Vasily_A »

давно читал этот детектив... надеялся на развязку, а нет :(
.
предположение - с оригинальной тинькой стартануть, потом переключиться на ходу на вторую, в которой голый вачдог самописный (просто хоть тумблером переключиться, между импульсами). что получится?
Аватара пользователя
DX168B
Друг Кота
Сообщения: 4468
Зарегистрирован: Вс янв 24, 2010 19:19:52
Откуда: Главный Улей России (Moscow)
Контактная информация:

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение DX168B »

[uquote="QRP",url="/forum/viewtopic.php?p=3684520#p3684520"]тини может просто передавать данные идентификации при инициализации, как писал автор данные при включении бегают. А дальше ПЛИС просто определяет фейк и включает режим защиты. Но чтобы обойти было сложней, ПЛИС отключается не сразу, а какое-то случайное время продолжает работать. Это затрудняет задачу взламывателю подобрать идентификацию, т.к. для тестирования любого варианта прийдётся ждать очень много времени, чтобы убедиться что контроллер был опознан :)

Это стандартный способ, называется плавающая защита. Смысл в том, что проверка происходит неявно и сразу не приводит к срабатыванию защиты, где-то в памяти делается отметка, которая в будущем при выполнении какогото кода приведёт к крэшу. Это задержка между детекцией подмены и срабатыванием защиты может составлять дни, месяцы и годы. :)[/uquote]
Все может быть.
Я бы спрятал передачу данных в фазах сигналов между линиями MCU->FPGA и FPGA->MCU.
То есть, допустим, FPGA генерирует фронт, МК через некоторую маленькую задержку тоже выдает фронт.
В величине этой, вроде бы банальной задержки реакции, можно уже закодировать бит информации.
В FPGA задержка считается счетчиком, который стартует вместе с выходным фронтом, а замораживается по приходу фронта от МК. От того, что он насчитал в этом интервале, можно выделить передаваемую от МК информацию.
I am DX168B and this is my favourite forum on internet!
Аватара пользователя
astrahard
Это не хвост, это антенна
Сообщения: 1405
Зарегистрирован: Чт фев 19, 2015 12:41:04

Re: Как работает эта защита прошивки ПЛИС Altera? Я в шоке..

Сообщение astrahard »

Гадать что пришло в голову разработчику? Может на кофейной гуще погадать лучше будет. Хотя, мысли начинающих и собак сходятся.
"Every profession is a conspiracy against the uninitiated" (B. Shaw)
"A textbook can be defined as a book unsuitable for reading" (B. Shaw)
Tautology is humor in "this" place (Vigo Carpathian)
Ответить

Вернуться в «ПЛИС»