पासपॉइंट (हॉटस्पॉट 2.0)

Passpoint, Wi-Fi Alliance (WFA) का एक प्रोटोकॉल है. इसकी मदद से, मोबाइल डिवाइसों को इंटरनेट ऐक्सेस देने वाले वाई-फ़ाई हॉटस्पॉट का पता चलता है और उनकी पुष्टि की जा सकती है.

डिवाइस से जुड़ी सहायता

Passpoint के साथ काम करने के लिए, डिवाइस बनाने वाली कंपनियों को Supplicant इंटरफ़ेस लागू करना होगा. Android 13 से, इंटरफ़ेस एचएएल डेफ़िनिशन के लिए एआईडीएल का इस्तेमाल करता है. Android 13 से पहले रिलीज़ किए गए वर्शन के लिए, इंटरफ़ेस और वेंडर पार्टीशन, HIDL का इस्तेमाल करते हैं. HIDL फ़ाइलें hardware/interfaces/supplicant/1.x में और AIDL फ़ाइलें hardware/interfaces/supplicant/aidl में मौजूद हैं. सबमिटर, 802.11u स्टैंडर्ड के साथ काम करता है. खास तौर पर, नेटवर्क डिस्कवरी और चुनने की सुविधाओं के साथ काम करता है. जैसे, जनरल विज्ञापन सेवा (GAS) और ऐक्सेस नेटवर्क क्वेरी प्रोटोकॉल (ANQP).

लागू करना

Android 11 या इसके बाद का वर्शन

Android 11 या उसके बाद के वर्शन वाले डिवाइसों पर पासपॉइंट की सुविधा इस्तेमाल करने के लिए, डिवाइस बनाने वाली कंपनियों को 802.11u के लिए फ़र्मवेयर की सुविधा देनी होगी. पासपॉइंट से जुड़ी अन्य सभी ज़रूरी शर्तें, एओएसपी में शामिल हैं.

Android 10 या इससे पहले का वर्शन

Android 10 या उससे पहले के वर्शन वाले डिवाइसों के लिए, डिवाइस बनाने वाली कंपनियों को फ़्रेमवर्क और एचएएल/फ़र्मवेयर, दोनों के लिए सहायता देनी होगी:

  • फ़्रेमवर्क: Passpoint चालू करना (इसके लिए, सुविधा फ़्लैग की ज़रूरत होती है)
  • फ़र्मवेयर: 802.11u के लिए सहायता

Passpoint के साथ काम करने के लिए, वाई-फ़ाई एचएएल लागू करें और Passpoint के लिए सुविधा फ़्लैग चालू करें. device/<oem>/<device> में मौजूद device.mk में, PRODUCT_COPY_FILES एनवायरमेंट वैरिएबल में बदलाव करें, ताकि Passpoint सुविधा के लिए सहायता शामिल की जा सके:

PRODUCT_COPY_FILES +=
frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml

Passpoint की सुविधा के साथ काम करने के लिए, अन्य सभी ज़रूरी शर्तें AOSP में शामिल हैं.

पुष्टि करें

पासपॉइंट की सुविधा लागू करने की पुष्टि करने के लिए, यहां दिए गए पासपॉइंट पैकेज यूनिट की जांच करें:

सेवा की जांच:

atest com.android.server.wifi.hotspot2

मैनेजर टेस्ट:

atest android.net.wifi.hotspot2

पासपॉइंट R1 का प्रॉविज़निंग

Android 6.0 से, Android में Passpoint R1 काम करता है. इससे, वेब से एक खास फ़ाइल डाउनलोड करके, Passpoint R1 (रिलीज़ 1) के क्रेडेंशियल प्रोवाइड किए जा सकते हैं. इस फ़ाइल में प्रोफ़ाइल और क्रेडेंशियल की जानकारी होती है. क्लाइंट, वाई-फ़ाई की जानकारी के लिए, अपने-आप एक खास इंस्टॉलर लॉन्च करता है. साथ ही, कॉन्टेंट को स्वीकार या अस्वीकार करने से पहले, उपयोगकर्ता को जानकारी के कुछ हिस्से देखने की अनुमति देता है.

फ़ाइल में मौजूद प्रोफ़ाइल की जानकारी का इस्तेमाल, पासपॉइंट की सुविधा वाले ऐक्सेस पॉइंट से हासिल किए गए डेटा से मैच करने के लिए किया जाता है. साथ ही, मैच होने वाले किसी भी नेटवर्क के लिए क्रेडेंशियल अपने-आप लागू हो जाते हैं.

