Penyediaan Kunci Jarak Jauh

Penyediaan Kunci Jarak Jauh (RKP) telah menjadi bagian dari AOSP sejak Android 12. Android 14 memperkenalkan modul penyediaan jarak jauh yang dapat diperbarui yang meningkatkan ketahanan fitur dengan meningkatkan ketahanan API layanan dan mengurangi waktu untuk melakukan penyempurnaan apa pun pada layanan tersebut.

Motivasi

Sederhanakan layanan RKP dengan mengemas semuanya ke dalam APEX.

Sebelum Android 14, RKP dipisahkan menjadi sebuah aplikasi, RemoteProvisioner , dan Keystore 2.0. Aplikasi RemoteProvisioner bertanggung jawab untuk menghubungi backend RKP, dan Keystore 2.0 bertanggung jawab untuk menyimpan kunci dan berkomunikasi dengan HAL. Ini bukan arsitektur yang baik karena kunci RKP sangat berbeda dari kunci Keystore dalam hal metadata yang dilampirkan. Selain itu, hal ini memerlukan modifikasi yang canggung pada kode kerangka kerja Keystore untuk mengingatkan RemoteProvisioner tentang potensi kekurangan sumber daya.

RKP sebagai modul Mainline dirancang untuk memperbaiki poin-poin ini dengan mengemas semuanya secara rapi ke dalam APEX.

Batas modul

RKP Mainline APEX, com.android.rkpd , berisi aplikasi Remote Key Provisioning Daemon (RKPD) dan komponen server sistem provisi jarak jauh (dibangun dengan Java).

Arsitektur tumpukan

Gambar 1 mengilustrasikan arsitektur tumpukan RKP.

Arsitektur tumpukan RKP

Gambar 1. Arsitektur tumpukan RKP.

Arsitektur dalaman

Gambar 2 menggambarkan arsitektur internal RKP.

Arsitektur internal RKP

Gambar 2. Arsitektur internal RKP.

Informasi tambahan tentang arsitektur internal RKP:

  • APEX Jalur Utama RKPD - com.android.rkpd

    • Aplikasi RKPD (Jawa)
      • packages/modules/RemoteKeyProvisioning/app
    • Fragmen server sistem RKPD (Jawa)
      • packages/modules/RemoteKeyProvisioning/system-server
  • Antarmuka/implementasi HAL (Rust/C++)

    • IRemotelyProvisionedComponent
      • hardware/interfaces/security/keymint

Format paket

Aplikasi dan fungsi modul lainnya dikemas sebagai file APEX com.android.rkpd .

Ketergantungan

Modul RKP terus bergantung pada keberadaan implementasi IRemotelyProvisionedComponent untuk menyediakan kunci pengesahan dan permintaan sertifikat.

Strategi pengujian

Versi AOSP dari aplikasi APEX berisi pengujian unit yang dapat dijalankan oleh OEM.