পাসপয়েন্ট (হটস্পট 2.0)

পাসপয়েন্ট হল একটি ওয়াই-ফাই অ্যালায়েন্স (WFA) প্রোটোকল যা মোবাইল ডিভাইসগুলিকে ইন্টারনেট অ্যাক্সেস সরবরাহকারী ওয়াই-ফাই হটস্পটগুলি আবিষ্কার এবং প্রমাণীকরণ করতে সক্ষম করে।

ডিভাইস সাপোর্ট

পাসপয়েন্ট সমর্থন করার জন্য, ডিভাইস নির্মাতাদের সাপ্লিক্যান্ট ইন্টারফেসটি বাস্তবায়ন করতে হবে। অ্যান্ড্রয়েড ১৩ থেকে শুরু করে, ইন্টারফেসটি HAL সংজ্ঞার জন্য AIDL ব্যবহার করে। অ্যান্ড্রয়েড ১৩ এর আগে রিলিজের জন্য, ইন্টারফেস এবং বিক্রেতা পার্টিশনগুলি HIDL ব্যবহার করে। HIDL ফাইলগুলি hardware/interfaces/supplicant/1.x এবং AIDL ফাইলগুলি hardware/interfaces/supplicant/aidl এ থাকে। সাপ্লিক্যান্ট 802.11u স্ট্যান্ডার্ডের জন্য সমর্থন প্রদান করে, বিশেষ করে নেটওয়ার্ক আবিষ্কার এবং নির্বাচন বৈশিষ্ট্য যেমন জেনেরিক বিজ্ঞাপন পরিষেবা (GAS) এবং অ্যাক্সেস নেটওয়ার্ক কোয়েরি প্রোটোকল (ANQP)।

বাস্তবায়ন

পাসপয়েন্ট বাস্তবায়ন অ্যান্ড্রয়েড সংস্করণের উপর নির্ভর করে পরিবর্তিত হয়।

অ্যান্ড্রয়েড ১১ বা তার উচ্চতর

অ্যান্ড্রয়েড ১১ বা তার পরবর্তী ভার্সনে চলমান ডিভাইসগুলিতে পাসপয়েন্ট সমর্থন করার জন্য, ডিভাইস নির্মাতাদের ৮০২.১১u এর জন্য ফার্মওয়্যার সমর্থন প্রদান করতে হবে। পাসপয়েন্ট সমর্থন করার জন্য অন্যান্য সমস্ত প্রয়োজনীয়তা AOSP-তে অন্তর্ভুক্ত।

অ্যান্ড্রয়েড ১০ বা তার নিচের ভার্সন

অ্যান্ড্রয়েড ১০ বা তার নিচের ভার্সনে চলমান ডিভাইসগুলির জন্য, ডিভাইস নির্মাতাদের ফ্রেমওয়ার্ক এবং HAL এবং ফার্মওয়্যার সমর্থন উভয়ই প্রদান করতে হবে:

  • ফ্রেমওয়ার্ক: পাসপয়েন্ট সক্ষম করুন (একটি বৈশিষ্ট্য পতাকা প্রয়োজন)
  • ফার্মওয়্যার: 802.11u এর জন্য সমর্থন

পাসপয়েন্ট সমর্থন করার জন্য, Wi-Fi HAL বাস্তবায়ন করুন এবং পাসপয়েন্টের জন্য বৈশিষ্ট্য ফ্ল্যাগ সক্ষম করুন। device/<oem>/<device> এ অবস্থিত device.mk এ, পাসপয়েন্ট বৈশিষ্ট্যের জন্য সমর্থন অন্তর্ভুক্ত করতে PRODUCT_COPY_FILES পরিবেশ ভেরিয়েবলটি পরিবর্তন করুন:

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

পাসপয়েন্ট সমর্থন করার জন্য অন্যান্য সমস্ত প্রয়োজনীয়তা AOSP-তে অন্তর্ভুক্ত।

বৈধতা