Android के रेफ़रंस के तौर पर लागू किए गए तरीके में, EAP-TTLS, EAP-TLS, EAP-SIM, EAP-AKA, और EAP-AKA' का इस्तेमाल किया जा सकता है.

डाउनलोड करने का तरीका

Passpoint कॉन्फ़िगरेशन फ़ाइल को किसी वेब सर्वर पर होस्ट किया जाना चाहिए और उसे TLS (एचटीटीपीएस) से सुरक्षित किया जाना चाहिए. ऐसा इसलिए, क्योंकि इसमें साफ़ टेक्स्ट पासवर्ड या निजी कुंजी का डेटा हो सकता है. कॉन्टेंट, रैप किए गए एक से ज़्यादा हिस्सों वाले MIME टेक्स्ट से बना होता है. इसे UTF-8 में दिखाया जाता है. साथ ही, इसे आरएफ़सी-2045 के सेक्शन 6.8 के मुताबिक, base64 एन्कोडिंग में एन्कोड किया जाता है.

डिवाइस पर वाई-फ़ाई इंस्टॉलर को अपने-आप लॉन्च करने के लिए, क्लाइंट इन एचटीटीपी हेडर फ़ील्ड का इस्तेमाल करता है:

  • Content-Type को application/x-wifi-config पर सेट किया जाना चाहिए.
  • Content-Transfer-Encoding को base64 पर सेट किया जाना चाहिए.
  • Content-Disposition को सेट नहीं किया जाना चाहिए.

फ़ाइल को वापस पाने के लिए इस्तेमाल किया जाने वाला एचटीटीपी तरीका, GET होना चाहिए. जब भी ब्राउज़र से एचटीटीपी जीईटी के ज़रिए इन एमआईएम हेडर के साथ कोई रिस्पॉन्स मिलता है, तो इंस्टॉलेशन ऐप्लिकेशन शुरू हो जाता है. डाउनलोड, बटन जैसे किसी एचटीएमएल एलिमेंट पर टैप करके ट्रिगर किया जाना चाहिए. डाउनलोड करने के लिए, यूआरएल पर अपने-आप रीडायरेक्ट होने की सुविधा काम नहीं करती. यह सुविधा सिर्फ़ Google Chrome में उपलब्ध है. हो सकता है कि अन्य वेब ब्राउज़र में यह सुविधा उपलब्ध हो या न हो.

फ़ाइल का कंपोज़िशन

Base64 कोड में बदले गए कॉन्टेंट में, MIME मल्टीपार्ट कॉन्टेंट होना चाहिए. साथ ही, उस कॉन्टेंट में multipart/mixed का Content-Type होना चाहिए. यहां दिए गए हिस्सों से, कई हिस्सों वाले कॉन्टेंट के अलग-अलग हिस्से बनते हैं.

पार्ट Content-Type (कम कोट) ज़रूरी है ब्यौरा
प्रोफ़ाइल application/x-passpoint-profile हमेशा OMA-DM SyncML फ़ॉर्मैट वाला पेलोड, जिसमें HomeSP और Credential के लिए, Passpoint R1 PerProviderSubscription फ़ॉर्मैट वाला एमओ शामिल है.
भरोसेमंद सर्टिफ़िकेट application/x-x509-ca-cert EAP-TLS और EAP-TTLS के लिए ज़रूरी है base64 कोड में बदला गया, एक X.509v3 सर्टिफ़िकेट पेलोड.
ईएपी-टीएलएस कुंजी application/x-pkcs12 ईएपी-टीएलएस के लिए ज़रूरी है base64 कोड में बदली गई PKCS #12 ASN.1 संरचना, जिसमें क्लाइंट सर्टिफ़िकेट की चेन है. इसमें कम से कम क्लाइंट सर्टिफ़िकेट और उससे जुड़ी निजी कुंजी है. PKCS 12 कंटेनर के साथ-साथ निजी कुंजी और सर्टिफ़िकेट बिना पासवर्ड वाले साफ़ टेक्स्ट में होने चाहिए.

प्रोफ़ाइल सेक्शन को base64 और UTF-8 में एन्कोड किए गए एक्सएमएल टेक्स्ट के तौर पर ट्रांसफ़र किया जाना चाहिए. यह टेक्स्ट, Passpoint R2 के तकनीकी स्पेसिफ़िकेशन वर्शन 1.0.0 के सेक्शन 9.1 में, HomeSP और Credential सबट्री के हिस्सों के बारे में बताता है.

