Предоставление удаленного ключа

Удаленная подготовка ключей (RKP) является частью AOSP начиная с Android 12. В Android 14 представлен обновляемый модуль удаленной подготовки, который повышает отказоустойчивость функций за счет повышения надежности API службы и сокращения времени на внесение в него каких-либо улучшений.

Мотивация

Упростите службу RKP, упаковав все в APEX.

До Android 14 RKP был разделен на приложение RemoteProvisioner и Keystore 2.0. Приложение RemoteProvisioner отвечало за связь с серверной частью RKP, а Keystore 2.0 отвечало как за хранение ключей, так и за связь с HAL. Это была не очень хорошая архитектура, поскольку ключи RKP существенно отличаются от ключей хранилища ключей с точки зрения прикрепленных метаданных. Кроме того, это потребовало неуклюжих изменений в коде платформы Keystore, чтобы предупредить RemoteProvisioner о потенциальном нехватке ресурсов.

RKP как основной модуль предназначен для улучшения этих моментов за счет аккуратной упаковки всего в APEX.

Граница модуля

Основная линия APEX RKP, com.android.rkpd , содержит приложение Remote Key Provisioning Daemon (RKPD) и серверный компонент системы удаленной подготовки (созданный на Java).

Архитектура стека

На рис. 1 показана архитектура стека RKP.

Архитектура стека RKP

Рисунок 1. Архитектура стека RKP.

Внутренняя архитектура

На рисунке 2 показана внутренняя архитектура RKP.

Внутренняя архитектура РКП

Рисунок 2. Внутренняя архитектура RKP.

Дополнительная информация о внутренней архитектуре RKP:

  • Магистральная линия РКПД APEX — com.android.rkpd

    • Приложение РКПД (Java)
      • packages/modules/RemoteKeyProvisioning/app
    • Фрагмент сервера системы РКПД (Java)
      • packages/modules/RemoteKeyProvisioning/system-server
  • Интерфейс/реализация HAL (Rust/C++)

    • IRemotelyProvisionedComponent
      • hardware/interfaces/security/keymint

Формат упаковки

Приложение и другие функции модуля упакованы в файл APEX com.android.rkpd .

Зависимости

Модуль RKP по-прежнему зависит от существования реализаций IRemotelyProvisionedComponent для предоставления ключей аттестации и запросов сертификатов.

Стратегия тестирования

Версия AOSP приложения APEX содержит модульные тесты, которые могут запускать OEM-производители.