Android 10 มีการรองรับ Wi-Fi Alliance เวอร์ชัน 3 (WPA3) และมาตรฐาน Wi-Fi Enhanced Open ของ Wi-Fi Alliance (WFA) ดูข้อมูลเพิ่มเติมได้ที่ความปลอดภัยในเว็บไซต์ WFA
WPA3 เป็นมาตรฐานความปลอดภัย WFA ใหม่สำหรับเครือข่ายส่วนบุคคลและเครือข่ายระดับองค์กร โดยมีเป้าหมายเพื่อปรับปรุงความปลอดภัย Wi-Fi โดยรวมโดยใช้อัลกอริทึมการรักษาความปลอดภัยที่ทันสมัยและชุดการเข้ารหัสที่รัดกุมยิ่งขึ้น WPA3 มี 2 ส่วนดังนี้
- WPA3-Personal: ใช้การตรวจสอบสิทธิ์พร้อมกันแบบเท่ากับ (SAE) แทนคีย์แบบแชร์ล่วงหน้า (PSK) ซึ่งช่วยให้ผู้ใช้ได้รับการป้องกันที่รัดกุมยิ่งขึ้นจากการโจมตี เช่น การโจมตีพจนานุกรมออฟไลน์ การกู้คืนคีย์ และการปลอมข้อความ
- WPA3-Enterprise: มีการตรวจสอบสิทธิ์และวิธีการเข้ารหัสเลเยอร์ลิงก์ที่รัดกุมยิ่งขึ้น รวมถึงโหมดความปลอดภัย 192 บิตที่ไม่บังคับสำหรับสภาพแวดล้อมการรักษาความปลอดภัยที่มีความละเอียดอ่อน
Wi-Fi Enhanced Open เป็นมาตรฐานความปลอดภัย WFA ใหม่สำหรับเครือข่ายสาธารณะโดยอิงตามการเข้ารหัสแบบไร้สายตามโอกาส (OWE) ซึ่งให้การเข้ารหัสและความเป็นส่วนตัวในเครือข่ายแบบเปิดที่ไม่มีการป้องกันด้วยรหัสผ่านในพื้นที่ต่างๆ เช่น คาเฟ่ โรงแรม ร้านอาหาร และห้องสมุด การเปิดที่ปรับปรุงแล้ว ไม่มีการตรวจสอบสิทธิ์
WPA3 และ Wi-Fi Enhanced Open ปรับปรุงความปลอดภัยใน Wi-Fi โดยรวม โดยมีความเป็นส่วนตัวและมีประสิทธิภาพมากขึ้นจากการโจมตีที่รู้จัก เนื่องจากมีอุปกรณ์จำนวนมากที่ยังไม่รองรับมาตรฐานเหล่านี้หรือยังไม่มีการอัปเกรดซอฟต์แวร์เพื่อรองรับฟีเจอร์เหล่านี้ WFA จึงเสนอโหมดการเปลี่ยนดังนี้
- โหมดการเปลี่ยน WPA2/WPA3: จุดเข้าใช้งานที่ให้บริการรองรับมาตรฐาน WPA2 และ WPA3 พร้อมกัน ในโหมดนี้ อุปกรณ์ Android 10 จะใช้ WPA3 ในการเชื่อมต่อ และอุปกรณ์ที่ใช้ Android 9 หรือต่ำกว่าจะใช้ WPA2 เพื่อเชื่อมต่อกับจุดเข้าใช้งานเดียวกัน
- โหมดการเปลี่ยนรุ่น WPA2/WPA3-Enterprise: จุดเข้าใช้งานที่ให้บริการรองรับมาตรฐาน WPA2-Enterprise และ WPA3-Enterprise พร้อมกัน
- โหมดการเปลี่ยน OWE: จุดเข้าใช้งานที่ให้บริการรองรับทั้ง OWE และมาตรฐานแบบเปิดพร้อมกัน ในโหมดนี้ อุปกรณ์ Android 10 จะใช้ OWE ในการเชื่อมต่อ และอุปกรณ์ที่ใช้ Android 9 หรือต่ำกว่าจะเชื่อมต่อกับจุดเข้าใช้งานเดียวกันโดยไม่มีการเข้ารหัส
Android 12 รองรับตัวบ่งชี้ "ปิดใช้การเปลี่ยน" ซึ่งเป็นกลไกที่สั่งให้อุปกรณ์ไม่ใช้ WPA2 และใช้ WPA3 แทน เมื่ออุปกรณ์ได้รับสัญญาณบอกสถานะนี้ จะใช้ WPA3 เพื่อเชื่อมต่อกับเครือข่าย WPA3 ที่รองรับโหมดการเปลี่ยน Android 12 ยังรองรับการแลกเปลี่ยนการตรวจสอบสิทธิ์ WPA3 Hash-to-Element (H2E) ด้วย สำหรับข้อมูลเพิ่มเติม โปรดดูข้อมูลจำเพาะของ WPA3
WPA3 และ Wi-Fi Enhanced Open ได้รับการสนับสนุนในโหมดไคลเอ็นต์เท่านั้น
การใช้งาน
ใช้อินเทอร์เฟซ HAL ของผู้สมัครเพื่อให้รองรับ WPA3 และ Wi-Fi Enhanced Open
ตั้งแต่ Android 13 อินเทอร์เฟซจะใช้ AIDL เพื่อหาคำจำกัดความ HAL
สำหรับรุ่นก่อน Android 13
อินเทอร์เฟซและพาร์ติชันผู้ให้บริการจะใช้ HIDL
คุณจะดูอินเทอร์เฟซ HIDL ได้ใน
hardware/interfaces/wifi/supplicant/1.3/
และอินเทอร์เฟซ AIDL จะอยู่ใน
hardware/interfaces/wifi/supplicant/aidl/
ต้องมีรายการต่อไปนี้เพื่อรองรับ WPA3 และ OWE
แพตช์เคอร์เนลของ Linux เพื่อรองรับ SAE และ OWE
- cfg80211
- Nl80211
wpa_supplicant
รองรับ SAE, SUITEB192 และ OWEไดรเวอร์ Wi-Fi ที่รองรับ SAE, SUITEB192 และ OWE
เฟิร์มแวร์ Wi-Fi ที่รองรับ SAE, SUITEB192 และ OWE
ชิป Wi-Fi ที่รองรับ WPA3 และ OWE
เมธอด API สาธารณะพร้อมใช้งานใน Android 10 เพื่อให้แอปกำหนดการรองรับอุปกรณ์สำหรับฟีเจอร์เหล่านี้ได้
WifiManager#isWpa3SaeSupported
WifiManager#isWpa3SuiteBSupported
WifiManager#isEnhancedOpenSupported
WifiConfiguration.java
มีประเภทการจัดการคีย์ใหม่ๆ รวมถึงการเข้ารหัส Pairwise การเข้ารหัสกลุ่ม, การเข้ารหัสการจัดการกลุ่ม และการเข้ารหัส Suite B ซึ่งจำเป็นสำหรับ OWE, WPA3-Personal และ WPA3-Enterprise
เปิดใช้ WPA3 และ Wi-Fi Enhanced Open
วิธีเปิดใช้ WPA3-Personal, WPA3-Enterprise และ Wi-Fi Enhanced Open ในเฟรมเวิร์ก Android
WPA3-Personal: รวมตัวเลือกการคอมไพล์
CONFIG_SAE
ไว้ในไฟล์การกำหนดค่าwpa_supplicant
# WPA3-Personal (SAE) CONFIG_SAE=y
WPA3-Enterprise: รวมตัวเลือกการคอมไพล์
CONFIG_SUITEB192
และCONFIG_SUITEB
ในไฟล์การกำหนดค่าwpa_supplicant
# WPA3-Enterprise (SuiteB-192) CONFIG_SUITEB=y CONFIG_SUITEB192=y
Wi-Fi Enhanced Open: รวมตัวเลือกการคอมไพล์
CONFIG_OWE
ในไฟล์การกำหนดค่าwpa_supplicant
# Opportunistic Wireless Encryption (OWE) # Experimental implementation of draft-harkins-owe-07.txt CONFIG_OWE=y
หากไม่ได้เปิดใช้ WPA3-Personal, WPA3-Enterprise หรือ Wi-Fi Enhanced Open ผู้ใช้จะเพิ่ม สแกน หรือเชื่อมต่อกับเครือข่ายประเภทดังกล่าวด้วยตนเองไม่ได้
การตรวจสอบความถูกต้อง
หากต้องการทดสอบการใช้งาน ให้ทำการทดสอบต่อไปนี้
การทดสอบ 1 หน่วย
เรียกใช้ SupplicantStaIfaceHalTest
เพื่อตรวจสอบลักษณะการทำงานของแฟล็กความสามารถสำหรับ WPA3 และ OWE
atest SupplicantStaIfaceHalTest
เรียกใช้ WifiManagerTest
เพื่อตรวจสอบลักษณะการทำงานของ API สาธารณะสำหรับฟีเจอร์นี้
atest WifiManagerTest
การทดสอบ VTS
หากใช้อินเทอร์เฟซ HIDL ให้เรียกใช้
atest VtsHalWifiSupplicantV1_3TargetTest
หากใช้อินเทอร์เฟซ AIDL ให้เรียกใช้
atest VtsHalWifiSupplicantStaIfaceTargetTest