टॉप-लेवल नोड MgmtTree और उसके ठीक नीचे मौजूद सब-नोड PerProviderSubscription होना चाहिए. एक्सएमएल फ़ाइल का उदाहरण, उदाहरण के तौर पर दी गई प्रोफ़ाइल OMA-DM एक्सएमएल में दिखता है.

HomeSP में, इन सबट्री नोड का इस्तेमाल किया जाता है:

  • FriendlyName: सेट होना चाहिए; डिसप्ले टेक्स्ट के तौर पर इस्तेमाल किया जा सकता है
  • FQDN: ज़रूरी है
  • RoamingConsortiumOI

Credential में, इन सबट्री नोड का इस्तेमाल किया जाता है:

  • Realm: यह कोई खाली स्ट्रिंग नहीं होनी चाहिए
  • UsernamePassword: EAP-TTLS के लिए ज़रूरी है. इसके लिए, ये नोड सेट होने चाहिए:

    • Username: ऐसी स्ट्रिंग जिसमें उपयोगकर्ता नाम शामिल है
    • Password: Base64 में एन्कोड की गई स्ट्रिंग (यहां दिए गए उदाहरण में, cGFzc3dvcmQ= पर सेट की गई, "पासवर्ड" के लिए Base64 में एन्कोड की गई स्ट्रिंग)
    • EAPMethod/EAPType: इसे 21 पर सेट करना ज़रूरी है
    • EAPMethod/InnerMethod: इसे PAP, CHAP, MS-CHAP या MS-CHAP-V2 में से किसी एक पर सेट करना ज़रूरी है
  • DigitalCertificate: EAP-TLS के लिए ज़रूरी है. नीचे दिए गए नोड सेट होने चाहिए:

    • CertificateType, x509v3 पर सेट है
    • ईएपी-टीएलएस कुंजी MIME सेक्शन में CertSHA256Fingerprint को क्लाइंट सर्टिफ़िकेट के सही SHA-256 डाइजेस्ट पर सेट किया गया है
  • SIM: EAP-SIM, EAP-AKA, और EAP-AKA' के लिए ज़रूरी है. EAPType फ़ील्ड को सही EAP टाइप पर सेट किया जाना चाहिए. साथ ही, IMSI को डिवाइस में प्रोवाइड करने के समय, उसमें इंस्टॉल किए गए किसी सिम कार्ड के आईएमएसआई से मैच करना चाहिए. IMSI स्ट्रिंग में पूरी तरह से दशमलव अंक हो सकते हैं, ताकि पूरी तरह से मैच करने के लिए मजबूर किया जा सके. इसके अलावा, 5 या 6 दशमलव अंकों के बाद तारे का निशान (*) हो सकता है, ताकि IMSI मैचिंग को सिर्फ़ एमसीसी/एमएनसी तक सीमित किया जा सके. उदाहरण के लिए, आईएमएसआई स्ट्रिंग 123456* किसी भी ऐसे सिम कार्ड से मैच करती है जिसका एमसीसी 123 और एमएनसी 456 है.

Android 11 में ऐसी सुविधाएं मिलती हैं जिनकी मदद से, Passpoint R1 के प्रावधान को ज़्यादा आसान बनाया जा सकता है.

पुष्टि करने, अनुमति देने, और अकाउंटिंग (AAA) डोमेन नेम को अलग करने का तरीका

जिन पासपॉइंट नेटवर्क के एडमिन को ऐक्सेस नेटवर्क क्वेरी प्रोटोकॉल (एएनक्यूपी) की मदद से नेटवर्क के विज्ञापन में दिखाए गए, पूरी तरह क्वालिफ़ाइड डोमेन नेम (एफ़क्यूडीएन) से अलग एएए डोमेन नेम की ज़रूरत होती है वे Extension सबट्री के नीचे नए नोड में सेमीकॉलन-डीलिमिटेड सूची बना सकते हैं. यह एक वैकल्पिक नोड है. Android 10 या उससे पहले के वर्शन वाले डिवाइसों पर, यह नोड काम नहीं करता.

  • Android: Android एक्सटेंशन का सबट्री

    • AAAServerTrustedNames: एएए सर्वर के भरोसेमंद नामों के लिए ज़रूरी है. साथ ही, इन नोड को सेट करना ज़रूरी है:

      • FQDN: ऐसी स्ट्रिंग जिसमें AAA सर्वर के भरोसेमंद नाम होते हैं. भरोसेमंद नामों को अलग करने के लिए, सेमीकोलन का इस्तेमाल करें. उदाहरण के लिए, example.org;example.com.
