Đối với các thiết bị chạy Android 13 trở lên, Android hỗ trợ phương pháp xác thực Tin cậy khi sử dụng lần đầu (TOFU) (RFC7435), cho phép người dùng tin cậy mạng doanh nghiệp (EAP) bằng cách cài đặt CA gốc mà máy chủ sử dụng và đặt tên miền của máy chủ đó trong mạng đã lưu. TOFU cho phép thiết bị để lấy khoá công khai chưa được xác thực khi người dùng kết nối lần đầu tiên vào mạng doanh nghiệp và giữ lại khoá cho các kết nối sau này.
Thông tin khái quát
So với mạng cá nhân chỉ yêu cầu mật khẩu, mạng doanh nghiệp sử dụng phương thức xác thực cơ sở hạ tầng khoá công khai (PKI). Phương thức này yêu cầu máy khách để cài đặt trước chứng chỉ. Trong Android 11 trở xuống, người dùng có thể chọn Tuỳ chọn Không xác thực cho chứng chỉ CA máy chủ trong phần cài đặt mạng, bỏ qua xác thực chứng chỉ phía máy chủ. Tuy nhiên, để tăng cường bảo mật và tuân thủ thông số kỹ thuật WPA R2, Android 12 đã giới thiệu một yêu cầu đối với mạng doanh nghiệp phải có xác thực chứng chỉ máy chủ. Chiến dịch này yêu cầu bổ sung đã tạo ra rào cản cho người dùng vì họ cần cài đặt CA cho các mạng như vậy. TOFU cung cấp cho người dùng một cách thức để kết nối với Mạng doanh nghiệp dựa trên PKI chỉ cần chấp nhận CA gốc.
Hành vi của tính năng
Thiết bị hỗ trợ TOFU hiển thị hành vi sau đây khi người dùng kết nối vào mạng doanh nghiệp chưa cài đặt sẵn khoá công khai được xác thực.
Kết nối với mạng mới thông qua bộ chọn Wi-Fi
Chọn một mạng doanh nghiệp mới trong bộ chọn Wi-Fi.
Thiết bị hiển thị hộp thoại (Hình 1) để xác nhận xem mạng đáng tin cậy.
Nhấn vào Có, hãy kết nối để chấp nhận kết nối mạng hoặc nhấn vào Không, đừng kết nối để từ chối.
Nếu bạn nhấn vào Có, hãy kết nối, thiết bị sẽ tự động định cấu hình tham số bảo mật, kết nối mạng và bật tính năng tự động kết nối cho mạng.
Nếu bạn nhấn vào Không, đừng kết nối, thiết bị sẽ ngắt kết nối khỏi mạng và tắt tính năng tự động kết nối cho mạng.
Hình 1. Hộp thoại cho tính năng TOFU
Kết nối với mạng hiện có khi bật tính năng tự động kết nối
Khi bạn kết nối với mạng doanh nghiệp đã bật tính năng tự động kết nối nhưng không có chứng chỉ CA hợp lệ, thiết bị sẽ tự động kết nối, sau đó hiện một thông báo cố định (không thể đóng).
Nhấn vào thông báo đó.
Thiết bị hiển thị hộp thoại (Hình 1) để xác nhận xem mạng đáng tin cậy.
Nhấn vào Có, hãy kết nối để chấp nhận kết nối mạng hoặc nhấn vào Không, đừng kết nối để từ chối.
Nếu bạn nhấn vào Có, hãy kết nối, thiết bị sẽ tự động định cấu hình tham số bảo mật, kết nối mạng và bật tính năng tự động kết nối cho mạng.
Nếu bạn nhấn vào Không, đừng kết nối, thiết bị sẽ ngắt kết nối khỏi mạng và tắt tính năng tự động kết nối cho mạng.
Triển khai
Để hỗ trợ tính năng TOFU, hãy triển khai HAL (Lớp trừu tượng phần cứng) đi kèm được cung cấp trong
Dự án nguồn mở Android (AOSP) tại
/hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant
.
Các API công khai sau đây hiện có trong Android 13 để ứng dụng dùng:
WifiManager#isTrustOnFirstUseSupported()
: Cho biết thiết bị có hỗ trợ TOFU hay không.WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: Bật TOFU.WifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: Cho biết liệu TOFU có được bật hay không.
Xác nhận kết quả
Để xác thực việc triển khai TOFU trên thiết bị của bạn, hãy sử dụng các kiểm thử sau:
- CTS (Bộ kiểm tra tính tương thích):
CtsWifiTestCases
- VTS:
VtsHalWifiSupplicantStaNetworkTargetTest