Функции безопасности Android

Используйте функции, описанные в этом разделе, чтобы сделать разрабатываемые вами устройства Android максимально безопасными.

Песочница приложений

Платформа Android использует защиту на уровне пользователя Linux для идентификации и изоляции ресурсов приложений. Для этого Android назначает каждому приложению уникальный идентификатор пользователя (UID) и запускает его в отдельном процессе. Android использует этот UID для настройки изолированной среды приложений на уровне ядра.

Подписание приложений

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

Аутентификация

В Android есть концепция аутентификаторов пользователей , которые могут разблокировать устройство и выполнять другие задачи:

  • Подсистема Gatekeeper выполняет аутентификацию по шаблону устройства или паролю в доверенной среде выполнения (TEE).
  • Дополнительный компонент Weaver выполняет аутентификацию по шаблону или паролю в отдельном защищенном элементе.
  • Устройства со сканером отпечатков пальцев поддерживают использование зарегистрированных отпечатков пальцев.
  • Устройства могут поддерживать аутентификацию по лицу.

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

Биометрия

В Android 9 и более поздних версиях есть класс BiometricPrompt , который разработчики приложений могут использовать для интеграции биометрической аутентификации в свои приложения независимо от устройства и модальности. Только надежные биометрические данные могут быть интегрированы с BiometricPrompt .

Шифрование

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

Хранилище ключей

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

Linux с улучшенной безопасностью

В рамках модели безопасности Android, Android использует Security-Enhanced Linux (SELinux) для обеспечения принудительного управления доступом (MAC) для всех процессов, даже процессов, работающих с привилегиями root или суперпользователя (возможности Linux).

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

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

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

Проверенная загрузка

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