পাসপয়েন্ট বৈশিষ্ট্যটির বাস্তবায়ন যাচাই করতে, নিম্নলিখিত পাসপয়েন্ট প্যাকেজ ইউনিট পরীক্ষাগুলি চালান:

পরিষেবা পরীক্ষা:

atest com.android.server.wifi.hotspot2

ম্যানেজার পরীক্ষা:

atest android.net.wifi.hotspot2

পাসপয়েন্ট R1 প্রভিশনিং

অ্যান্ড্রয়েড ৬.০ থেকে পাসপয়েন্ট R1 সমর্থন করে আসছে, যা প্রোফাইল এবং শংসাপত্রের তথ্য ধারণকারী একটি বিশেষ ফাইল ওয়েব-ভিত্তিক ডাউনলোডের মাধ্যমে পাসপয়েন্ট R1 (রিলিজ 1) শংসাপত্রের ব্যবস্থা করার অনুমতি দেয়। ক্লায়েন্ট স্বয়ংক্রিয়ভাবে ওয়াই-ফাই তথ্যের জন্য একটি বিশেষ ইনস্টলার চালু করে এবং ব্যবহারকারীকে সামগ্রী গ্রহণ বা প্রত্যাখ্যান করার আগে তথ্যের কিছু অংশ দেখতে দেয়।

ফাইলটিতে থাকা প্রোফাইল তথ্য পাসপয়েন্ট-সক্ষম অ্যাক্সেস পয়েন্ট থেকে প্রাপ্ত ডেটার সাথে মিলের জন্য ব্যবহৃত হয় এবং শংসাপত্রগুলি স্বয়ংক্রিয়ভাবে যেকোনো মিলিত নেটওয়ার্কের জন্য প্রয়োগ করা হয়।

অ্যান্ড্রয়েড রেফারেন্স বাস্তবায়ন EAP-TTLS, EAP-TLS, EAP-SIM, EAP-AKA, এবং EAP-AKA' সমর্থন করে।

ডাউনলোড প্রক্রিয়া

পাসপয়েন্ট কনফিগারেশন ফাইলটি অবশ্যই একটি ওয়েব সার্ভারে হোস্ট করা উচিত এবং TLS (HTTPS) দিয়ে সুরক্ষিত থাকা উচিত কারণ এতে স্পষ্ট টেক্সট পাসওয়ার্ড বা প্রাইভেট কী ডেটা থাকতে পারে। কন্টেন্টটি UTF-8 তে উপস্থাপিত এবং RFC-2045 বিভাগ 6.8 অনুসারে base64 এনকোডিংয়ে এনকোড করা মাল্টিপার্ট MIME টেক্সট দিয়ে তৈরি।

ডিভাইসে স্বয়ংক্রিয়ভাবে একটি Wi-Fi ইনস্টলার চালু করতে ক্লায়েন্ট নিম্নলিখিত HTTP হেডার ক্ষেত্রগুলি ব্যবহার করে:

  • Content-Type অবশ্যই application/x-wifi-config এ সেট করতে হবে।
  • Content-Transfer-Encoding অবশ্যই base64 এ সেট করতে হবে।
  • Content-Disposition সেট করা উচিত নয়।

ফাইলটি পুনরুদ্ধার করার জন্য ব্যবহৃত HTTP পদ্ধতিটি GET হতে হবে। ব্রাউজার থেকে যখনই কোনও HTTP GET এই MIME হেডারগুলির সাথে একটি প্রতিক্রিয়া পায়, তখনই ইনস্টলেশন অ্যাপটি শুরু হয়। ডাউনলোডটি একটি HTML উপাদান যেমন একটি বোতামে ট্যাপ করে ট্রিগার করতে হবে (ডাউনলোড URL-এ স্বয়ংক্রিয় পুনঃনির্দেশনা সমর্থিত নয়)। এই আচরণটি Google Chrome-এর জন্য নির্দিষ্ট; অন্যান্য ওয়েব ব্রাউজারগুলি একই রকম কার্যকারিতা প্রদান করতে পারে বা নাও করতে পারে।

ফাইল রচনা

