Cung cấp khoá từ xa

Cấp phép khoá từ xa (RKP) đã là một phần của AOSP (Dự án nguồn mở Android) kể từ Android 12. Android 14 giới thiệu một mô-đun cấp phép từ xa có thể cập nhật, giúp tăng khả năng phục hồi của tính năng bằng cách cải thiện độ mạnh mẽ của API dịch vụ và giảm thời gian để giới thiệu mọi điểm cải tiến cho API đó.

Động lực

Đơn giản hoá dịch vụ RKP bằng cách đóng gói mọi thứ vào một APEX.

Trước Android 14, RKP được tách thành một ứng dụng, RemoteProvisioner và Kho khoá 2.0. Ứng dụng RemoteProvisioner chịu trách nhiệm liên hệ với phần phụ trợ RKP và Kho khoá 2.0 chịu trách nhiệm lưu trữ khoá cũng như giao tiếp với HAL. Đây không phải là một cấu trúc tốt vì các khoá RKP khác biệt đáng kể so với các khoá trong Kho khoá xét về siêu dữ liệu đi kèm. Ngoài ra, việc này đòi hỏi phải thực hiện một số sửa đổi khó khăn đối với mã khung Kho khoá để cảnh báo RemoteProvisioner về tình trạng thiếu tài nguyên tiềm ẩn.

RKP là một mô-đun Mainline (Chính) được thiết kế để cải thiện những điểm này bằng cách đóng gói mọi thứ một cách gọn gàng vào một APEX.

Ranh giới mô-đun

APEX chính của RKP, com.android.rkpd, chứa ứng dụng Trình nền cấp phép từ xa (RKPD) và thành phần máy chủ hệ thống cấp phép từ xa (được tạo bằng Java).

Cấu trúc ngăn xếp

Hình 1 minh hoạ cấu trúc ngăn xếp RKP.

Cấu trúc ngăn xếp RKP

Hình 1. Cấu trúc ngăn xếp RKP.

Cấu trúc nội bộ

Hình 2 minh hoạ cấu trúc nội bộ của RKP.

Cấu trúc nội bộ RKP

Hình 2. Cấu trúc nội bộ của RKP.

Thông tin bổ sung về cấu trúc nội bộ của RKP:

  • RKPD Mainline APEX – com.android.rkpd

    • Ứng dụng RKPD (Java)
      • packages/modules/RemoteKeyProvisioning/app
    • Mảnh máy chủ hệ thống RKPD (Java)
      • packages/modules/RemoteKeyProvisioning/system-server
  • Giao diện/triển khai HAL (Rust/C++)

    • IRemotelyProvisionedComponent
      • hardware/interfaces/security/keymint

Định dạng gói

Ứng dụng và các chức năng khác của mô-đun được đóng gói dưới dạng tệp APEX com.android.rkpd.

Phần phụ thuộc

Mô-đun RKP tiếp tục phụ thuộc vào việc triển khai IRemotelyProvisionedComponent để cung cấp khoá chứng thực và yêu cầu chứng chỉ.

Chiến lược kiểm thử

Phiên bản AOSP của ứng dụng APEX chứa các bài kiểm thử đơn vị mà OEM có thể chạy.