WPA3 और वाई-फ़ाई Enhanced Open

Android 10 में, Wi-Fi Alliance (WFA) के Wi-Fi Protected Access वर्शन 3 (WPA3) और Wi-Fi Enhanced Open स्टैंडर्ड के साथ काम करने की सुविधा जोड़ी गई है. ज़्यादा जानकारी के लिए, WFA की साइट पर सुरक्षा देखें.

WPA3, निजी और एंटरप्राइज़ नेटवर्क के लिए, WFA का नया सुरक्षा स्टैंडर्ड है. इसका मकसद, आधुनिक सुरक्षा एल्गोरिदम और बेहतर सिफर सुइट का इस्तेमाल करके, वाई-फ़ाई की सुरक्षा को बेहतर बनाना है. WPA3 के दो हिस्से होते हैं:

  • WPA3-Personal: यह पहले से शेयर की गई कुंजी (पीएसके) के बजाय, एक साथ पुष्टि करने की सुविधा (एसएई) का इस्तेमाल करता है. इससे उपयोगकर्ताओं को ऑफ़लाइन डिक्शनरी हमलों, कुंजी वापस पाने, और मैसेज फ़ोर्ज करने जैसे हमलों से ज़्यादा सुरक्षा मिलती है.
  • WPA3-एंटरप्राइज़: यह पुष्टि करने और लिंक-लेयर एन्क्रिप्शन के बेहतर तरीके उपलब्ध कराता है. साथ ही, यह सुरक्षा से जुड़े संवेदनशील एनवायरमेंट के लिए, 192-बिट का सुरक्षा मोड भी उपलब्ध कराता है. हालांकि, इसका इस्तेमाल करना ज़रूरी नहीं है.

वाई-फ़ाई बेहतर ओपन, सार्वजनिक नेटवर्क के लिए WFA का एक नया सुरक्षा स्टैंडर्ड है. यह ऑपर्च्यूनिस्टिक वायरलेस एन्क्रिप्शन (ओडब्ल्यूई) पर आधारित है. यह कैफ़े, होटल, रेस्टोरेंट, और लाइब्रेरी जैसे इलाकों में, खुले और पासवर्ड से सुरक्षित नहीं किए गए नेटवर्क पर एन्क्रिप्शन और निजता की सुविधा देता है. बेहतर Open, पुष्टि करने की सुविधा नहीं देता.

WPA3 और Wi-Fi Enhanced Open, वाई-फ़ाई की सुरक्षा को बेहतर बनाते हैं. साथ ही, इनसे आपको बेहतर निजता मिलती है और जाने-पहचाने हमलों से बचाव करने में मदद मिलती है. कई डिवाइसों पर अब तक ये स्टैंडर्ड काम नहीं करते हैं या इन सुविधाओं के साथ काम करने के लिए, इनमें सॉफ़्टवेयर अपग्रेड नहीं किए गए हैं. इसलिए, 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 हैश-टू-एलिमेंट (H2E) ऑथेंटिकेशन एक्सचेंज की सुविधा भी काम करती है. ज़्यादा जानकारी के लिए, WPA3 स्पेसिफ़िकेशन देखें.

WPA3 और Wi-Fi Enhanced Open सिर्फ़ क्लाइंट मोड में काम करते हैं.

लागू करना

WPA3 और Wi-Fi Enhanced Open के साथ काम करने के लिए, Supplicant HAL इंटरफ़ेस लागू करें. Android 13 से, इंटरफ़ेस एचएएल डेफ़िनिशन के लिए एआईडीएल का इस्तेमाल करता है. Android 13 से पहले रिलीज़ किए गए वर्शन के लिए, इंटरफ़ेस और वेंडर पार्टिशन, HIDL का इस्तेमाल करते हैं. HIDL इंटरफ़ेस hardware/interfaces/wifi/supplicant/1.3/ में और AIDL इंटरफ़ेस hardware/interfaces/wifi/supplicant/aidl/ में मिल सकता है,

WPA3 और OWE का इस्तेमाल करने के लिए, ये ज़रूरी हैं:

  • SAE और OWE के साथ काम करने के लिए, Linux कर्नेल पैच

    • cfg80211
    • nl80211
  • wpa_supplicant SAE, SUITEB192, और OWE के साथ काम करने वाला

  • SAE, SUITEB192, और OWE के साथ काम करने वाला वाई-फ़ाई ड्राइवर

  • SAE, SUITEB192, और OWE के साथ काम करने वाला वाई-फ़ाई फ़र्मवेयर

  • WPA3 और OWE के साथ काम करने वाली वाई-फ़ाई चिप

Android 10 में सार्वजनिक एपीआई के तरीके उपलब्ध हैं, ताकि ऐप्लिकेशन यह तय कर सकें कि डिवाइस पर ये सुविधाएं काम करती हैं या नहीं:

WifiConfiguration.java में, कुंजी मैनेजमेंट के नए टाइप के साथ-साथ, एक साथ दो एलिमेंट को एन्क्रिप्ट करने वाले सिफर, ग्रुप सिफर, ग्रुप मैनेजमेंट सिफर, और Suite B सिफर शामिल हैं. ये OWE, WPA3-Personal, और WPA3-Enterprise के लिए ज़रूरी हैं.

WPA3 और Wi-Fi Enhanced Open को चालू करना

Android फ़्रेमवर्क में WPA3-Personal, WPA3-Enterprise, और Wi-Fi बेहतर ओपन को चालू करने के लिए:

  • WPA3-निजी: wpa_supplicant कॉन्फ़िगरेशन फ़ाइल में, CONFIG_SAE कंपाइल करने का विकल्प शामिल करें.

    # WPA3-Personal (SAE)
    CONFIG_SAE=y
    
  • WPA3-Enterprise: wpa_supplicant कॉन्फ़िगरेशन फ़ाइल में, CONFIG_SUITEB192 और CONFIG_SUITEB संकलन के विकल्प शामिल करें.

    # WPA3-Enterprise (SuiteB-192)
    CONFIG_SUITEB=y
    CONFIG_SUITEB192=y
    
  • Wi-Fi बेहतर ओपन: wpa_supplicant कॉन्फ़िगरेशन फ़ाइल में, CONFIG_OWE कंपाइलेशन विकल्प शामिल करें.

    # Opportunistic Wireless Encryption (OWE)
    # Experimental implementation of draft-harkins-owe-07.txt
    CONFIG_OWE=y
    

अगर WPA3-Personal, WPA3-Enterprise या Wi-Fi Enhanced Open चालू नहीं हैं, तो उपयोगकर्ता इन टाइप के नेटवर्क को मैन्युअल तरीके से नहीं जोड़ पाएंगे, स्कैन नहीं कर पाएंगे या इनसे कनेक्ट नहीं कर पाएंगे.

पुष्टि करें

लागू की गई ट्रैकिंग की जांच करने के लिए, ये टेस्ट चलाएं.

यूनिट टेस्ट

WPA3 और OWE के लिए, कैपेबिलिटी फ़्लैग के व्यवहार की पुष्टि करने के लिए, SupplicantStaIfaceHalTest को चलाएं.

atest SupplicantStaIfaceHalTest

इस सुविधा के लिए, सार्वजनिक एपीआई के व्यवहार की पुष्टि करने के लिए, WifiManagerTest को चलाएं.

atest WifiManagerTest

वीटीएस टेस्ट

अगर HIDL इंटरफ़ेस लागू किया गया है, तो:

atest VtsHalWifiSupplicantV1_3TargetTest

अगर AIDL इंटरफ़ेस लागू किया गया है, तो:

atest VtsHalWifiSupplicantStaIfaceTargetTest