Android-приложение использует защищенные ресурсы через ARM TrustZone

На этой неделе на выставке RTS Embedded Systems в Париже Sysgo продемонстрировала свое микроядро PikeOS, используя технологию ARM TrustZone, чтобы обеспечить безопасную связь между приложениями Android в «Нормальном мире» и криптографическим приложением на основе PikeOS в «Безопасном мире».

Sysgo отмечает, что рынок встраиваемых систем быстро развивается из-за растущей важности мобильности и интеллектуальных систем.
«Как потребителям, так и промышленным устройствам в настоящее время требуются новые технологии для решения сегодняшних и будущих задач в области производительности, безопасности и особенно безопасности», - говорится в сообщении компании.

По словам Sysgo, технология ARM TrustZone способна обеспечить безопасность системы в целом, путем разделения системных ресурсов на два региона, называемые Secure World и Normal World, как показано на рисунке архитектуры TrustZone ниже.


Аппаратная архитектура ARM TrustZone

(источник: ARM)

Доступ к ресурсам Secure World ограничен «безопасным программным обеспечением», тогда как доступ к ресурсам Normal World может осуществляться с помощью программного обеспечения, не ограниченного требованиями безопасности (например, Android).

На своей демонстрации в Париже Sysgo настроил архитектуру гипервизора, в которой его микроядро PikeOS 3.3 служило в качестве ОС Secure World, а Android 4.0.1 служило в качестве ОС Normal World, работающей на плате на основе Freescale i.MX6 .


Архитектура гипервизора PikeOS

(источник: Sysgo)

В ходе демонстрации криптографический алгоритм, реализованный приложением PikeOS в Secure World, не мог быть напрямую доступен для приложений Android в Normal World из-за защиты TrustZone.
Вместо этого Android-приложению, требующему криптографических сервисов, пришлось пройти безопасный путь, управляемый PikeOS в режиме мониторинга.

В демонстрационной версии гипервизор PikeOS предоставляет следующие функции:

  • Обрабатывает исключения режима монитора
  • Назначает устройства для безопасного мира или нормального мира
  • Разделяет память между безопасным миром и нормальным миром
  • Назначает ядра в нормальный мир или безопасный мир
  • Инициализирует и запускает ОС Normal World (Android, в демоверсии)
  • Предоставляет способы для приложений PikeOS обрабатывать запросы Normal World

Sysgo говорит, что демонстрация включала «очень ограниченные» изменения в Android, чтобы он мог работать в нормальном мире.
Был создан специальный драйвер для облегчения связи между приложениями Android и Secure World.
В целом, демонстрация продемонстрировала «альянс между функциями безопасности, вызванными программным решением, и функциями, вызванными аппаратным решением», - говорит вице-президент по маркетингу Sysgo Жак Брюгье.

По словам Sysgo, архитектура микроядра PikeOS делает ее полезной для устройств с ограниченными ресурсами, имеющих требования в реальном времени, а также для приложений в более крупных системах.
ОС поддерживает как одноядерные, так и многоядерные процессоры, а в многоядерных системах ее можно использовать как в режимах асимметричной многопроцессорной обработки (AMP), так и в режимах симметричной многопроцессорной обработки (SMP).
Технология микроядра «Безопасная и безопасная виртуализация» (SSV), как утверждается, позволяет нескольким экземплярам ОС работать «безопасно и надежно» на отдельных наборах ресурсов на одной машине.

Как гипервизор, PikeOS поддерживает Android, Linux, PikeOS Native, ARINC 653, POSIX, RTEMS, iTRON и другие.
в качестве «гостевых» операционных систем.
Компания заявляет, что PikeOS сертифицирована в соответствии со стандартами безопасности DO-178B / C, IEC 61508, EN 50128, IEC 62304, ISO 26262, соответствует стандарту MILS и участвует в ряде проектов по сертификации Common Criteria EAL.

Sysgo также предлагает встроенный дистрибутив Linux под названием «eLinOS». Для получения дополнительной информации посетите веб-сайт Sysgo здесь .