Bảo mật NFC

Android hỗ trợ quy trình mô phỏng thẻ ngoài máy chủ, tức là quy trình mô phỏng thẻ NFC bằng một Secure Element. Để biết thêm thông tin, hãy xem bài viết Tổng quan về quy trình mô phỏng thẻ dựa trên máy chủ.

Trong một số trường hợp sử dụng nhất định, chẳng hạn như sử dụng FeliCa cho phương tiện công cộng, quy trình mô phỏng thẻ ngoài máy chủ được cho phép 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.

NFC bảo mật là một tính năng được ra mắt trong Android 10, cho phép bật quy trình mô phỏng thẻ NFC ngoài máy chủ 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 sẽ cho phép người dùng bật NFC bảo mật để tăng cường tính 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ó một 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 thành bật hoặc tắt.

Hình 1 cho thấy ví dụ về nút bật/tắt để bật và tắt NFC bảo mật trong ứng dụng Cài đặt tại 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.

Luồng giao diện người dùng NFC bảo mật

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

Khi NFC bảo mật được bật và người dùng đặt thiết bị lê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ư trong Hình 2.

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

Hình 2. Thông báo Mở khoá để sử dụng 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 quy trình mô phỏng thẻ NFC bị tắt khi màn hình của thiết bị tắt hoặc bị khoá và khi thiết bị bị tắt.