खुद हस्ताक्षर करने वाले निजी रूट सीए
पासपॉइंट नेटवर्क के एडमिन, जो अपने सर्टिफ़िकेट को अंदरूनी तौर पर मैनेज करते हैं वे एएए की पुष्टि करने के लिए, खुद ही हस्ताक्षर किए गए निजी सीए की मदद से प्रोफ़ाइलों का प्रावधान कर सकते हैं.
रूट सीए सर्टिफ़िकेट के बिना प्रोफ़ाइलों को इंस्टॉल करने की अनुमति देना
प्रोफ़ाइल में अटैच किए गए रूट सीए सर्टिफ़िकेट का इस्तेमाल, एएए सर्वर की पुष्टि करने के लिए किया जाता है. पासपॉइंट नेटवर्क के ऐसे एडमिन जो एएए सर्वर की पुष्टि करने के लिए, सार्वजनिक तौर पर भरोसेमंद रूट सीए पर भरोसा करना चाहते हैं, वे रूट सीए सर्टिफ़िकेट के बिना प्रोफ़ाइलों का प्रावधान कर सकते हैं. इस मामले में, सिस्टम ट्रस्ट स्टोर में इंस्टॉल किए गए सार्वजनिक रूट सीए सर्टिफ़िकेट के आधार पर, एएए सर्वर सर्टिफ़िकेट की पुष्टि करता है.

Passpoint R2 का प्रावधान करना

Android 10 में, Passpoint R2 की सुविधाओं के साथ काम करने की सुविधा जोड़ी गई है. Passpoint R2 में ऑनलाइन साइन अप (ओएसयू) की सुविधा है. यह नई Passpoint प्रोफ़ाइलों को उपलब्ध कराने का स्टैंडर्ड तरीका है. Android 10 और इसके बाद के वर्शन, ओपन ओएसयू ईएसएस पर SOAP-XML प्रोटोकॉल का इस्तेमाल करके, EAP-TTLS प्रोफ़ाइलों को प्रोवाइड करने की सुविधा देते हैं.

साथ काम करने वाले पासपॉइंट R2 की सुविधाओं के लिए, सिर्फ़ एओएसपी रेफ़रंस कोड की ज़रूरत होती है (किसी ड्राइवर या फ़र्मवेयर की सुविधा की ज़रूरत नहीं होती). एओएसपी रेफ़रंस कोड में, सेटिंग ऐप्लिकेशन में पासपॉइंट R2 यूज़र इंटरफ़ेस (यूआई) को डिफ़ॉल्ट रूप से लागू करने की सुविधा भी शामिल है.

जब Android को Passpoint R2 ऐक्सेस पॉइंट का पता चलता है, तो Android फ़्रेमवर्क:

  1. AP की ओर से वाई-फ़ाई पिकर में सेवा देने वाली उन कंपनियों की सूची दिखाता है जिनका विज्ञापन दिखाया जाता है. इसके लिए, SSID को भी दिखाया जा सकता है.
  2. Passpoint प्रोफ़ाइल सेट अप करने के लिए, उपयोगकर्ता से सेवा देने वाली किसी कंपनी पर टैप करने के लिए कहा जाता है.
  3. यह उपयोगकर्ता को Passpoint प्रोफ़ाइल के सेटअप फ़्लो के बारे में बताता है.
  4. प्रोसेस पूरी होने पर, Passpoint प्रोफ़ाइल इंस्टॉल हो जाती है.
  5. हाल ही में उपलब्ध कराई गई पासपॉइंट प्रोफ़ाइल का इस्तेमाल करके, पासपॉइंट नेटवर्क से कनेक्ट करता है.

Passpoint R3 की सुविधाएं

Android 12 में Passpoint R3 की ये सुविधाएं जोड़ी गई हैं. इनसे उपयोगकर्ता अनुभव बेहतर होता है और नेटवर्क को स्थानीय कानूनों का पालन करने में मदद मिलती है:

नियम और शर्तें

कुछ जगहों और जगहों पर नेटवर्क का ऐक्सेस देने के लिए, नियम और शर्तों को स्वीकार करना कानूनी तौर पर ज़रूरी है. इस सुविधा की मदद से, नेटवर्क डिप्लॉयमेंट में, ओपन नेटवर्क का इस्तेमाल करने वाले असुरक्षित कैप्टिव पोर्टल को सुरक्षित पासपॉइंट नेटवर्क से बदला जा सकता है. नियम और शर्तें स्वीकार करने के लिए, उपयोगकर्ता को एक सूचना दिखाई जाती है.