Base64 এনকোডেড কন্টেন্টে MIME মাল্টিপার্ট কন্টেন্ট থাকতে হবে এবং এর একটি Content-Type multipart/mixed থাকবে। নিম্নলিখিত অংশগুলি মাল্টিপার্ট কন্টেন্টের পৃথক অংশগুলি তৈরি করে।

অংশ কন্টেন্ট-টাইপ (উদ্ধৃতি কম) প্রয়োজনীয় বিবরণ
প্রোফাইলের application/x-passpoint-profile সর্বদা OMA-DM SyncML ফর্ম্যাট করা পেলোড যাতে HomeSP এবং Credential জন্য Passpoint R1 PerProviderSubscription ফর্ম্যাট করা MO থাকে।
ট্রাস্ট সার্টিফিকেট application/x-x509-ca-cert EAP-TLS এবং EAP-TTLS এর জন্য প্রয়োজনীয় একটি একক X.509v3 বেস64-এনকোডেড সার্টিফিকেট পেলোড।
EAP-TLS কী application/x-pkcs12 EAP-TLS এর জন্য প্রয়োজনীয় একটি base64-এনকোডেড PKCS #12 ASN.1 কাঠামো যাতে কমপক্ষে ক্লায়েন্ট সার্টিফিকেট এবং সংশ্লিষ্ট প্রাইভেট কী সহ একটি ক্লায়েন্ট সার্টিফিকেট চেইন থাকে। PKCS 12 কন্টেইনারের পাশাপাশি প্রাইভেট কী এবং সার্টিফিকেটগুলি অবশ্যই স্পষ্ট লেখায় থাকবে এবং কোনও পাসওয়ার্ড থাকবে না।

প্রোফাইল বিভাগটি অবশ্যই base64-এনকোডেড, UTF-8-এনকোডেড XML টেক্সট হিসেবে স্থানান্তর করতে হবে যা পাসপয়েন্ট R2 টেকনিক্যাল স্পেসিফিকেশন সংস্করণ 1.0.0, বিভাগ 9.1-এ HomeSP এবং Credential সাবট্রির অংশ নির্দিষ্ট করে।

শীর্ষ-স্তরের নোডটি অবশ্যই MgmtTree এবং তাৎক্ষণিক সাবনোডটি অবশ্যই PerProviderSubscription হতে হবে। একটি উদাহরণ XML ফাইল Example profile OMA-DM XML তে প্রদর্শিত হবে।

HomeSP এর অধীনে নিম্নলিখিত সাবট্রি নোডগুলি ব্যবহার করা হয়:

  • FriendlyName : সেট করতে হবে; প্রদর্শন টেক্সট হিসেবে ব্যবহার করতে হবে
  • FQDN : প্রয়োজন
  • RoamingConsortiumOI

নিম্নলিখিত সাবট্রি নোডগুলি Credential অধীনে ব্যবহৃত হয়:

  • Realm : অবশ্যই একটি খালি স্ট্রিং হতে হবে
  • UsernamePassword : নিম্নলিখিত নোড সেট সহ EAP-TTLS এর জন্য প্রয়োজনীয়:

    • Username : এমন স্ট্রিং যাতে ব্যবহারকারীর নাম থাকে
    • Password : বেস৬৪-এনকোডেড স্ট্রিং ( cGFzc3dvcmQ= তে সেট করা হয়েছে, "পাসওয়ার্ড" এর জন্য বেস৬৪-এনকোডেড স্ট্রিং, নিম্নলিখিত উদাহরণে)
    • EAPMethod/EAPType : 21 এ সেট করতে হবে
    • EAPMethod/InnerMethod : PAP , CHAP , MS-CHAP , অথবা MS-CHAP-V2 এর যেকোনো একটিতে সেট করা আবশ্যক।
  • DigitalCertificate : EAP-TLS এর জন্য প্রয়োজনীয়। নিম্নলিখিত নোডগুলি সেট করতে হবে:

    • CertificateType x509v3 তে সেট করা হয়েছে
    • EAP-TLS কী MIME বিভাগে ক্লায়েন্ট সার্টিফিকেটের সঠিক SHA-256 ডাইজেস্টে CertSHA256Fingerprint সেট করা হয়েছে।
  • SIM : EAP-SIM, EAP-AKA, এবং EAP-AKA' এর জন্য প্রয়োজনীয়। EAPType ফিল্ডটি অবশ্যই উপযুক্ত EAP টাইপে সেট করতে হবে এবং IMSI অবশ্যই প্রভিশনিং করার সময় ডিভাইসে ইনস্টল করা যেকোনো একটি সিম কার্ডের IMSI এর সাথে মিলবে। IMSI স্ট্রিংটি সম্পূর্ণরূপে দশমিক সংখ্যা দ্বারা গঠিত হতে পারে যাতে পূর্ণ সমতা মিলতে বাধ্য করা যায়, অথবা 5 বা 6 দশমিক সংখ্যার পরে একটি তারকাচিহ্ন ( * ) থাকতে পারে যাতে IMSI ম্যাচিং কেবল MCC/MNC এর সাথে শিথিল করা যায়। উদাহরণস্বরূপ, IMSI স্ট্রিং 123456* যেকোনো সিম কার্ডের সাথে মেলে যেখানে MCC 123 এবং MNC 456

