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) ซึ่งจะให้บริการการเข้ารหัสและความเป็นส่วนตัวในเครือข่ายแบบเปิดที่ไม่ได้รับการปกป้องด้วยรหัสผ่านในพื้นที่ต่างๆ เช่น คาเฟ่ โรงแรม ร้านอาหาร และห้องสมุด Open ที่ปรับปรุงแล้วไม่มีการตรวจสอบสิทธิ์
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 เฉพาะในโหมดไคลเอ็นต์เท่านั้น
การใช้งาน
หากต้องการรองรับ WPA3 และ Wi-Fi Enhanced Open ให้ใช้อินเทอร์เฟซ Supplicant HAL
ตั้งแต่ 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
มีประเภทการจัดการคีย์ใหม่ รวมถึงการเข้ารหัสแบบคู่ การเข้ารหัสกลุ่ม การเข้ารหัสการจัดการกลุ่ม และการเข้ารหัส 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
เพื่อยืนยันลักษณะการทำงานของ Flag ความสามารถสำหรับ WPA3 และ OWE
atest SupplicantStaIfaceHalTest
เรียกใช้
WifiManagerTest
เพื่อยืนยันลักษณะการทํางานของ API สาธารณะสําหรับฟีเจอร์นี้
atest WifiManagerTest
การทดสอบ VTS
หากมีการใช้อินเทอร์เฟซ HIDL ให้เรียกใช้คำสั่งต่อไปนี้
atest VtsHalWifiSupplicantV1_3TargetTest
หากมีการใช้อินเทอร์เฟซ AIDL ให้เรียกใช้
atest VtsHalWifiSupplicantStaIfaceTargetTest