WPA3 และ Wi-Fi Enhanced Open

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 เพื่อให้แอปสามารถระบุการรองรับอุปกรณ์สำหรับคุณสมบัติเหล่านี้:

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