অ্যান্ড্রয়েড ১১ এমন ক্ষমতা প্রবর্তন করে যা পাসপয়েন্ট R1 প্রভিশনিংকে আরও নমনীয় করে তোলে।

পৃথক প্রমাণীকরণ, অনুমোদন এবং অ্যাকাউন্টিং (AAA) ডোমেন নাম

যেসব পাসপয়েন্ট নেটওয়ার্ক অ্যাডমিনিস্ট্রেটরদের অ্যাক্সেস নেটওয়ার্ক কোয়েরি প্রোটোকল (ANQP) এর মাধ্যমে নেটওয়ার্ক দ্বারা বিজ্ঞাপিত সম্পূর্ণরূপে যোগ্য ডোমেন নাম (FQDN) থেকে স্বাধীনভাবে নির্দিষ্ট AAA ডোমেন নাম প্রয়োজন, তারা Extension সাবট্রির অধীনে একটি নতুন নোডে FQDN-এর একটি সেমিকোলন-সীমাবদ্ধ তালিকা নির্দিষ্ট করতে পারেন। এটি একটি ঐচ্ছিক নোড এবং Android সংস্করণ 10 বা তার কম সংস্করণে চলমান ডিভাইসগুলি এই নোডটিকে উপেক্ষা করে।

  • Android : অ্যান্ড্রয়েড এক্সটেনশন সাবট্রি

    • AAAServerTrustedNames : নিম্নলিখিত নোড সেট সহ AAA সার্ভার বিশ্বস্ত নামের জন্য প্রয়োজনীয়:

      • FQDN : AAA সার্ভারের বিশ্বস্ত নাম ধারণকারী স্ট্রিং। বিশ্বস্ত নামগুলিকে আলাদা করতে সেমিকোলন ব্যবহার করুন। উদাহরণস্বরূপ, example.org;example.com
স্ব-স্বাক্ষরিত ব্যক্তিগত রুট সিএ

পাসপয়েন্ট নেটওয়ার্ক অ্যাডমিনিস্ট্রেটররা যারা তাদের সার্টিফিকেটগুলি অভ্যন্তরীণভাবে পরিচালনা করেন তারা AAA প্রমাণীকরণের জন্য একটি ব্যক্তিগত স্ব-স্বাক্ষরিত CA দিয়ে প্রোফাইল সরবরাহ করতে পারেন।

রুট CA সার্টিফিকেট ছাড়া প্রোফাইল ইনস্টলেশনের অনুমতি দিন

প্রোফাইলের সাথে সংযুক্ত রুট CA সার্টিফিকেটটি AAA সার্ভার প্রমাণীকরণের জন্য ব্যবহৃত হয়। পাসপয়েন্ট নেটওয়ার্ক অ্যাডমিনিস্ট্রেটররা যারা তাদের AAA সার্ভার প্রমাণীকরণের জন্য পাবলিক বিশ্বস্ত রুট CA-এর উপর নির্ভর করতে চান তারা রুট CA সার্টিফিকেট ছাড়াই প্রোফাইল সরবরাহ করতে পারেন। এই ক্ষেত্রে, সিস্টেম ট্রাস্ট স্টোরে ইনস্টল করা পাবলিক রুট CA সার্টিফিকেটের বিপরীতে AAA সার্ভার সার্টিফিকেট যাচাই করে।

পাসপয়েন্ট R2 প্রভিশনিং

অ্যান্ড্রয়েড ১০ পাসপয়েন্ট R2 বৈশিষ্ট্যগুলির জন্য সমর্থন চালু করেছে। পাসপয়েন্ট R2 অনলাইন সাইন আপ (OSU) প্রয়োগ করে, যা নতুন পাসপয়েন্ট প্রোফাইল সরবরাহের জন্য একটি আদর্শ পদ্ধতি। অ্যান্ড্রয়েড ১০ এবং উচ্চতর সংস্করণগুলি খোলা OSU ESS-এর মাধ্যমে SOAP-XML প্রোটোকল ব্যবহার করে EAP-TTLS প্রোফাইল সরবরাহ সমর্থন করে।

সমর্থিত Passpoint R2 বৈশিষ্ট্যগুলির জন্য শুধুমাত্র AOSP রেফারেন্স কোড প্রয়োজন (কোন অতিরিক্ত ড্রাইভার বা ফার্মওয়্যার সমর্থন প্রয়োজন নেই)। AOSP রেফারেন্স কোডে সেটিংস অ্যাপে Passpoint R2 UI এর একটি ডিফল্ট বাস্তবায়নও অন্তর্ভুক্ত রয়েছে।

যখন অ্যান্ড্রয়েড একটি পাসপয়েন্ট R2 অ্যাক্সেস পয়েন্ট সনাক্ত করে, তখন অ্যান্ড্রয়েড ফ্রেমওয়ার্ক:

  1. ওয়াই-ফাই পিকারে (SSID প্রদর্শনের পাশাপাশি) AP দ্বারা বিজ্ঞাপিত পরিষেবা প্রদানকারীদের একটি তালিকা প্রদর্শন করে।
  2. ব্যবহারকারীকে একটি পাসপয়েন্ট প্রোফাইল সেট আপ করার জন্য পরিষেবা প্রদানকারীদের মধ্যে একটিতে ট্যাপ করতে অনুরোধ করে।
  3. পাসপয়েন্ট প্রোফাইল সেটআপ ফ্লো-এর মাধ্যমে ব্যবহারকারীকে নিয়ে যায়।
  4. সফলভাবে সম্পন্ন হলে ফলস্বরূপ পাসপয়েন্ট প্রোফাইল ইনস্টল করে।
  5. নতুন প্রভিশন করা পাসপয়েন্ট প্রোফাইল ব্যবহার করে পাসপয়েন্ট নেটওয়ার্কের সাথে সংযুক্ত হয়।

পাসপয়েন্ট R3 বৈশিষ্ট্য

অ্যান্ড্রয়েড ১২ নিম্নলিখিত পাসপয়েন্ট R3 বৈশিষ্ট্যগুলি প্রবর্তন করে যা ব্যবহারকারীর অভিজ্ঞতা উন্নত করে এবং নেটওয়ার্কগুলিকে স্থানীয় আইন মেনে চলতে দেয়:

শর্তাবলী

কিছু স্থান এবং স্থানে নেটওয়ার্ক অ্যাক্সেস প্রদানের জন্য আইনত শর্তাবলী মেনে নেওয়া বাধ্যতামূলক। এই বৈশিষ্ট্যটি নেটওয়ার্ক স্থাপনার মাধ্যমে অনিরাপদ ক্যাপটিভ পোর্টালগুলিকে, যা উন্মুক্ত নেটওয়ার্ক ব্যবহার করে, একটি নিরাপদ পাসপয়েন্ট নেটওয়ার্ক দিয়ে প্রতিস্থাপন করতে সক্ষম করে। যখন শর্তাবলী মেনে নেওয়ার প্রয়োজন হয় তখন ব্যবহারকারীকে একটি বিজ্ঞপ্তি প্রদর্শিত হয়।

শর্তাবলীর URL টি HTTPS ব্যবহার করে একটি নিরাপদ ওয়েবসাইটের দিকে নির্দেশ করতে হবে। যদি URL টি একটি অনিরাপদ ওয়েবসাইটের দিকে নির্দেশ করে, তাহলে ফ্রেমওয়ার্কটি তাৎক্ষণিকভাবে নেটওয়ার্কটি সংযোগ বিচ্ছিন্ন করে এবং ব্লক করে দেয়।

স্থানের তথ্যের URL

নেটওয়ার্ক অপারেটর এবং ভেন্যুগুলিকে ব্যবহারকারীকে অতিরিক্ত তথ্য প্রদান করার অনুমতি দেয়, যেমন ভেন্যু ম্যাপ, ডিরেক্টরি, প্রচার এবং কুপন। নেটওয়ার্ক সংযুক্ত হলে ব্যবহারকারীকে একটি বিজ্ঞপ্তি প্রদর্শিত হয়।

ভেন্যু তথ্য URL টি HTTPS ব্যবহার করে একটি নিরাপদ ওয়েবসাইটের দিকে নির্দেশ করতে হবে। যদি URL টি একটি অনিরাপদ ওয়েবসাইটের দিকে নির্দেশ করে, তাহলে ফ্রেমওয়ার্ক URL টি উপেক্ষা করে এবং কোনও বিজ্ঞপ্তি প্রদর্শন করে না।

অন্যান্য পাসপয়েন্ট বৈশিষ্ট্য

অ্যান্ড্রয়েড ১১ নিম্নলিখিত পাসপয়েন্ট ক্ষমতাগুলি প্রবর্তন করে যা ব্যবহারকারীর অভিজ্ঞতা, পাওয়ার ব্যবহার এবং স্থাপনার নমনীয়তা উন্নত করে।

মেয়াদ শেষ হওয়ার তারিখ প্রয়োগ এবং বিজ্ঞপ্তি
প্রোফাইলে মেয়াদোত্তীর্ণের তারিখ বলবৎ করার ফলে ফ্রেমওয়ার্কটি মেয়াদোত্তীর্ণ শংসাপত্র সহ অ্যাক্সেস পয়েন্টগুলিতে স্বয়ংক্রিয় সংযোগ এড়াতে পারে, যা ব্যর্থ হতে বাধ্য। এটি এয়ারটাইম ব্যবহার রোধ করে এবং ব্যাটারি এবং ব্যাকএন্ড ব্যান্ডউইথ সাশ্রয় করে। যখন তাদের প্রোফাইলের সাথে মিলে যাওয়া কোনও নেটওয়ার্ক রেঞ্জের মধ্যে থাকে এবং প্রোফাইলটি মেয়াদোত্তীর্ণ হয়ে যায় তখন ফ্রেমওয়ার্কটি ব্যবহারকারীকে একটি বিজ্ঞপ্তি প্রদর্শন করে।
অভিন্ন FQDN সহ একাধিক প্রোফাইল
যেসব ক্যারিয়ার পাসপয়েন্ট নেটওয়ার্ক স্থাপন করে এবং একাধিক পাবলিক ল্যান্ড মোবাইল নেটওয়ার্ক (PLMN) আইডি ব্যবহার করে, তারা একই FQDN সহ একাধিক পাসপয়েন্ট প্রোফাইল সরবরাহ করতে পারে, প্রতিটি PLMN আইডির জন্য একটি, যা স্বয়ংক্রিয়ভাবে ইনস্টল করা সিম কার্ডের সাথে মিলে যায় এবং নেটওয়ার্ক সংযোগ করতে ব্যবহৃত হয়।

