Passpoint (Hotspot 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 या इसके बाद के वर्शन वाले डिवाइसों पर Passpoint की सुविधा इस्तेमाल करने के लिए, डिवाइस बनाने वाली कंपनियों को 802.11u के लिए फ़र्मवेयर की सुविधा देनी होगी. Passpoint के साथ काम करने के लिए, अन्य सभी ज़रूरी शर्तें AOSP में शामिल हैं.

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 में शामिल हैं.

पुष्टि करें

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

सेवा की जांच:

atest com.android.server.wifi.hotspot2

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

atest android.net.wifi.hotspot2

Passpoint 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 में दिखाया जाता है और RFC-2045 सेक्शन 6.8 के मुताबिक, base64 कोड में एन्कोड किया जाता है.

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

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

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

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

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

Part 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 सर्टिफ़िकेट पेलोड.
EAP-TLS कुंजी application/x-pkcs12 ईएपी-टीएलएस के लिए ज़रूरी है Base64 में एन्कोड किया गया पीकेसीएस #12 ASN.1 स्ट्रक्चर, जिसमें क्लाइंट सर्टिफ़िकेट की चेन हो. इसमें कम से कम क्लाइंट सर्टिफ़िकेट और उससे जुड़ी निजी कुंजी होनी चाहिए. पीकेसीएस 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 पर सेट है
    • CertSHA256Fingerprint को EAP-TLS पासकोड के MIME सेक्शन में, क्लाइंट सर्टिफ़िकेट के सही SHA-256 डाइजेस्ट पर सेट किया गया हो
  • SIM: EAP-SIM, EAP-AKA, और EAP-AKA' के लिए ज़रूरी है. EAPType फ़ील्ड को सही EAP टाइप पर सेट किया जाना चाहिए. साथ ही, IMSI को डिवाइस में प्रोवाइड करने के समय, उसमें इंस्टॉल किए गए किसी सिम कार्ड के आईएमएसआई से मैच करना चाहिए. IMSI स्ट्रिंग में पूरी तरह से दशमलव अंक हो सकते हैं, ताकि पूरी तरह से मैच करने के लिए मजबूर किया जा सके. इसके अलावा, 5 या 6 दशमलव अंकों के बाद तारे का निशान (*) हो सकता है, ताकि IMSI मैचिंग को सिर्फ़ एमसीसी/एमएनसी तक सीमित किया जा सके. उदाहरण के लिए, आईएमएसआई स्ट्रिंग 123456* किसी भी ऐसे सिम कार्ड से मैच करती है जिसका एमसीसी 123 और एमएनसी 456 है.

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

पुष्टि करने, अनुमति देने, और खाता मैनेज करने (एएए) के लिए अलग-अलग डोमेन नेम

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • नेटवर्क के हिसाब से नाम, Example Network पर सेट किया गया
  • एफ़क्यूडीएन को hotspot.example.net पर सेट किया गया
  • रोमिंग के लिए, रोमिंग कंसोर्टियम के ओआई
  • उपयोगकर्ता नाम user, पासवर्ड password, और example.net पर सेट किए गए रीएल्म के साथ क्रेडेंशियल, जो Base64 कोड में बदला गया है
  • ईएपी का तरीका 21 (EAP-TTLS) पर सेट हो
  • दूसरे चरण का अंदरूनी तरीका 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 पर सेट किया गया
  • एफ़क्यूडीएन को 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 का PLMN आईडी वाला सिम क्रेडेंशियल
  • ईएपी का तरीका 23 (ईएपी-एकेए) पर सेट हो
<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. NAI रीलम ANQP एलिमेंट जोड़ें.
  2. डिवाइस पर इंस्टॉल की गई प्रोफ़ाइल के Realm से मैच करने के लिए, एनएआई रीलम सबफ़ील्ड सेट करें.
  3. ईएपी के हर टाइप के हिसाब से, यह जानकारी सेट करें:

    • EAP-TTLS: EAPMethod(21) और अंदरूनी पुष्टि के लिए इस्तेमाल किए जा सकने वाले टाइप (PAP, CHAP, MS-CHAP या MS-CHAP-V2) सेट करें
    • EAP-TLS: EAPMethod(13) सेट करें
    • EAP-SIM: EAPMethod(18) सेट करें
    • EAP-AKA: EAPMethod(23) सेट करें
    • EAP-AKA': EAPMethod(50) सेट करें

OEM के लिए डिवाइस/AOSP फ़िक्स

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

  • Android 9
  • Android 8.x

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