В микроконтроллерах RH850 есть 2 типа IP-адресов безопасности: ICU-S и ICU-M. В этой статье мы расскажем о том, как обеспечивается безопасная загрузка на обоих типах устройств.
Безопасная загрузка в ICU-S и ICU-M может быть реализована на основе спецификации HIS (теперь AUTOSAR) Secure Hardware Extension (SHE). Если вы хотите получить более подробную информацию о спецификации SHE, пожалуйста, обратитесь к AUTOSAR SHE (URL: Спецификация защищенных аппаратных расширений (autosar.org)). Каждый может ознакомиться со спецификацией SHE на сайте AUTOSAR SHE.

Программное обеспечение безопасности работает на главном процессорном элементе (MainPE) в микроконтроллерах ICU-S. MainPE может использовать аппаратные ресурсы модуля ICU-S, такие как криптографические ускорители и защищенное хранилище ключей, через специальный интерфейс регистрации функций ICU.
В ICU-S нет специального процессора, предназначенного только для обеспечения безопасности. Безопасная загрузка выполняется с незащищенного процессора (PE1). Для предотвращения несанкционированного доступа исходная логика безопасной загрузки хранится в памяти одноразовой программы (OTP). Вектор сброса должен указывать на этот неизменяемый код для предотвращения несанкционированного доступа. Наряду с протоколом OTP, secure boot на устройствах ICUS использует MAC-ключ secure boot и MAC-слоты secure boot, защищенные в ICUS. В рамках этой стратегии OTP-память и ICU создают основу доверия.
ICU-S - это интеллектуальный криптографический модуль, эквивалентный EVITA light.
Краткое описание метода:
Пример поэтапной безопасной загрузки с использованием ICUS на RH850:
ICU-M - это интеллектуальный криптографический модуль Renesas, соответствующий стандарту EVITA medium.
Микроконтроллеры, оснащенные ICU-M, оснащены отдельным процессором ICU-M, который называется Intelligence Cryptographic Unit Processor (ICUP). Программное обеспечение для обеспечения безопасности полностью работает на ICUP. ICUP имеет эксклюзивный доступ к аппаратным ресурсам ICU-M, таким как криптографические ускорители и защищенная флэш-память. Кроме того, ICUP может получить доступ к некоторым общим ресурсам для связи с основным процессорным элементом (MainPE).
Прикладное программное обеспечение, работающее на главном компьютере, не может напрямую обращаться к ресурсам ICU-M, таким как криптографические ускорители и secure flash. Поэтому главный компьютер должен запрашивать службы безопасности у ICUP через определенный интерфейс связи. Этот интерфейс определяется встроенным ПО ICUM. Микроконтроллеры с поддержкой ICUM поддерживают межпроцессорную связь через почтовые ящики с общей памятью, а также межпроцессорные прерывания.

На устройствах с ICUM безопасная загрузка выполняется из secure ICUP. Исходная логика безопасной загрузки хранится в хранилище защищенного кода, доступном только ICU-M. Реализация безопасной загрузки проверяет приложение с помощью ключа безопасной загрузки, хранящегося в защищенной флэш-памяти ICUM. Ключ безопасной загрузки и ICUM образуют аппаратный “Корень доверия”. После перезагрузки ICUP запускается первым и выполняет безопасную загрузку прикладного программного обеспечения. После проверки ICUP выводит другие процессорные элементы микроконтроллера из состояния сброса и начинает работу. Как упоминалось ранее, доступ к аппаратным ресурсам ICU-M, таким как криптографические ускорители и защищенная флэш-память, предоставляется исключительно ICUP.
Краткое описание метода:
Пример поэтапной безопасной загрузки с использованием ICUM в микроконтроллере RH850 (асимметричные алгоритмы)
Таким образом, невозможно внести изменения в память микроконтроллера, разблокировав и перезаписывая секторы памяти OPBT0 и Dflash2.
Ключи доверия рассинхронизируются и ICU заблокирует микроконтроллер.
В настоящее время ведутся работы по расшифровке криптомодуля, и возможны два способа удаления данных об инциденте с помощью
GprogSE-programmer https://gromcalctool.ru/
1) смена типа блокировки микроконтроллера с SEC 3F на ID-code (в этом случае возможна полная перезапись данных DataFlash1 )
2) 64b block erase (в этом случае удаляются блоки с инцидентом)

КОНТАКТЫ