পাসপয়েন্ট হল একটি Wi-Fi অ্যালায়েন্স (WFA) প্রোটোকল যা মোবাইল ডিভাইসগুলিকে ইন্টারনেট অ্যাক্সেস প্রদানকারী Wi-Fi হটস্পটগুলিকে আবিষ্কার এবং প্রমাণীকরণ করতে সক্ষম করে৷
ডিভাইস সমর্থন
পাসপয়েন্ট সমর্থন করার জন্য, ডিভাইস নির্মাতাদের অনুরোধকারী ইন্টারফেস বাস্তবায়ন করতে হবে। Android 13 দিয়ে শুরু করে, ইন্টারফেসটি HAL সংজ্ঞার জন্য AIDL ব্যবহার করে। Android 13 এর আগে রিলিজের জন্য, ইন্টারফেস এবং ভেন্ডর পার্টিশন HIDL ব্যবহার করে। এইচআইডিএল ফাইলগুলি hardware/interfaces/supplicant/1.x
এবং এআইডিএল ফাইলগুলি hardware/interfaces/supplicant/aidl
এ রয়েছে। আবেদনকারী 802.11u স্ট্যান্ডার্ডের জন্য সমর্থন প্রদান করে, বিশেষত নেটওয়ার্ক আবিষ্কার এবং নির্বাচন বৈশিষ্ট্য যেমন জেনেরিক অ্যাডভারটাইজমেন্ট সার্ভিস (GAS) এবং অ্যাক্সেস নেটওয়ার্ক ক্যোয়ারী প্রোটোকল (ANQP)।
বাস্তবায়ন
Android 11 বা উচ্চতর
অ্যান্ড্রয়েড 11 বা উচ্চতর সংস্করণে চলমান ডিভাইসগুলিতে পাসপয়েন্ট সমর্থন করতে, ডিভাইস নির্মাতাদের 802.11u এর জন্য ফার্মওয়্যার সমর্থন প্রদান করতে হবে। পাসপয়েন্ট সমর্থন করার জন্য অন্যান্য সমস্ত প্রয়োজনীয়তা AOSP-এ অন্তর্ভুক্ত রয়েছে।
Android 10 বা তার কম
অ্যান্ড্রয়েড 10 বা তার কম সংস্করণে চলমান ডিভাইসগুলির জন্য, ডিভাইস নির্মাতাদের ফ্রেমওয়ার্ক এবং 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 বিধান
অ্যান্ড্রয়েড অ্যান্ড্রয়েড 6.0 থেকে পাসপয়েন্ট R1 সমর্থন করেছে, প্রোফাইল এবং শংসাপত্রের তথ্য রয়েছে এমন একটি বিশেষ ফাইলের ওয়েব-ভিত্তিক ডাউনলোডের মাধ্যমে পাসপয়েন্ট R1 (রিলিজ 1) শংসাপত্রের ব্যবস্থা করার অনুমতি দেয়৷ ক্লায়েন্ট স্বয়ংক্রিয়ভাবে Wi-Fi তথ্যের জন্য একটি বিশেষ ইনস্টলার চালু করে এবং ব্যবহারকারীকে বিষয়বস্তু গ্রহণ বা প্রত্যাখ্যান করার আগে তথ্যের অংশগুলি দেখার অনুমতি দেয়।
ফাইলের মধ্যে থাকা প্রোফাইল তথ্য পাসপয়েন্ট-সক্ষম অ্যাক্সেস পয়েন্ট থেকে পুনরুদ্ধার করা ডেটার সাথে মেলানোর জন্য ব্যবহার করা হয় এবং শংসাপত্রগুলি স্বয়ংক্রিয়ভাবে যে কোনও মিলিত নেটওয়ার্কের জন্য প্রয়োগ করা হয়।
অ্যান্ড্রয়েড রেফারেন্স বাস্তবায়ন EAP-TTLS, EAP-TLS, EAP-SIM, EAP-AKA, এবং EAP-AKA' সমর্থন করে।
মেকানিজম ডাউনলোড করুন
পাসপয়েন্ট কনফিগারেশন ফাইলটি অবশ্যই একটি ওয়েব সার্ভারে হোস্ট করা উচিত এবং এটিকে TLS (HTTPS) দিয়ে সুরক্ষিত করা উচিত কারণ এতে স্পষ্ট পাঠ্য পাসওয়ার্ড বা ব্যক্তিগত কী ডেটা থাকতে পারে। বিষয়বস্তুটি UTF-8-এ উপস্থাপিত এবং RFC-2045 সেকশন 6.8 অনুযায়ী বেস64 এনকোডিং-এ এনকোড করা মাল্টিপার্ট MIME টেক্সট দিয়ে তৈরি।
নিম্নলিখিত HTTP হেডার ক্ষেত্রগুলি ক্লায়েন্ট দ্বারা স্বয়ংক্রিয়ভাবে ডিভাইসে একটি Wi-Fi ইনস্টলার চালু করতে ব্যবহার করা হয়:
-
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 ফর্ম্যাট করা পেলোড যার মধ্যে Passpoint R1 PerProviderSubscription ফরম্যাট করা MO HomeSP এবং Credential জন্য। |
ট্রাস্ট সার্টিফিকেট | application/x-x509-ca-cert | EAP-TLS এবং EAP-TTLS এর জন্য প্রয়োজনীয় | একটি একক X.509v3 base64-এনকোডেড শংসাপত্র পেলোড। |
EAP-TLS কী | application/x-pkcs12 | EAP-TLS এর জন্য প্রয়োজনীয় | একটি বেস64-এনকোডেড PKCS #12 ASN.1 কাঠামো যাতে কমপক্ষে ক্লায়েন্ট শংসাপত্র এবং সংশ্লিষ্ট ব্যক্তিগত কী সহ একটি ক্লায়েন্ট শংসাপত্র চেইন রয়েছে। PKCS 12 কন্টেইনার পাশাপাশি প্রাইভেট কী এবং সার্টিফিকেট সবই স্পষ্ট টেক্সটে থাকতে হবে যাতে কোনো পাসওয়ার্ড নেই। |
প্রোফাইল বিভাগটিকে অবশ্যই base64-এনকোডেড, UTF-8-এনকোডেড XML পাঠ্য হিসাবে স্থানান্তর করতে হবে যা পাসপয়েন্ট R2 টেকনিক্যাল স্পেসিফিকেশন সংস্করণ 1.0.0, অধ্যায় 9.1-এ HomeSP
এবং Credential
সাবট্রিসের অংশগুলি নির্দিষ্ট করে।
শীর্ষ-স্তরের নোডটি হতে হবে MgmtTree
এবং অবিলম্বে সাবনোডটি হতে হবে PerProviderSubscription
। একটি উদাহরণ XML ফাইল উদাহরণ প্রোফাইল OMA-DM XML- এ প্রদর্শিত হয়।
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
এ সেট করা হয়েছে - EAP-TLS কী MIME বিভাগে ক্লায়েন্ট শংসাপত্রের সঠিক SHA-256 ডাইজেস্টে
CertSHA256Fingerprint
সেট করা হয়েছে
-
SIM
: EAP-SIM, EAP-AKA, এবং EAP-AKA'-এর জন্য প্রয়োজনীয়।EAPType
ক্ষেত্রটি অবশ্যই উপযুক্ত EAP প্রকারে সেট করতে হবে এবংIMSI
অবশ্যই ব্যবস্থা করার সময় ডিভাইসে ইনস্টল করা SIM কার্ডগুলির একটির IMSI-এর সাথে মেলে। IMSI স্ট্রিং পূর্ণ সমতা মিল জোরদার করার জন্য সম্পূর্ণরূপে দশমিক সংখ্যা, অথবা 5 বা 6 দশমিক সংখ্যার পরে একটি তারকাচিহ্ন (*) শুধুমাত্র MCC/MNC-এর সাথে IMSI ম্যাচিং শিথিল করতে পারে। উদাহরণস্বরূপ, IMSI স্ট্রিং 123456* যেকোন সিম কার্ডের সাথে MCC 123 এবং MNC 456 এর সাথে মেলে।
Android 11 এমন ক্ষমতার পরিচয় দেয় যা Passpoint R1 প্রভিশনিংকে আরও নমনীয় করে তোলে।
- পৃথক প্রমাণীকরণ, অনুমোদন, এবং অ্যাকাউন্টিং (AAA) ডোমেন নাম
পাসপয়েন্ট নেটওয়ার্ক অ্যাডমিনিস্ট্রেটররা যেগুলির জন্য একটি AAA ডোমেন নাম প্রয়োজন যা সম্পূর্ণ যোগ্য ডোমেন নাম (FQDN) নেটওয়ার্ক দ্বারা বিজ্ঞাপিত অ্যাক্সেস নেটওয়ার্ক ক্যোয়ারী প্রোটোকল (ANQP) এর মাধ্যমে স্বাধীনভাবে নির্দিষ্ট করা হয় তারা
Extension
সাবট্রির অধীনে একটি নতুন নোডে FQDN-এর একটি সেমিকোলন-ডিলিমিটেড তালিকা নির্দিষ্ট করতে পারে। . এটি একটি ঐচ্ছিক নোড এবং Android সংস্করণ 10 বা তার নিচের সংস্করণে চলমান ডিভাইসগুলি এই নোডটিকে উপেক্ষা করে৷
Android
: অ্যান্ড্রয়েড এক্সটেনশন সাবট্রিAAAServerTrustedNames
: নিম্নলিখিত নোড সেট সহ AAA সার্ভার বিশ্বস্ত নামের জন্য প্রয়োজনীয়:-
FQDN
: স্ট্রিং যাতে AAA সার্ভারের বিশ্বস্ত নাম থাকে। বিশ্বস্ত নাম আলাদা করতে সেমিকোলন ব্যবহার করুন। উদাহরণস্বরূপ,example.org;example.com
।
-
- স্ব-স্বাক্ষরিত ব্যক্তিগত রুট CA
- পাসপয়েন্ট নেটওয়ার্ক অ্যাডমিনিস্ট্রেটর যারা তাদের শংসাপত্রগুলি অভ্যন্তরীণভাবে পরিচালনা করে তারা AAA প্রমাণীকরণের জন্য একটি ব্যক্তিগত স্ব-স্বাক্ষরিত CA এর সাথে প্রোফাইলের ব্যবস্থা করতে পারে।
- রুট CA শংসাপত্র ছাড়াই প্রোফাইল ইনস্টল করার অনুমতি দিন
- প্রোফাইলের সাথে সংযুক্ত রুট CA শংসাপত্রটি AAA সার্ভার প্রমাণীকরণের জন্য ব্যবহৃত হয়। পাসপয়েন্ট নেটওয়ার্ক অ্যাডমিনিস্ট্রেটর যারা তাদের AAA সার্ভার প্রমাণীকরণের জন্য সর্বজনীন বিশ্বস্ত রুট CA-এর উপর নির্ভর করতে চান তারা রুট CA শংসাপত্র ছাড়াই প্রোফাইলের ব্যবস্থা করতে পারেন। এই ক্ষেত্রে, সিস্টেমটি ট্রাস্ট স্টোরে ইনস্টল করা পাবলিক রুট CA শংসাপত্রগুলির বিরুদ্ধে AAA সার্ভার শংসাপত্রগুলি যাচাই করে৷
পাসপয়েন্ট R2 বিধান
Android 10 Passpoint R2 বৈশিষ্ট্যগুলির জন্য সমর্থন চালু করেছে। Passpoint R2 অনলাইন সাইন আপ (OSU) প্রয়োগ করে, নতুন পাসপয়েন্ট প্রোফাইলের ব্যবস্থা করার জন্য একটি আদর্শ পদ্ধতি। Android 10 এবং উচ্চতর ওপেন OSU ESS এর উপর SOAP-XML প্রোটোকল ব্যবহার করে EAP-TTLS প্রোফাইলের বিধান সমর্থন করে।
সমর্থিত Passpoint R2 বৈশিষ্ট্যগুলির জন্য শুধুমাত্র AOSP রেফারেন্স কোডের প্রয়োজন হয় (কোন অতিরিক্ত ড্রাইভার বা ফার্মওয়্যার সমর্থনের প্রয়োজন নেই)। AOSP রেফারেন্স কোডে সেটিংস অ্যাপে পাসপয়েন্ট R2 UI এর একটি ডিফল্ট বাস্তবায়নও অন্তর্ভুক্ত রয়েছে।
যখন Android একটি পাসপয়েন্ট R2 অ্যাক্সেস পয়েন্ট সনাক্ত করে, তখন Android ফ্রেমওয়ার্ক:
- ওয়াই-ফাই পিকারে (SSID প্রদর্শন ছাড়াও) AP দ্বারা বিজ্ঞাপিত পরিষেবা প্রদানকারীদের একটি তালিকা প্রদর্শন করে।
- একটি পাসপয়েন্ট প্রোফাইল সেট আপ করতে ব্যবহারকারীকে পরিষেবা প্রদানকারীর একটিতে ট্যাপ করতে অনুরোধ করে৷
- পাসপয়েন্ট প্রোফাইল সেটআপ প্রবাহের মাধ্যমে ব্যবহারকারীকে নিয়ে যায়।
- সফলভাবে সমাপ্তির ফলে পাসপয়েন্ট প্রোফাইল ইনস্টল করে।
- নতুন বিধান করা পাসপয়েন্ট প্রোফাইল ব্যবহার করে পাসপয়েন্ট নেটওয়ার্কে সহযোগীরা।
পাসপয়েন্ট R3 বৈশিষ্ট্য
Android 12 নিম্নলিখিত পাসপয়েন্ট R3 বৈশিষ্ট্যগুলি প্রবর্তন করে যা ব্যবহারকারীর অভিজ্ঞতা উন্নত করে এবং নেটওয়ার্কগুলিকে স্থানীয় আইন মেনে চলতে দেয়:
- শর্তাবলী
নেটওয়ার্ক অ্যাক্সেস প্রদানের জন্য কিছু অবস্থান এবং ভেন্যুতে নিয়ম ও শর্তাবলীর স্বীকৃতি আইনত প্রয়োজন। এই বৈশিষ্ট্যটি একটি নিরাপদ পাসপয়েন্ট নেটওয়ার্কের সাথে ওপেন নেটওয়ার্ক ব্যবহার করে এমন নিরাপদ ক্যাপটিভ পোর্টালগুলিকে প্রতিস্থাপন করার জন্য নেটওয়ার্ক স্থাপনার অনুমতি দেয়। শর্তাবলী গ্রহণ করার প্রয়োজন হলে ব্যবহারকারীর কাছে একটি বিজ্ঞপ্তি প্রদর্শিত হয়।
শর্তাবলী URL অবশ্যই HTTPS ব্যবহার করে একটি নিরাপদ ওয়েবসাইটে নির্দেশ করবে। যদি URLটি একটি অনিরাপদ ওয়েবসাইটের দিকে নির্দেশ করে, ফ্রেমওয়ার্ক অবিলম্বে সংযোগ বিচ্ছিন্ন করে এবং নেটওয়ার্কটিকে ব্লক করে।
- স্থান তথ্য URL
নেটওয়ার্ক অপারেটর এবং স্থানগুলিকে ব্যবহারকারীকে অতিরিক্ত তথ্য প্রদান করার অনুমতি দেয়, যেমন স্থানের মানচিত্র, ডিরেক্টরি, প্রচার এবং কুপন। নেটওয়ার্ক সংযুক্ত হলে ব্যবহারকারীর কাছে একটি বিজ্ঞপ্তি প্রদর্শিত হয়।
স্থান তথ্য URL অবশ্যই HTTPS ব্যবহার করে একটি নিরাপদ ওয়েব সাইটে নির্দেশ করবে৷ যদি URLটি একটি অনিরাপদ ওয়েবসাইটের দিকে নির্দেশ করে, ফ্রেমওয়ার্কটি URLটিকে উপেক্ষা করে এবং একটি বিজ্ঞপ্তি প্রদর্শন করে না৷
অন্যান্য পাসপয়েন্ট বৈশিষ্ট্য
Android 11 নিম্নলিখিত পাসপয়েন্ট ক্ষমতাগুলি প্রবর্তন করে যা ব্যবহারকারীর অভিজ্ঞতা, পাওয়ার ব্যবহার এবং স্থাপনার নমনীয়তা উন্নত করে।
- মেয়াদ শেষ হওয়ার তারিখ প্রয়োগ এবং বিজ্ঞপ্তি
- প্রোফাইলে মেয়াদ শেষ হওয়ার তারিখগুলি প্রয়োগ করা ফ্রেমওয়ার্ককে মেয়াদ উত্তীর্ণ শংসাপত্র সহ পয়েন্টগুলিতে স্বয়ংক্রিয় সংযোগ এড়াতে দেয়, যা ব্যর্থ হতে বাধ্য। এটি এয়ারটাইম ব্যবহার প্রতিরোধ করে এবং ব্যাটারি এবং ব্যাকএন্ড ব্যান্ডউইথ সংরক্ষণ করে। ফ্রেমওয়ার্ক ব্যবহারকারীর কাছে একটি বিজ্ঞপ্তি প্রদর্শন করে যখন তাদের প্রোফাইলের সাথে মিলে যাওয়া একটি নেটওয়ার্ক পরিসরে থাকে এবং প্রোফাইলের মেয়াদ শেষ হয়ে যায়।
- অভিন্ন FQDN সহ একাধিক প্রোফাইল
- যে ক্যারিয়ারগুলি পাসপয়েন্ট নেটওয়ার্ক স্থাপন করে এবং একাধিক পাবলিক ল্যান্ড মোবাইল নেটওয়ার্ক (PLMN) আইডি ব্যবহার করে তারা একই FQDN সহ একাধিক পাসপয়েন্ট প্রোফাইলের ব্যবস্থা করতে পারে, প্রতিটি PLMN আইডির জন্য একটি, যা স্বয়ংক্রিয়ভাবে ইনস্টল করা সিম কার্ডের সাথে মিলে যায় এবং নেটওয়ার্ক সংযোগ করতে ব্যবহৃত হয়।
Android 12 নিম্নলিখিত পাসপয়েন্ট ক্ষমতাগুলি প্রবর্তন করে যা ব্যবহারকারীর অভিজ্ঞতা, পাওয়ার ব্যবহার এবং স্থাপনার নমনীয়তা উন্নত করে:
- সজ্জিত পরিচয় উপসর্গ
- একটি উপসর্গ সজ্জা সহ নেটওয়ার্কগুলিতে প্রমাণীকরণ করার সময়, সজ্জিত পরিচয় উপসর্গ নেটওয়ার্ক অপারেটরদের নেটওয়ার্ক অ্যাক্সেস আইডেন্টিফায়ার (NAI) আপডেট করার অনুমতি দেয় একটি AAA নেটওয়ার্কের ভিতরে একাধিক প্রক্সির মাধ্যমে সুস্পষ্ট রাউটিং করতে (দেখুন RFC 7542 )। Android 12 PPS-MO এক্সটেনশনের জন্য WBA স্পেসিফিকেশন অনুযায়ী এই বৈশিষ্ট্যটি প্রয়োগ করে।
- প্রমাণীকরণ আসন্ন হ্যান্ডলিং
- নেটওয়ার্ক অপারেটরদের একটি ডিভাইসে সংকেত দেওয়ার অনুমতি দেয় যে পরিষেবাটি একটি নির্দিষ্ট সময়ের জন্য নেটওয়ার্কে প্রমাণীকরণের জন্য ব্যবহৃত শংসাপত্রের জন্য উপলব্ধ নয় (একটি সময়সীমা বিলম্বের মাধ্যমে নির্দিষ্ট করা হয়েছে)৷ এই সংকেতটি পাওয়ার পর, টাইমআউট বিলম্বের মেয়াদ শেষ না হওয়া পর্যন্ত ডিভাইসগুলি একই শংসাপত্রের সাথে নেটওয়ার্কে পুনরায় সংযোগ করার চেষ্টা করবে না। বিপরীতে, যে ডিভাইসগুলি এই বৈশিষ্ট্যটিকে সমর্থন করে না তারা পরিষেবাটি অনুপলব্ধ থাকা অবস্থায় বারবার নেটওয়ার্কের সাথে পুনরায় সংযোগ করার চেষ্টা করতে পারে।
OMA-DM PerProviderSubscription-MO XML প্রোফাইলের উদাহরণ
একটি ব্যবহারকারীর নাম/পাসওয়ার্ড শংসাপত্র সহ প্রোফাইল (EAP-TTLS)
নিম্নলিখিত উদাহরণ একটি নেটওয়ার্কের জন্য একটি প্রোফাইল প্রদর্শন করে:
- নেটওয়ার্ক বন্ধুত্বপূর্ণ নাম
Example Network
সেট করা হয়েছে৷ - FQDN
hotspot.example.net
এ সেট করা হয়েছে - রোমিং কনসোর্টিয়াম OIs (রোমিং এর জন্য)
- ব্যবহারকারীর নাম
user
সাথে শংসাপত্র, Base64-এর সাথে এনকোড করাpassword
, এবং realm সেটexample.net
এ - EAP পদ্ধতি
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
এ সেট করা হয়েছে - রোমিং কনসোর্টিয়াম OIs (রোমিং এর জন্য)
- Realm
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 ID সহ সিম শংসাপত্র - 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>
প্রমাণীকরণ পরামর্শ
পাসপয়েন্ট R1 EAP-SIM, EAP-AKA, বা EAP-AKA' প্রোফাইল সহ Android 8.x বা Android 9 চালিত ডিভাইসগুলি পাসপয়েন্ট নেটওয়ার্কে স্বয়ংক্রিয়ভাবে সংযুক্ত হবে না৷ এই সমস্যাটি Wi-Fi অফলোড কমিয়ে ব্যবহারকারী, ক্যারিয়ার এবং পরিষেবাগুলিকে প্রভাবিত করে৷
সেগমেন্ট | প্রভাব | প্রভাবের আকার |
---|---|---|
ক্যারিয়ার এবং পাসপয়েন্ট পরিষেবা প্রদানকারী | সেলুলার নেটওয়ার্কে বর্ধিত লোড। | পাসপয়েন্ট R1 ব্যবহার করে যেকোনো ক্যারিয়ার। |
ব্যবহারকারীদের | ক্যারিয়ার ওয়াই-ফাই অ্যাক্সেস পয়েন্টের (APs) সাথে স্বয়ংক্রিয়ভাবে সংযোগ করার সুযোগ মিস করা হয়েছে, যার ফলে ডেটা খরচ বেশি হয়। | পাসপয়েন্ট 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.
এই পরিবর্তনের সাথে, সিস্টেমটি পূর্বে কর্মরত পরিষেবা প্রদানকারীদের সাথে কোন মিল লক্ষ্য করেনি, তাই পাসপয়েন্ট ডিভাইসগুলি স্বয়ংক্রিয়ভাবে সংযোগ করেনি।
ওয়ার্কঅ্যারাউন্ড
পরিবর্তিত ম্যাচিং মানদণ্ডের ইস্যুতে কাজ করার জন্য, ক্যারিয়ার এবং পরিষেবা প্রদানকারীদের পাসপয়েন্ট AP দ্বারা প্রকাশিত তথ্যে নেটওয়ার্ক অ্যাক্সেস আইডেন্টিফায়ার (NAI) ক্ষেত্র যোগ করতে হবে।
প্রস্তাবিত সমাধান হল নেটওয়ার্ক পরিষেবা প্রদানকারীদের জন্য দ্রুততম সময়ে স্থাপনার জন্য নেটওয়ার্ক-সাইড ওয়ার্কঅ্যারাউন্ড বাস্তবায়ন করা। একটি ডিভাইস-সাইড ওয়ার্কআউন্ড নির্ভর করে OEMs AOSP থেকে একটি চেঞ্জলিস্ট (CL) বাছাই করে এবং তারপর ক্ষেত্রে ডিভাইসগুলি আপডেট করে।
ক্যারিয়ার এবং পাসপয়েন্ট পরিষেবা প্রদানকারীদের জন্য নেটওয়ার্ক ফিক্স
নেটওয়ার্ক-সাইড ওয়ার্কআউন্ডের জন্য নিচে উল্লেখ করা NAI রিয়েলম ANQP উপাদান যোগ করার জন্য নেটওয়ার্কটিকে পুনরায় কনফিগার করা প্রয়োজন। পাসপয়েন্ট স্পেসিফিকেশনের জন্য NAI রিয়েলম ANQP উপাদানের প্রয়োজন হয় না, কিন্তু এই প্রপার্টির যোগ পাসপয়েন্ট স্পেসিফিকেশনের সাথে সঙ্গতিপূর্ণ, তাই স্পেক-অনুসরণকারী ক্লায়েন্ট বাস্তবায়ন ভঙ্গ করা উচিত নয়।
- NAI realm ANQP উপাদান যোগ করুন।
- ডিভাইসে ইনস্টল করা প্রোফাইলের
Realm
সাথে মেলে NAI রিয়েলম সাবফিল্ড সেট করুন। প্রতিটি 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)
- EAP-TTLS:
OEM-এর জন্য ডিভাইস/AOSP ফিক্স
একটি ডিভাইস-সাইড ওয়ার্কঅ্যারাউন্ড বাস্তবায়ন করতে, OEM-কে প্যাচ CL aosp/718508 বেছে নিতে হবে। এই প্যাচটি নিম্নলিখিত রিলিজের উপরে প্রয়োগ করা যেতে পারে (Android 10 বা উচ্চতর সংস্করণে প্রযোজ্য নয়):
- অ্যান্ড্রয়েড 9
- Android 8.x
যখন প্যাচ বাছাই করা হয়, OEM-দের ক্ষেত্রে ডিভাইস আপডেট করতে হবে।