misyachniy 0 10 сентября, 2017 Опубликовано 10 сентября, 2017 · Жалоба Попросили изготовить макет платформы для Cortex A5. Без ОС, весь проект должен быть в TrustZone Нужно обеспечить недоступность вскрытия прошивки как при изготовлении так и при обновлении. При обновлении решения очевидно есть и пока я их не рассматриваю. Есть вопросы по изготовлению. Тут : https://www.arm.com/products/security-on-arm/trustzone предлагают исходники и говориться о трех документах TBSA, TBBR, TZMP которые можно получить по запросу. Подозреваю начнется канитель c получением документов в виде "фейсконтроль" , NDA и т.д. Это не решаемо, но нужно побыстрее нарисовать схему, изготовить плату, распаять ее. Есть ли где эти документы в свободном доступе?. Или может есть документ/статья о том, как и в какой момент в готовой плате прошивать ПЗУ (NOR, с интерфейсом QSPI, I2C) чтобы обеспечивать безопасность при производстве? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kabdim 0 10 сентября, 2017 Опубликовано 10 сентября, 2017 · Жалоба Афаик без НДА никак. Для программирования должно быть достаточно jtag. На производстве всё равно где-то нужно залить секретный ключ/подпись, поэтому производство как минимум частично должно быть доверенным: белая комната, сертификаты, etc. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 10 сентября, 2017 Опубликовано 10 сентября, 2017 · Жалоба Нужно обеспечить недоступность вскрытия прошивки как при изготовлении так и при обновлении. При обновлении решения очевидно есть и пока я их не рассматриваю. Что-то я не догоняю, причем тут TZ?? В случае фрисковских камней (IMX6,7 Vybrid) Для этого используется специальный загрузчик HAB. Прога подписывается и опционально шифруется, вот и все... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
misyachniy 0 11 сентября, 2017 Опубликовано 11 сентября, 2017 · Жалоба Что-то я не догоняю, причем тут TZ?? В случае фрисковских камней (IMX6,7 Vybrid) Для этого используется специальный загрузчик HAB. Прога подписывается и опционально шифруется, вот и все... При том, что код/ключ могут "утащить" на этапе изготовления устройства. Задача состоит не в том, чтобы ПО проверялось на аутентичность при записи в устройство, а в том чтобы нельзя было скопировать устройство. Хорошо если в плату не нужно ничего добавлять для защиты тогда можно спокойно проектировать/изготавливать плату, и параллельно вести переписку. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 11 сентября, 2017 Опубликовано 11 сентября, 2017 (изменено) · Жалоба При том, что код/ключ могут "утащить" на этапе изготовления устройства. Если устройство нужно прошивать при изготовлении, то ключи все-равно у кого-то будут, и если он может их "украсть", то ничего ему не помешает. По крайне мере, я не знаю способов чтоб от этого защититься. Хорошо если в плату не нужно ничего добавлять для защиты В плату ничего добавлять не нужно - ключи хранятся в однократно программируемой памяти внутри МК. Насколько я понимаю сущность TZ, так это чтоб уже после запуска программы, и инициализации защиты определенной области памяти, никто другой не смог туда обратиться и считать данные. Изменено 11 сентября, 2017 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
misyachniy 0 11 сентября, 2017 Опубликовано 11 сентября, 2017 · Жалоба Если устройство нужно прошивать при изготовлении, то ключи все-равно у кого-то будут, и если он может их "украсть", то ничего ему не помешает. По крайне мере, я не знаю способов чтоб от этого защититься. В плату ничего добавлять не нужно - ключи хранятся в однократно программируемой памяти внутри МК. Насколько я понимаю сущность TZ, так это чтоб уже после запуска программы, и инициализации защиты определенной области памяти, никто другой не смог туда обратиться и считать данные. TZ должна обеспечить полную защиту. Что же это за защита, если можно 1)Cпаять ПЗУ со штатным ПО. 2)Подпаять ПЗУ которое считывает ключ и выдает наружу. Читая документацию на процессор я понял что защита полная. При прошивке бит защиты JTAG отключен, при загрузке с внешней ПЗУ происходит декриптование. Данные во внешнем ОЗУ тоже криптованы. Ладно, будем считать что дополнительно в плату вводить ничего не нужно, получим железо и документы, разберемся. P.S. По поводу не возможности помешать украсть ключи спорить не буду. Обычно народ не расказывает на каждом углу как происходит защита. Я был на заводе где банковские и SIM карточки авторизуют. Происходит этот процесс без участия человека. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 11 сентября, 2017 Опубликовано 11 сентября, 2017 · Жалоба Что же это за защита, если можно 1)Cпаять ПЗУ со штатным ПО. 2)Подпаять ПЗУ которое считывает ключ и выдает наружу. Интересно, это в каком проце так можно? В смысле запустить какую-то прогу с левого ПЗУ? Неподписанную прогу проц не запустит просто, след. она не считает ключи. Я был на заводе где банковские и SIM карточки авторизуют. Происходит этот процесс без участия человека. Так-то правильно, но эти автоматы тоже обслуживает человек... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
misyachniy 0 12 сентября, 2017 Опубликовано 12 сентября, 2017 · Жалоба Интересно, это в каком проце так можно? В смысле запустить какую-то прогу с левого ПЗУ? Неподписанную прогу проц не запустит просто, след. она не считает ключи. В том, котором такой механизм защиты: Насколько я понимаю сущность TZ, так это чтоб уже после запуска программы, и инициализации защиты определенной области памяти, Подкидываю свою программу, считываю ключи и вперед. Процессор должен стартовать со всеми включенными защитами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 12 сентября, 2017 Опубликовано 12 сентября, 2017 · Жалоба Подкидываю свою программу, считываю ключи и вперед. Процессор должен стартовать со всеми включенными защитами. По моему мы о разных вещах говорим... Что за процессор, чтоб быть объективным? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
misyachniy 0 12 сентября, 2017 Опубликовано 12 сентября, 2017 · Жалоба По моему мы о разных вещах говорим... Что за процессор, чтоб быть объективным? Мы говорим о двух аспектах. Защита от взлома программы и защита от несанкционированного обновления. http://www.atmel.com/products/microcontrol....aspx?tab=tools Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться