WPA3 และ Wi-Fi Enhanced Open

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 เพื่ออนุญาตให้แอประบุการรองรับฟีเจอร์ต่อไปนี้ของอุปกรณ์

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