शर्तों का यूआरएल, एचटीटीपीएस का इस्तेमाल करके सुरक्षित वेबसाइट पर ले जाना चाहिए. अगर यूआरएल किसी असुरक्षित वेबसाइट पर ले जाता है, तो फ़्रेमवर्क तुरंत डिसकनेक्ट हो जाता है और नेटवर्क को ब्लॉक कर देता है.

जगह की जानकारी का यूआरएल

इससे नेटवर्क ऑपरेटर और जगहों को उपयोगकर्ता को अतिरिक्त जानकारी देने की अनुमति मिलती है. जैसे, जगह के मैप, डायरेक्ट्री, प्रमोशन, और कूपन. नेटवर्क कनेक्ट होने पर, उपयोगकर्ता को सूचना दिखती है.

यह ज़रूरी है कि इवेंट की जगह की जानकारी का यूआरएल, एचटीटीपीएस का इस्तेमाल करके किसी सुरक्षित वेबसाइट पर ले जाए. अगर यूआरएल किसी असुरक्षित वेबसाइट पर ले जाता है, तो फ़्रेमवर्क उस यूआरएल को अनदेखा कर देता है और कोई सूचना नहीं दिखाता.

Passpoint की अन्य सुविधाएं

Android 11 में Passpoint की ये सुविधाएं जोड़ी गई हैं. इनसे उपयोगकर्ता अनुभव, बिजली की खपत, और डिप्लॉयमेंट में आसानी को बेहतर बनाया जा सकता है.

खत्म होने की तारीख के हिसाब से नीति उल्लंघन ठीक करने का तरीका और सूचना
प्रोफ़ाइलों पर समयसीमा खत्म होने की तारीख लागू करने से, फ़्रेमवर्क को ऐक्सेस पॉइंट से अपने-आप कनेक्ट होने से रोका जा सकता है. ऐसा उन क्रेडेंशियल के साथ होता है जिनकी समयसीमा खत्म हो चुकी है. इससे, एयरटाइम का इस्तेमाल नहीं होता. साथ ही, बैटरी और बैकएंड के लिए इस्तेमाल होने वाली बैंडविड्थ भी बचती है. जब उपयोगकर्ता की प्रोफ़ाइल से मैच करने वाला नेटवर्क, रीच में हो और प्रोफ़ाइल की समयसीमा खत्म हो गई हो, तब फ़्रेमवर्क उपयोगकर्ता को सूचना दिखाता है.
एक जैसी एफ़क्यूडीएन वाली कई प्रोफ़ाइलें
मोबाइल और इंटरनेट सेवा देने वाली ऐसी कंपनियां जो पासपॉइंट नेटवर्क डिप्लॉय करती हैं और कई पब्लिक लैंड मोबाइल नेटवर्क (पीएलएमएन) आईडी का इस्तेमाल करती हैं वे एक ही एफ़क्यूडीएन के साथ कई पासपॉइंट प्रोफ़ाइल जोड़ सकती हैं. यह हर पीएलएमएन आईडी के लिए एक पासपॉइंट होती है. यह आईडी, इंस्टॉल किए गए सिम कार्ड से अपने-आप मैच होता है और इसे नेटवर्क से कनेक्ट करने के लिए इस्तेमाल किया जाता है.

Android 12 में ये पासपॉइंट की सुविधाएं मिलती हैं. इनसे उपयोगकर्ता अनुभव, बैटरी के इस्तेमाल, और डिप्लॉयमेंट को ज़्यादा आसान बनाने में मदद मिलती है:

सजावटी आइडेंटिटी प्रीफ़िक्स
प्रीफ़िक्स डेकोरेशन वाले नेटवर्क की पुष्टि करते समय, डेकोरेट की गई पहचान के प्रीफ़िक्स की मदद से नेटवर्क ऑपरेटर, नेटवर्क ऐक्सेस आइडेंटिफ़ायर (एनएआई) को अपडेट कर सकते हैं. इससे, एएए नेटवर्क में कई प्रॉक्सी के ज़रिए साफ़ तौर पर रूटिंग की जा सकती है. ज़्यादा जानकारी के लिए, आरएफ़सी 7542 देखें. Android 12, इस सुविधा को PPS-MO एक्सटेंशन के लिए WBA की शर्तों के मुताबिक लागू करता है.
खाते से पुष्टि करने की प्रक्रिया को जल्द ही बंद किया जा रहा है
इससे नेटवर्क ऑपरेटर, किसी डिवाइस को यह सिग्नल दे सकते हैं कि नेटवर्क की पुष्टि करने के लिए इस्तेमाल किए गए क्रेडेंशियल के लिए, सेवा कुछ समय के लिए उपलब्ध नहीं है. यह समय, टाइम आउट में देरी के ज़रिए तय किया जाता है. यह सिग्नल मिलने के बाद, डिवाइस उसी क्रेडेंशियल से नेटवर्क से दोबारा कनेक्ट करने की कोशिश तब तक नहीं करेंगे, जब तक टाइम आउट की अवधि खत्म नहीं हो जाती. इसके उलट, जिन डिवाइसों पर यह सुविधा काम नहीं करती वे सेवा उपलब्ध न होने पर, नेटवर्क से बार-बार कनेक्ट करने की कोशिश कर सकते हैं.

