Google 致力于为黑人社区推动种族平等。查看具体举措
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Надежный тройник

Trusty - это безопасная операционная система (ОС), которая обеспечивает надежную среду выполнения (TEE) для Android. ОС Trusty работает на том же процессоре, что и ОС Android, но Trusty изолирована от остальной системы как аппаратным, так и программным обеспечением. Trusty и Android работают параллельно друг другу. Trusty имеет доступ к полной мощности основного процессора и памяти устройства, но полностью изолирован. Изоляция Trusty защищает его от вредоносных приложений, установленных пользователем, и потенциальных уязвимостей, которые могут быть обнаружены в Android.

Trusty совместим с процессорами ARM и Intel. В системах ARM Trusty использует ARM Trustzone ™ для виртуализации главного процессора и создания безопасной среды выполнения. Аналогичная поддержка также доступна на платформах Intel x86 с использованием технологии виртуализации Intel.

Рисунок 1 . Надежная обзорная диаграмма.

Trusty состоит из:

  • Небольшое ядро ​​ОС, полученное из Little Kernel
  • Драйвер ядра Linux для передачи данных между безопасной средой и Android.
  • Библиотека пользовательского пространства Android для связи с доверенными приложениями (то есть безопасными задачами / службами) через драйвер ядра.

Примечание. Trusty и Trusty API могут быть изменены. Для получения информации о Trusty API см. Справочник по API .

Почему Trusty?

Другие операционные системы TEE традиционно поставляются в виде двоичных двоичных объектов сторонними поставщиками или разрабатываются внутри компании. Разработка внутренних систем TEE или лицензирование TEE у сторонних производителей может быть дорогостоящим для поставщиков систем на кристалле (SoC) и OEM-производителей. Денежная стоимость в сочетании с ненадежными сторонними системами создает нестабильную экосистему для Android. Trusty предоставляется своим партнерам в качестве надежной и бесплатной альтернативы с открытым исходным кодом для их Trusted Execution Environment. Trusty предлагает уровень прозрачности, который просто невозможен с системами с закрытым исходным кодом.

Android поддерживает различные реализации TEE, поэтому вы не ограничены использованием Trusty. Каждая ОС TEE имеет свой уникальный способ развертывания доверенных приложений. Эта фрагментация может стать проблемой для надежных разработчиков приложений, которые пытаются обеспечить работу своих приложений на каждом устройстве Android. Использование Trusty в качестве стандарта помогает разработчикам приложений легко создавать и развертывать приложения, не принимая во внимание фрагментацию нескольких систем TEE. Trusty TEE обеспечивает разработчикам и партнерам прозрачность, возможность совместной работы, возможность проверки кода и простоту отладки. Надежные разработчики приложений могут использовать общие инструменты и API, чтобы снизить риск появления уязвимостей в системе безопасности. Эти разработчики будут уверены, что смогут разработать приложение и повторно использовать его на нескольких устройствах без дальнейшей разработки.

Приложения и услуги

Приложение Trusty определяется как набор двоичных файлов (исполняемых файлов и файлов ресурсов), двоичного манифеста и криптографической подписи. Во время выполнения приложения Trusty работают как изолированные процессы в непривилегированном режиме под ядром Trusty. Каждый процесс выполняется в своей собственной изолированной программной среде виртуальной памяти, используя возможности модуля управления памятью процессора TEE. Сборка оборудования изменяет точный процесс, которому следует Trusty, но, например, ядро ​​планирует эти процессы, используя циклический планировщик на основе приоритета, управляемый таймером безопасности. Все приложения Trusty имеют одинаковый приоритет.

Рисунок 2 . Обзор надежного приложения.

Сторонние приложения Trusty

В настоящее время все приложения Trusty разрабатываются одной стороной и упаковываются с образом ядра Trusty. Весь образ подписывается и проверяется загрузчиком во время загрузки. В настоящее время Trusty не поддерживает разработку сторонних приложений. Хотя Trusty позволяет разрабатывать новые приложения, делать это нужно с особой осторожностью; каждое новое приложение увеличивает площадь доверенной вычислительной базы (TCB) системы. Надежные приложения могут получить доступ к секретам устройства и могут выполнять вычисления или преобразование данных с их помощью. Возможность разрабатывать новые приложения, работающие в TEE, открывает множество возможностей для инноваций. Однако из-за самого определения TEE эти приложения не могут распространяться без какой-либо формы доверия. Обычно это происходит в форме цифровой подписи от лица, которому доверяет пользователь продукта, на котором работает приложение.

Использование и примеры

Надежные среды выполнения быстро становятся стандартом для мобильных устройств. Пользователи все больше и больше полагаются на свои мобильные устройства в повседневной жизни, и потребность в безопасности постоянно растет. Мобильные устройства с TEE более безопасны, чем устройства без TEE.

На устройствах с реализацией TEE главный процессор часто называют «ненадежным», что означает, что он не может получить доступ к определенным областям ОЗУ, аппаратным регистрам и предохранителям с однократной записью, в которых хранятся секретные данные (например, специфические для устройства криптографические ключи). хранится у производителя. Программное обеспечение, работающее на главном процессоре, делегирует все операции, требующие использования секретных данных, процессору TEE.

Наиболее широко известный пример этого в экосистеме Android - структура DRM для защищенного контента. Программное обеспечение, работающее на процессоре TEE, может получить доступ к ключам конкретного устройства, необходимым для расшифровки защищенного содержимого. Главный процессор видит только зашифрованный контент, обеспечивая высокий уровень безопасности и защиты от программных атак.

Существует множество других применений TEE, таких как мобильные платежи, безопасный банкинг, многофакторная аутентификация, защита от сброса устройства, постоянное хранилище с защитой от воспроизведения, безопасная обработка PIN-кода и отпечатков пальцев и даже обнаружение вредоносных программ.