অ্যান্ড্রয়েড ১২ নিম্নলিখিত পাসপয়েন্ট ক্ষমতাগুলি প্রবর্তন করে যা ব্যবহারকারীর অভিজ্ঞতা, বিদ্যুৎ ব্যবহার এবং স্থাপনার নমনীয়তা উন্নত করে:

সজ্জিত পরিচয় উপসর্গ
একটি প্রিফিক্স ডেকোরেশন সহ নেটওয়ার্কগুলিতে প্রমাণীকরণ করার সময়, সজ্জিত পরিচয় প্রিফিক্স নেটওয়ার্ক অপারেটরদের AAA নেটওয়ার্কের ভিতরে একাধিক প্রক্সির মাধ্যমে স্পষ্ট রাউটিং সম্পাদনের জন্য নেটওয়ার্ক অ্যাক্সেস আইডেন্টিফায়ার (NAI) আপডেট করতে দেয় ( RFC 7542 দেখুন)। Android 12 PPS-MO এক্সটেনশনের জন্য WBA স্পেসিফিকেশন অনুসারে এই বৈশিষ্ট্যটি প্রয়োগ করে।
অনুমোদন বিহীনকরণ আসন্ন হ্যান্ডলিং
নেটওয়ার্ক অপারেটরদের একটি ডিভাইসে সিগন্যাল দেওয়ার অনুমতি দেয় যে নির্দিষ্ট সময়ের জন্য (একটি টাইমআউট বিলম্বের মাধ্যমে নির্দিষ্ট করা হয়েছে) নেটওয়ার্কে প্রমাণীকরণের জন্য ব্যবহৃত শংসাপত্রের জন্য পরিষেবা উপলব্ধ নয়। এই সংকেত পাওয়ার পরে, ডিভাইসগুলি টাইমআউট বিলম্বের মেয়াদ শেষ না হওয়া পর্যন্ত একই শংসাপত্রের সাথে নেটওয়ার্কে পুনরায় সংযোগ করার চেষ্টা করবে না। বিপরীতে, যে ডিভাইসগুলি এই বৈশিষ্ট্যটি সমর্থন করে না তারা পরিষেবাটি অনুপলব্ধ থাকাকালীন বারবার নেটওয়ার্কে পুনরায় সংযোগ করার চেষ্টা করতে পারে।

OMA-DM PerProviderSubscription-MO XML প্রোফাইলের উদাহরণ

ব্যবহারকারীর নাম এবং পাসওয়ার্ড শংসাপত্র সহ প্রোফাইল (EAP-TTLS)