OMA-DM PerProviderSubscription-MO एक्सएमएल प्रोफ़ाइल के उदाहरण

उपयोगकर्ता नाम/पासवर्ड क्रेडेंशियल वाली प्रोफ़ाइल (EAP-TTLS)

नीचे दिए गए उदाहरण में, ऐसे नेटवर्क की प्रोफ़ाइल दिखाई गई है जिसमें:

  • नेटवर्क के हिसाब से नाम, Example Network पर सेट किया गया
  • FQDN को hotspot.example.net पर सेट किया गया
  • रोमिंग के लिए, रोमिंग कंसोर्टियम के ओआई
  • उपयोगकर्ता नाम user, पासवर्ड password, और example.net पर सेट किए गए रीएल्म के साथ क्रेडेंशियल, जो Base64 के साथ कोड में बदला गया है
  • ईएपी का तरीका 21 (EAP-TTLS) पर सेट हो
  • फ़ेज़-2 के इनर मेथड को MS-CHAP-V2 पर सेट किया गया
  • वैकल्पिक AAA डोमेन नाम trusted.com और trusted.net पर सेट किए गए
<MgmtTree xmlns="syncml:dmddf1.2">
  <VerDTD>1.2</VerDTD>
  <Node>
    <NodeName>PerProviderSubscription</NodeName>
    <RTProperties>
      <Type>
        <DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
      </Type>
    </RTProperties>
    <Node>
      <NodeName>i001</NodeName>
      <Node>
        <NodeName>HomeSP</NodeName>
        <Node>
          <NodeName>FriendlyName</NodeName>
          <Value>Example Network</Value>
        </Node>
        <Node>
          <NodeName>FQDN</NodeName>
          <Value>hotspot.example.net</Value>
        </Node>
        <Node>
          <NodeName>RoamingConsortiumOI</NodeName>
          <Value>112233,445566</Value>
        </Node>
      </Node>
      <Node>
        <NodeName>Credential</NodeName>
        <Node>
          <NodeName>Realm</NodeName>
          <Value>example.net</Value>
        </Node>
        <Node>
          <NodeName>UsernamePassword</NodeName>
          <Node>
            <NodeName>Username</NodeName>
            <Value>user</Value>
          </Node>
          <Node>
            <NodeName>Password</NodeName>
            <Value>cGFzc3dvcmQ=</Value>
          </Node>
          <Node>
            <NodeName>EAPMethod</NodeName>
            <Node>
              <NodeName>EAPType</NodeName>
              <Value>21</Value>
            </Node>
            <Node>
              <NodeName>InnerMethod</NodeName>
              <Value>MS-CHAP-V2</Value>
            </Node>
          </Node>
        </Node>
      </Node>
      <Node>
        <NodeName>Extension</NodeName>
        <Node>
            <NodeName>Android</NodeName>
            <Node>
                <NodeName>AAAServerTrustedNames</NodeName>
                <Node>
                    <NodeName>FQDN</NodeName>
                    <Value>trusted.com;trusted.net</Value>
                </Node>
            </Node>
        </Node>
      </Node>
    </Node>
  </Node>
</MgmtTree>

डिजिटल सर्टिफ़िकेट क्रेडेंशियल (EAP-TLS) वाली प्रोफ़ाइल

नीचे दिए गए उदाहरण में, ऐसे नेटवर्क की प्रोफ़ाइल दिखाई गई है जिसमें:

  • नेटवर्क के हिसाब से नाम, GlobalRoaming पर सेट किया गया
  • FQDN को globalroaming.net पर सेट किया गया
  • रोमिंग कंसॉर्टियम के ओआई (रोमिंग के लिए)
  • रीयलम को users.globalroaming.net पर सेट किया गया
  • डिजिटल सर्टिफ़िकेट वाला क्रेडेंशियल, जिसमें दिया गया फ़िंगरप्रिंट मौजूद हो
