สำหรับอุปกรณ์ที่ใช้ Android 13 ขึ้นไป Android จะรองรับแนวทางการตรวจสอบสิทธิ์แบบเชื่อถือในการใช้งานครั้งแรก (TOFU) (RFC7435) ซึ่งช่วยให้ผู้ใช้เชื่อถือเครือข่ายขององค์กร (EAP) ได้โดยการติดตั้ง CA รูทที่เซิร์ฟเวอร์ใช้และตั้งค่าชื่อโดเมนในเครือข่ายที่บันทึกไว้ TOFU ช่วยให้อุปกรณ์รับคีย์สาธารณะที่ไม่มีการรับรองเมื่อผู้ใช้เชื่อมต่อกับเครือข่ายขององค์กรเป็นครั้งแรก และเก็บคีย์ไว้สำหรับการเชื่อมต่อครั้งต่อๆ ไป
ฉากหลัง
เมื่อเทียบกับเครือข่ายส่วนบุคคลที่ต้องใช้เพียงรหัสผ่าน เครือข่ายขององค์กรจะใช้การตรวจสอบสิทธิ์โครงสร้างพื้นฐานของคีย์สาธารณะ (PKI) ซึ่งกำหนดให้ไคลเอ็นต์ต้องติดตั้งใบรับรองล่วงหน้า ใน Android 11 หรือต่ำกว่า ผู้ใช้สามารถเลือกตัวเลือกไม่ตรวจสอบใบรับรอง CA ของเซิร์ฟเวอร์ในการตั้งค่าเครือข่าย ซึ่งจะข้ามการตรวจสอบใบรับรองฝั่งเซิร์ฟเวอร์ อย่างไรก็ตาม Android 12 ได้กำหนดข้อกำหนดให้เครือข่ายขององค์กรต้องมีการตรวจสอบใบรับรองเซิร์ฟเวอร์เพื่อเพิ่มความปลอดภัยและปฏิบัติตามข้อกำหนดเฉพาะของ WPA R2 ข้อกำหนดเพิ่มเติมนี้สร้างอุปสรรคให้กับผู้ใช้เนื่องจากผู้ใช้จำเป็นต้องติดตั้งใบรับรอง CA สำหรับเครือข่ายดังกล่าว TOFU มีวิธีให้ผู้ใช้เชื่อมต่อกับเครือข่ายขององค์กรที่ใช้ PKI ได้โดยเพียงแค่ยอมรับ CA รูท
ลักษณะการทำงาน
อุปกรณ์ที่รองรับ TOFU จะแสดงลักษณะการทำงานต่อไปนี้เมื่อผู้ใช้เชื่อมต่อกับเครือข่ายขององค์กรที่ไม่มีคีย์สาธารณะที่ตรวจสอบสิทธิ์แล้วซึ่งติดตั้งไว้แล้ว
เชื่อมต่อกับเครือข่ายใหม่ผ่านเครื่องมือเลือก Wi-Fi
เลือกเครือข่ายใหม่ขององค์กรในเครื่องมือเลือก Wi-Fi
อุปกรณ์จะแสดงกล่องโต้ตอบ (รูปที่ 1) เพื่อยืนยันว่าเชื่อถือเครือข่ายหรือไม่
แตะใช่ เชื่อมต่อเพื่อยอมรับการเชื่อมต่อเครือข่าย หรือแตะไม่ อย่าเชื่อมต่อเพื่อปฏิเสธ
หากคุณแตะใช่ เชื่อมต่อ อุปกรณ์จะกำหนดค่าพารามิเตอร์การรักษาความปลอดภัย เชื่อมต่อกับเครือข่าย และเปิดใช้การเชื่อมต่ออัตโนมัติสำหรับเครือข่ายโดยอัตโนมัติ
หากคุณแตะไม่ ไม่ต้องเชื่อมต่อ อุปกรณ์จะยกเลิกการเชื่อมต่อกับเครือข่ายและปิดใช้การเชื่อมต่ออัตโนมัติสำหรับเครือข่าย
รูปที่ 1 กล่องโต้ตอบสําหรับฟีเจอร์ TOFU
เชื่อมต่อกับเครือข่ายที่มีอยู่โดยเปิดใช้การเชื่อมต่ออัตโนมัติ
เมื่อเชื่อมต่อกับเครือข่ายขององค์กรที่เปิดใช้การเชื่อมต่ออัตโนมัติแต่ไม่มีใบรับรอง CA ที่ถูกต้อง อุปกรณ์จะเชื่อมต่อโดยอัตโนมัติ จากนั้นจะแสดงการแจ้งเตือนแบบติดหนึบ (ปิดไม่ได้)
แตะการแจ้งเตือน
อุปกรณ์จะแสดงกล่องโต้ตอบ (ภาพที่ 1) เพื่อยืนยันว่าเครือข่ายเชื่อถือได้หรือไม่
แตะใช่ เชื่อมต่อเพื่อยอมรับการเชื่อมต่อเครือข่าย หรือแตะไม่ อย่าเชื่อมต่อเพื่อปฏิเสธ
หากคุณแตะใช่ เชื่อมต่อ อุปกรณ์จะกำหนดค่าพารามิเตอร์การรักษาความปลอดภัย เชื่อมต่อกับเครือข่าย และเปิดใช้การเชื่อมต่ออัตโนมัติสำหรับเครือข่ายโดยอัตโนมัติ
หากคุณแตะไม่ ไม่ต้องเชื่อมต่อ อุปกรณ์จะยกเลิกการเชื่อมต่อกับเครือข่ายและปิดใช้การเชื่อมต่ออัตโนมัติสำหรับเครือข่าย
การใช้งาน
หากต้องการรองรับฟีเจอร์ TOFU ให้ใช้ HAL ของ supplicant ที่ระบุไว้ในโครงการโอเพนซอร์ส Android (AOSP) ที่ /hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant
API สาธารณะต่อไปนี้พร้อมใช้งานใน Android 13 สำหรับให้แอปใช้งาน
WifiManager#isTrustOnFirstUseSupported()
: ระบุว่าอุปกรณ์รองรับ TOFU หรือไม่WifiEnterpriseConfig#enableTrustOnFirstUse(boolean)
: เปิดใช้ TOFUWifiEnterpriseConfig#isTrustOnFirstUseEnabled()
: ระบุว่าเปิดใช้ TOFU หรือไม่
การตรวจสอบความถูกต้อง
หากต้องการตรวจสอบการติดตั้งใช้งาน TOFU ในอุปกรณ์ ให้ใช้การทดสอบต่อไปนี้
- CTS:
CtsWifiTestCases
- VTS:
VtsHalWifiSupplicantStaNetworkTargetTest