নিম্নলিখিত উদাহরণটি একটি নেটওয়ার্কের প্রোফাইল প্রদর্শন করে যার মধ্যে রয়েছে:

  • নেটওয়ার্ক বান্ধব নামটি Example Network এ সেট করা হয়েছে
  • FQDN hotspot.example.net এ সেট করা আছে
  • রোমিং কনসোর্টিয়াম OI (রোমিংয়ের জন্য)
  • user নাম সহ শংসাপত্র, Base64 দিয়ে এনকোড করা পাসওয়ার্ড password , এবং realm example.net এ সেট করা আছে
  • EAP পদ্ধতি 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 এ সেট করা হয়েছে
  • FQDN globalroaming.net এ সেট করা হয়েছে
  • রোমিং কনসোর্টিয়াম OI (রোমিংয়ের জন্য)
  • রিয়েলম 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 সেট করা হয়েছে
  • FQDN wlan.mnc888.mcc999.3gppnetwork.org এ সেট করা আছে
  • 999888 নম্বর PLMN আইডি সহ সিম শংসাপত্র
  • EAP পদ্ধতি 23 তে সেট করা হয়েছে (EAP-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 নেটওয়ার্কের সাথে স্বয়ংক্রিয়ভাবে সংযুক্ত হবে না। এই সমস্যাটি Wi-Fi অফলোড হ্রাস করে ব্যবহারকারী, ক্যারিয়ার এবং পরিষেবাগুলিকে প্রভাবিত করে।

অংশ প্রভাব প্রভাবের আকার
ক্যারিয়ার এবং পাসপয়েন্ট পরিষেবা প্রদানকারীরা মোবাইল নেটওয়ার্কে লোড বৃদ্ধি। পাসপয়েন্ট R1 ব্যবহারকারী যেকোনো ক্যারিয়ার।
ব্যবহারকারীরা ক্যারিয়ার ওয়াই-ফাই অ্যাক্সেস পয়েন্ট (AP) তে স্বয়ংক্রিয়ভাবে সংযোগ স্থাপনের সুযোগ হাতছাড়া হয়েছে, যার ফলে ডেটা খরচ বেড়েছে। পাসপয়েন্ট R1 সমর্থনকারী ক্যারিয়ার নেটওয়ার্কে চলমান ডিভাইস সহ যেকোনো ব্যবহারকারী।

ব্যর্থতার কারণ

পাসপয়েন্ট একটি বিজ্ঞাপিত (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.

দ্বিতীয় মানদণ্ডটি অ্যান্ড্রয়েড 8.0-এ পরিবর্তিত হয়েছিল:

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

এই পরিবর্তনের মাধ্যমে, সিস্টেমটি পূর্বে কাজ করা পরিষেবা প্রদানকারীদের সাথে কোনও মিল খুঁজে পায়নি, তাই পাসপয়েন্ট ডিভাইসগুলি স্বয়ংক্রিয়ভাবে সংযুক্ত হয়নি।

সমাধান

পরিবর্তিত মিলের মানদণ্ডের সমস্যা সমাধানের জন্য, ক্যারিয়ার এবং পরিষেবা প্রদানকারীদের পাসপয়েন্ট এপি দ্বারা প্রকাশিত তথ্যে নেটওয়ার্ক অ্যাক্সেস আইডেন্টিফায়ার (NAI) রিয়েলম যোগ করতে হবে।

প্রস্তাবিত সমাধান হল নেটওয়ার্ক পরিষেবা প্রদানকারীদের জন্য একটি নেটওয়ার্ক-সাইড ওয়ার্কঅ্যারাউন্ড বাস্তবায়ন করা যাতে দ্রুততম সময়ে স্থাপন করা যায়। একটি ডিভাইস-সাইড ওয়ার্কঅ্যারাউন্ড নির্ভর করে OEM-দের AOSP থেকে একটি চেঞ্জলিস্ট (CL) সংগ্রহ করা এবং তারপর ক্ষেত্রের ডিভাইসগুলি আপডেট করার উপর।

ক্যারিয়ার এবং পাসপয়েন্ট পরিষেবা প্রদানকারীদের জন্য নেটওয়ার্ক সংশোধন

নেটওয়ার্ক-সাইড ওয়ার্কঅ্যারাউন্ডের জন্য NAI realm ANQP উপাদান যোগ করার জন্য নেটওয়ার্ক পুনর্গঠন করা প্রয়োজন, যা নিম্নরূপ। Passpoint স্পেসিফিকেশনের জন্য NAI realm ANQP উপাদান প্রয়োজন হয় না, তবে এই বৈশিষ্ট্যটি যোগ করার ফলে Passpoint স্পেসিফিকেশনের সাথে সঙ্গতিপূর্ণ হয়, তাই spec-compliant ক্লায়েন্ট বাস্তবায়নগুলি ভেঙে যাওয়া উচিত নয়।

  1. NAI realm ANQP উপাদান যোগ করুন।
  2. ডিভাইসে ইনস্টল করা প্রোফাইলের Realm সাথে মেলে NAI রিয়েলম সাবফিল্ড সেট করুন।
  3. প্রতিটি EAP ধরণের উপর ভিত্তি করে নিম্নলিখিত তথ্য সেট করুন:
    • 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 বা উচ্চতর সংস্করণের ক্ষেত্রে প্রযোজ্য নয়):

  • অ্যান্ড্রয়েড ৯
  • অ্যান্ড্রয়েড ৮.এক্স

প্যাচটি সংগ্রহ করা হলে, OEM-গুলিকে ক্ষেত্রের ডিভাইসগুলি আপডেট করতে হবে।