<MgmtTree xmlns="syncml:dmddf1.2">
  <VerDTD>1.2</VerDTD>
  <Node>
    <NodeName>PerProviderSubscription</NodeName>
    <RTProperties>
      <Type>
        <DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
      </Type>
    </RTProperties>
    <Node>
      <NodeName>i001</NodeName>
      <Node>
        <NodeName>HomeSP</NodeName>
        <Node>
          <NodeName>FriendlyName</NodeName>
          <Value>GlobalRoaming</Value>
        </Node>
        <Node>
          <NodeName>FQDN</NodeName>
          <Value>globalroaming.net</Value>
        </Node>
        <Node>
          <NodeName>RoamingConsortiumOI</NodeName>
          <Value>FFEEDDCC0,FFEEDDCC1,009999,008888</Value>
        </Node>
      </Node>
      <Node>
        <NodeName>Credential</NodeName>
        <Node>
          <NodeName>Realm</NodeName>
          <Value>users.globalroaming.net</Value>
        </Node>
        <Node>
          <NodeName>DigitalCertificate</NodeName>
          <Node>
            <NodeName>CertificateType</NodeName>
            <Value>x509v3</Value>
          </Node>
          <Node>
            <NodeName>CertSHA256Fingerprint</NodeName>
            <Value>0ef08a3d2118700474ca51fa25dc5e6d3d63d779aaad8238b608a853761da533</Value>
          </Node>
        </Node>
      </Node>
    </Node>
  </Node>
</MgmtTree>

सिम क्रेडेंशियल (EAP-AKA) वाली प्रोफ़ाइल

नीचे दिए गए उदाहरण में, ऐसे नेटवर्क की प्रोफ़ाइल दिखाई गई है जिसमें:

  • नेटवर्क के हिसाब से नाम, Purple Passpoint पर सेट किया गया
  • एफ़क्यूडीएन को wlan.mnc888.mcc999.3gppnetwork.org पर सेट किया गया
  • 999888 का पीएलएमएन आईडी वाला सिम क्रेडेंशियल
  • ईएपी का तरीका 23 (EAN-AKA) पर सेट किया गया
<MgmtTree xmlns="syncml:dmddf1.2">
  <VerDTD>1.2</VerDTD>
  <Node>
    <NodeName>PerProviderSubscription</NodeName>
    <RTProperties>
      <Type>
        <DDFName>urn:wfa:mo:hotspot2dot0-perprovidersubscription:1.0</DDFName>
      </Type>
    </RTProperties>
    <Node>
      <NodeName>i001</NodeName>
      <Node>
        <NodeName>HomeSP</NodeName>
        <Node>
          <NodeName>FriendlyName</NodeName>
          <Value>Purple Passpoint</Value>
        </Node>
        <Node>
          <NodeName>FQDN</NodeName>
          <Value>purplewifi.com</Value>
        </Node>
      </Node>
      <Node>
        <NodeName>Credential</NodeName>
        <Node>
          <NodeName>Realm</NodeName>
          <Value>wlan.mnc888.mcc999.3gppnetwork.org</Value>
        </Node>
        <Node>
          <NodeName>SIM</NodeName>
          <Node>
            <NodeName>IMSI</NodeName>
            <Value>999888*</Value>
          </Node>
          <Node>
            <NodeName>EAPType</NodeName>
            <Value>23</Value>
          </Node>
        </Node>
      </Node>
    </Node>
  </Node>
</MgmtTree>

पुष्टि करने से जुड़ी सलाह

Android 8.x या Android 9 पर काम करने वाले ऐसे डिवाइस जो Passpoint R1 EAP-SIM, EAP-AKA या EAP-AKA' प्रोफ़ाइल का इस्तेमाल करते हैं, वे Passpoint नेटवर्क से अपने-आप कनेक्ट नहीं होंगे. इस समस्या की वजह से, वाई-फ़ाई से डेटा ट्रांसफ़र करने की सुविधा कम हो जाती है. इससे उपयोगकर्ताओं, मोबाइल और इंटरनेट सेवा देने वाली कंपनियों, और सेवाओं पर असर पड़ता है.

सेगमेंट असर इफ़ेक्ट का साइज़
मोबाइल और इंटरनेट सेवा देने वाली कंपनियां और Passpoint की सेवा देने वाली कंपनियां मोबाइल नेटवर्क पर लोड बढ़ गया. Passpoint R1 का इस्तेमाल करने वाली कोई भी मोबाइल और इंटरनेट सेवा देने वाली कंपनी.
उपयोगकर्ता मोबाइल और इंटरनेट सेवा देने वाली कंपनी के वाई-फ़ाई ऐक्सेस पॉइंट (एपी) से अपने-आप कनेक्ट न होने की वजह से, डेटा की लागत ज़्यादा हो जाती है. ऐसा कोई भी उपयोगकर्ता जिसके पास ऐसा डिवाइस हो जो मोबाइल और इंटरनेट सेवा देने वाली कंपनी के ऐसे नेटवर्क पर काम करता हो जो Passpoint R1 के साथ काम करता हो.

