WPA3 และ Wi-Fi Enhanced Open

Android 10 แนะนำการรองรับ Wi-Fi Alliance's (WFA) Wi-Fi Protected Access เวอร์ชัน 3 (WPA3) และมาตรฐานเปิด Wi-Fi Enhanced สำหรับข้อมูลเพิ่มเติม โปรดดู ที่ ความปลอดภัย ในไซต์ WFA

WPA3 เป็นมาตรฐานความปลอดภัย WFA ใหม่สำหรับเครือข่ายส่วนบุคคลและองค์กร มีจุดมุ่งหมายเพื่อปรับปรุงความปลอดภัย Wi-Fi โดยรวมโดยใช้อัลกอริธึมความปลอดภัยที่ทันสมัยและชุดการเข้ารหัสที่แข็งแกร่งขึ้น WPA3 มีสองส่วน:

  • WPA3-Personal: ใช้การรับรองความถูกต้องของค่าเท่ากับ (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 ให้ใช้ภาษาการออกแบบอินเทอร์เฟซ HAL ของผู้ร้องขอ (HIDL) ที่ให้ไว้ใน Android Open Source Project (AOSP) ที่ hardware/interfaces/wifi/supplicant/1.3/

สิ่งต่อไปนี้จำเป็นเพื่อรองรับ 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 ผู้ใช้จะไม่สามารถเพิ่ม สแกน หรือเชื่อมต่อกับเครือข่ายประเภทนี้ได้ด้วยตนเอง

การตรวจสอบความถูกต้อง

ในการทดสอบการใช้งานของคุณ ให้รันการทดสอบต่อไปนี้

การทดสอบหน่วย

เรียกใช้ 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

การทดสอบ VTS

รัน VtsHalWifiSupplicantV1_3TargetTest เพื่อทดสอบพฤติกรรมของผู้ร้องขอ HAL 1.3

vts-tradefed run commandAndExit vts --skip-all-system-status-check --primary-abi-only --skip-preconditions --module VtsHalWifiSupplicantV1_3Target