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

Просто внешнее прерывание? Тогда почему у него такое название?

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


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

Просто внешнее прерывание? Тогда почему у него такое название?

 

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

Например в STR912 такое прерывание приводит к стиранию отдельного участка во внутренней RAM.

Средство против хакеров.

Исполняется в виде микрика к крышке блока или микропроводника вокруг залитой компаундом платы и т.д.

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


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

Например в STR912 такое прерывание приводит к стиранию отдельного участка во внутренней RAM.

А что будет сделано автоматически, например, у STM32F103?

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


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

А что будет сделано автоматически, например, у STM32F103?

хм.. а в доке на камень прочитать. Например для 105:

 

6.3.1 Tamper detection
The TAMPER pin generates a Tamper detection event when the pin changes from 0 to 1 or
from 1 to 0 depending on the TPAL bit in the Backup control register (BKP_CR). A tamper
detection event resets all data backup registers.

 

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


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

хм.. а в доке на камень прочитать. Например для 105:

Спасибо (мне пока не было нужды использовать, там хотя бы, то, что нужно изучить!).

И как его приспособить для защиты (уничтожения) прошивки?

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


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

Спасибо (мне пока не было нужды использовать, там хотя бы, то, что нужно изучить!).

И как его приспособить для защиты (уничтожения) прошивки?

Ранее уже написали что по сигналу вскрытия уничтожаются ключи шифрования или цифровая подпись.

Ваша программа должна либо проверить цифровую подпись либо скопировать себя в рам и там расшифровать код.

В таком случае когда ключи уничтожены изделие теряет работоспособность.

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


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

Спасибо (мне пока не было нужды использовать, там хотя бы, то, что нужно изучить!).

И как его приспособить для защиты (уничтожения) прошивки?

дак выше уже писали - заводите на этот пин сигнал с внешнего датчика, кладете в бекап-регистры например ключ для дешифрования прошивки или просто любую сигнатуру

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

 

аналогом алгоритма служит сигнал CaseOpen на системной плате в компьютерном корпусе - открыли корпус, система отработала факт и сообщение ушло сисадмину, который придет и даст в бубен излишне любопытному пользователю..

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


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

дальнейшая диструктивная деятельность вашего изделия зависит от вас. от банальной неработоспособности прошивки устройства (ключи то стерты) до вызова ветки стирания содержимого флеша через подъем графитовых стержней (это теория - я не призываю к практике!)

Отцепил питание от устройства, и пусть STM32 попробует что-нибудь стереть у себя внутри.

Или держать "внутре" здоровенный аккумулятор?

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


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

Отцепил питание от устройства, и пусть STM32 попробует что-нибудь стереть у себя внутри.

Или держать "внутре" здоровенный аккумулятор?

хм.. а доку почитать? о Vbat..

все для того же 105:

They are implemented in the backup domain that remains powered on by VBAT when the
VDD power is switched off. They are not reset when the device wakes up from Standby
mode or by a system reset or power reset.

 

вы с какой стороны баррикад? :)

 

ЗЫ а стереть флеш можно постфактум - либо при очередном включение питания и обнуленном регистре либо влепить типа ионистора (энергии на № секунд) и по факту вторжения тереть хоть один байт флеша, что равносильно непригодности к эксплуатации..

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


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

Отцепил питание от устройства, и пусть STM32 попробует что-нибудь стереть у себя внутри.

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

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


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

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

о том и речь.

 

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

Постфактум поздновато будет, не кажется? Уже прочитали флэш (если смогли, конечно).

Разве что констатировать факт, что устройство уже изучено вдоль и поперек.

Таким же образом можно по прерыванию на любой ножке программно стереть содержимое бэкап-регистров.

В-общем, единственно возможное применение - уничтожаются ключи (занесенные извне в секретной лаборатории), даже если питание отключено и процессор остановлен. После чего устройство работать не будет. Можно, конечно, припугнуть потребителя, откроешь - хана!

 

P.S. Пожалуй, есть способ. Записать зашифрованный код, который декодируется при наличии ключа. Дальше - выполняется (или не выполняется).

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


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

Постфактум поздновато будет, не кажется? Уже прочитали флэш (если смогли, конечно).

Разве что констатировать факт, что устройство уже изучено вдоль и поперек.

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

 

Таким же образом можно по прерыванию на любой ножке программно стереть содержимое бэкап-регистров.

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

 

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


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

батарейка или ионистор).

А можно реально ионистор поставить? И как его запитать, через диодную развязку наверно?

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


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

А можно реально ионистор поставить?
Можно, да, через развязку (это описано в документации).

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


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

Кто каким образом подключает вывод TAMPER?

Хочу поставить нормально разомкнутую кнопку, чтобы при закрытом состоянии корпуса контакты были замкнуты.

Таких кнопок большинство и это кажется более правильным. Еще и ограничение по высоте 5мм.

- После сборки по работоспособности сразу будет видно что в цепи кнопки нет никаких обрывов.

- Не будет ситуации что через пару лет бездействия контакты окислились и цепь не замкнулась при вскрытии.

 

Теперь получается что при закрытом корпусе на вход TAMPER все время будет втекать ток.

Мой контроллер STM32F446.

Втекающий ток вероятно будет равен этому I/O input leakage current и составляет 1 мкА.

Это слишком много, учитывая то что сам RTC будет потреблять не более 2 мкА.

Габариты не велики, хватило места только для CR1220.

Именитые производители заявляют для нее 40 мАч. Мне надо прожить от нее не менее 2 лет.

Для этого нужно потребление не выше 2.2 мкА.

Счет времени мне даже не нужен, достаточно хранить ключи и стирать их при вскрытии. Для семейства L4 заявлено потребление в таком режиме 8 нА.

Пока не понял умеет ли такое F4.

 

Еще было бы неплохо как-то сделать так чтобы батарейка начала работать только у клиента при первом включении.

Корпус водонепроницаемый, пленку под батарейку не затолкать. Вскрывать клиенту запрещено. Данные в backup регистры будет заливать он сам.

Геркон тоже не годится, не исключено наличие магнитных полей у клиента. Случайно может все стереться.

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


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

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

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

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

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

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

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

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

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

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