Android 10 แนะนำการรองรับ Wi-Fi Alliance's (WFA) Wi-Fi Protected Access เวอร์ชัน 3 (WPA3) และมาตรฐาน Wi-Fi Enhanced Open สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ความปลอดภัย บนไซต์ WFA
WPA3 คือมาตรฐานความปลอดภัย WFA ใหม่สำหรับเครือข่ายส่วนบุคคลและองค์กร มีเป้าหมายเพื่อปรับปรุงความปลอดภัย Wi-Fi โดยรวมโดยใช้อัลกอริธึมความปลอดภัยที่ทันสมัยและชุดการเข้ารหัสที่แข็งแกร่งยิ่งขึ้น WPA3 มีสองส่วน:
- WPA3-ส่วนบุคคล: ใช้การรับรองความถูกต้องที่เท่าเทียมกัน (SAE) พร้อมกันแทนคีย์ที่แชร์ล่วงหน้า (PSK) ให้การป้องกันความปลอดภัยที่แข็งแกร่งแก่ผู้ใช้จากการโจมตี เช่น การโจมตีด้วยพจนานุกรมออฟไลน์ การกู้คืนคีย์ และการปลอมแปลงข้อความ
- WPA3-Enterprise: เสนอการรับรองความถูกต้องที่แข็งแกร่งยิ่งขึ้นและวิธีการเข้ารหัสเลเยอร์ลิงก์ และโหมดความปลอดภัยเสริม 192 บิตสำหรับสภาพแวดล้อมความปลอดภัยที่ละเอียดอ่อน
Wi-Fi Enhanced Open คือมาตรฐานความปลอดภัย WFA ใหม่สำหรับเครือข่ายสาธารณะที่ใช้การเข้ารหัสไร้สายแบบฉวยโอกาส (OWE) โดยให้การเข้ารหัสและความเป็นส่วนตัวบนเครือข่ายแบบเปิดที่ไม่มีการป้องกันด้วยรหัสผ่านในพื้นที่ต่างๆ เช่น ร้านกาแฟ โรงแรม ร้านอาหาร และห้องสมุด Enhanced 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 รองรับการบ่งชี้ Transition Disable ซึ่งเป็นกลไกที่สั่งให้อุปกรณ์ไม่ใช้ 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
วิธี Public 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 ผู้ใช้จะไม่สามารถเพิ่ม สแกน หรือเชื่อมต่อกับเครือข่ายประเภทเหล่านี้ได้ด้วยตนเอง
การตรวจสอบ
หากต้องการทดสอบการใช้งานของคุณ ให้รันการทดสอบต่อไปนี้
การทดสอบหน่วย
เรียกใช้ SupplicantStaIfaceHalTest
เพื่อตรวจสอบลักษณะการทำงานของแฟล็กความสามารถสำหรับ WPA3 และ OWE
atest SupplicantStaIfaceHalTest
เรียกใช้ WifiManagerTest
เพื่อตรวจสอบพฤติกรรมของ API สาธารณะสำหรับฟีเจอร์นี้
atest WifiManagerTest
การทดสอบบูรณาการ (ACTS)
หากต้องการเรียกใช้การทดสอบการรวม ให้ใช้ไฟล์ Android Comms Test Suite (ACTS) WifiWpa3OweTest.py
ซึ่งอยู่ใน tools/test/connectivity/acts_tests/tests/google/wifi
การทดสอบวีทีเอส
หากใช้อินเทอร์เฟซ HIDL ให้รัน:
atest VtsHalWifiSupplicantV1_3TargetTest
หากมีการใช้งานอินเทอร์เฟซ AIDL ให้รัน:
atest VtsHalWifiSupplicantStaIfaceTargetTest