Bảo mật NFC

Android hỗ trợ quy trình mô phỏng thẻ từ bên ngoài máy chủ, nghĩa là mô phỏng thẻ NFC với một phần tử bảo mật. Để biết thêm thông tin, hãy xem phần Tổng quan về tính năng mô phỏng thẻ dựa trên máy chủ.

Trong một số trường hợp sử dụng, chẳng hạn như sử dụng FeliCa để đi phương tiện công cộng, bạn được phép mô phỏng thẻ ngoài máy chủ khi màn hình của thiết bị bị khoá hoặc tắt, hoặc khi thiết bị bị tắt.

Bảo mật NFC là một tính năng được giới thiệu trong Android 10, cho phép chỉ bật tính năng mô phỏng thẻ NFC ngoài máy chủ khi màn hình của thiết bị được mở khoá. Việc triển khai tính năng này cho phép người dùng bật NFC bảo mật để tăng cường bảo mật.

Triển khai

Để triển khai tính năng NFC bảo mật, thiết bị phải có bộ điều khiển NFC hỗ trợ tiêu chuẩn NCI 2.0 và phải sử dụng khung NFC của Dự án nguồn mở Android (AOSP). Thêm phần cứng (ro.boot.hardware.sku) hỗ trợ tính năng NFC bảo mật trong tệp XML tài nguyên NFC bằng thuộc tính config_skuSupportsSecureNfc.

API khung

Để triển khai NFC bảo mật, hãy triển khai các API khung sau đây có trong Dự án nguồn mở Android:

Giao diện người dùng của phần Cài đặt

Trong ứng dụng Cài đặt, hãy thêm một nút bật/tắt để cho phép người dùng bật và tắt tính năng NFC bảo mật. Bạn có thể tuỳ chỉnh chế độ cài đặt mặc định trong ứng dụng Cài đặt để bật hoặc tắt.

Hình 1 minh hoạ một ví dụ về công tắc bật/tắt để bật và tắt NFC bảo mật trong ứng dụng Cài đặt ở phần Cài đặt > Thiết bị đã kết nối > Lựa chọn ưu tiên về kết nối > NFC > Yêu cầu mở khoá thiết bị để sử dụng NFC.

Quy trình giao diện người dùng NFC bảo mật

Hình 1. Ví dụ về nút chuyển bật/tắt để bật và tắt tính năng Bảo mật NFC

Khi chế độ Bảo mật NFC được bật và người dùng đặt thiết bị trên đầu đọc NFC, Android sẽ hiển thị thông báo Mở khoá để sử dụng NFC trên màn hình khoá như minh hoạ trong Hình 2.

Thông báo về NFC bảo mật

Hình 2. Mở khoá để sử dụng thông báo NFC trên màn hình khoá

Xác nhận kết quả

Để xác thực quá trình triển khai, hãy bật tính năng NFC bảo mật và xác minh rằng tính năng mô phỏng thẻ NFC bị tắt khi màn hình thiết bị tắt hoặc khoá, cũng như khi thiết bị tắt.