पुष्टि न होने की वजह

Passpoint, विज्ञापन में बताई गई (ANQP) सेवा देने वाली कंपनी को डिवाइस पर इंस्टॉल की गई प्रोफ़ाइल से मैच करने का तरीका बताता है. EAP-SIM, EAP-AKA, और EAP-AKA' के लिए मैच करने वाले ये नियम, नियमों का एक छोटा सेट है. इनमें EAP-SIM/AKA/AKA' के काम न करने पर ध्यान दिया गया है:

If the FQDN (Fully Qualified Domain Name) matches
    then the service is a Home Service Provider.
Else: If the PLMN ID (3GPP Network) matches
    then the service is a Roaming Service Provider.

Android 8.0 में, दूसरे मानदंड में बदलाव किया गया था:

Else: If the PLMN ID (3GPP Network) matches AND the NAI Realm matches
    then the service is a Roaming Service Provider.

इस बदलाव के बाद, सिस्टम को पहले काम करने वाले सेवा देने वाली कंपनियों से कोई मैच नहीं मिला. इसलिए, Passpoint डिवाइस अपने-आप कनेक्ट नहीं हुए.

समाधान

मैच करने की बदली गई शर्तों से जुड़ी समस्या को हल करने के लिए, कैरियर और सेवा देने वाली कंपनियों को Passpoint एपी से पब्लिश की गई जानकारी में नेटवर्क ऐक्सेस आइडेंटिफ़ायर (एनएआई) रीलम जोड़ना होगा.

हमारा सुझाव है कि नेटवर्क सेवा देने वाली कंपनियां, नेटवर्क के लिए कोई ऐसा तरीका लागू करें जिससे डिप्लॉयमेंट में कम से कम समय लगे. डिवाइस के लिए, इस समस्या को हल करने का तरीका इस बात पर निर्भर करता है कि OEM, AOSP से बदलावों की सूची (सीएल) को कैसे चुनते हैं और फिर डिवाइसों को फ़ील्ड में कैसे अपडेट करते हैं.

मोबाइल और इंटरनेट सेवा देने वाली कंपनियों और Passpoint सेवा देने वाली कंपनियों के लिए नेटवर्क से जुड़ी समस्या हल करना

नेटवर्क साइड के लिए, NAI realm ANQP एलिमेंट जोड़ने के लिए, नेटवर्क को फिर से कॉन्फ़िगर करना होगा. इसके बारे में यहां बताया गया है. Passpoint के स्पेसिफ़िकेशन के मुताबिक, NAI रीलम ANQP एलिमेंट की ज़रूरत नहीं होती. हालांकि, इस प्रॉपर्टी को जोड़ने से Passpoint के स्पेसिफ़िकेशन का पालन होता है. इसलिए, स्पेसिफ़िकेशन के मुताबिक क्लाइंट लागू करने में कोई रुकावट नहीं आनी चाहिए.

  1. एनएआई रीलम ANQP एलिमेंट जोड़ें.
  2. डिवाइस पर इंस्टॉल की गई प्रोफ़ाइल के Realm से मैच करने के लिए, एनएआई रीलम सबफ़ील्ड सेट करें.
  3. ईएपी के हर टाइप के हिसाब से, यह जानकारी सेट करें:

    • ईएपी-टीटीएलएस: EAPMethod(21) और काम करने वाले इनर ऑथ टाइप (PAP, CHAP, MS-CHAP या MS-CHAP-V2) सेट करें
    • EAP-TLS: EAPMethod(13) सेट करें
    • EAP-SIM: EAPMethod(18) सेट करें
    • ईएपी-अका: EAPMethod(23) सेट करें
    • EAP-AKA': EAPMethod(50) सेट करें

OEM के लिए डिवाइस/AOSP तय करें

डिवाइस के लिए, समस्या को हल करने का तरीका लागू करने के लिए, OEM को पैच CL aosp/718508 चुनना होगा. यह पैच, यहां दी गई रिलीज़ के ऊपर लागू किया जा सकता है. यह Android 10 या उसके बाद के वर्शन पर लागू नहीं होता:

  • Android 9
  • Android 8.x

पैच चुनने के बाद, OEM को फ़ील्ड में डिवाइसों को अपडेट करना होगा.