Passpoint یک پروتکل Wi-Fi Alliance (WFA) است که به دستگاههای تلفن همراه امکان میدهد تا نقاط اتصال Wi-Fi که دسترسی به اینترنت را فراهم میکنند، شناسایی و احراز هویت کنند.
پشتیبانی دستگاه
برای پشتیبانی از Passpoint، تولیدکنندگان دستگاه باید رابط Supplicant را پیادهسازی کنند. با شروع از اندروید ۱۳، رابط از AIDL برای تعریف HAL استفاده میکند. برای نسخههای قبل از اندروید ۱۳، رابطها و پارتیشنهای فروشنده از HIDL استفاده میکنند. فایلهای HIDL در hardware/interfaces/supplicant/1.x و فایلهای AIDL در hardware/interfaces/supplicant/aidl قرار دارند. Supplicant از استاندارد ۸۰۲.۱۱u، به ویژه ویژگیهای کشف و انتخاب شبکه مانند سرویس تبلیغات عمومی (GAS) و پروتکل جستجوی شبکه دسترسی (ANQP) پشتیبانی میکند.
پیادهسازی
پیادهسازی Passpoint بسته به نسخه اندروید متفاوت است.
اندروید ۱۱ یا بالاتر
برای پشتیبانی از Passpoint در دستگاههایی که اندروید ۱۱ یا بالاتر دارند، تولیدکنندگان دستگاه باید پشتیبانی میانافزار از ۸۰۲.۱۱u را ارائه دهند. سایر الزامات برای پشتیبانی از Passpoint در AOSP گنجانده شده است.
اندروید ۱۰ یا پایینتر
برای دستگاههایی که اندروید ۱۰ یا پایینتر دارند، تولیدکنندگان دستگاه باید هم چارچوب و هم پشتیبانی از HAL و سیستم عامل را ارائه دهند:
- چارچوب: فعال کردن Passpoint (نیاز به یک feature flag دارد)
- سیستم عامل: پشتیبانی از 802.11u
برای پشتیبانی از Passpoint، Wi-Fi HAL را پیادهسازی کنید و feature flag را برای Passpoint فعال کنید. در device.mk که در device/<oem>/<device> قرار دارد، متغیر محیطی 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
اندروید از اندروید ۶.۰ به بعد از Passpoint R1 پشتیبانی میکند و امکان تهیه اعتبارنامههای Passpoint R1 (نسخه ۱) را از طریق دانلود مبتنی بر وب یک فایل ویژه که حاوی اطلاعات پروفایل و اعتبارنامه است، فراهم میکند. کلاینت به طور خودکار یک نصبکننده ویژه برای اطلاعات Wi-Fi راهاندازی میکند و به کاربر اجازه میدهد قبل از پذیرش یا رد محتوا، بخشهایی از اطلاعات را مشاهده کند.
اطلاعات پروفایل موجود در فایل برای تطبیق با دادههای بازیابی شده از نقاط دسترسی دارای Passpoint استفاده میشود و اعتبارنامهها به طور خودکار برای هر شبکه تطبیق یافته اعمال میشوند.
پیادهسازی مرجع اندروید از EAP-TTLS، EAP-TLS، EAP-SIM، EAP-AKA و EAP-AKA پشتیبانی میکند.
مکانیزم دانلود
فایل پیکربندی Passpoint باید روی یک وب سرور میزبانی شود و با TLS (HTTPS) محافظت شود زیرا ممکن است حاوی رمز عبور متنی ساده یا دادههای کلید خصوصی باشد. محتوا از متن MIME چند قسمتی پیچیده شده تشکیل شده است که به صورت UTF-8 نمایش داده شده و طبق بخش 6.8 از RFC-2045 با کدگذاری base64 کدگذاری شده است.
فیلدهای هدر HTTP زیر توسط کلاینت برای اجرای خودکار نصبکنندهی Wi-Fi روی دستگاه استفاده میشوند:
-
Content-Typeباید رویapplication/x-wifi-configتنظیم شود. -
Content-Transfer-Encodingباید رویbase64تنظیم شود. - نباید
Content-Dispositionتنظیم شود.
روش HTTP مورد استفاده برای بازیابی فایل باید GET باشد. هر زمان که یک HTTP GET از مرورگر پاسخی با این هدرهای MIME دریافت کند، برنامه نصب شروع میشود. دانلود باید با ضربه زدن روی یک عنصر HTML مانند یک دکمه آغاز شود (هدایت خودکار به URL دانلود پشتیبانی نمیشود). این رفتار مختص گوگل کروم است؛ سایر مرورگرهای وب ممکن است عملکرد مشابهی را ارائه دهند یا ندهند.
ترکیب فایل
محتوای کدگذاری شده 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. |
| کلید EAP-TLS | application/x-pkcs12 | مورد نیاز برای EAP-TLS | یک ساختار ASN.1 با رمزگذاری base64 از نوع PKCS #12 که شامل یک زنجیره گواهی کلاینت با حداقل گواهی کلاینت و کلید خصوصی مرتبط است. کانتینر PKCS 12 و همچنین کلید خصوصی و گواهیها باید همگی به صورت متن ساده و بدون رمز عبور باشند. |
بخش Profile باید به صورت متن XML کدگذاری شده با base64 و UTF-8 منتقل شود که بخشهایی از زیرشاخههای HomeSP و Credential را در مشخصات فنی Passpoint R2 نسخه 1.0.0، بخش 9.1 مشخص میکند.
گره سطح بالا باید MgmtTree و زیرگره بلافصل باید PerProviderSubscription باشد. یک فایل XML نمونه در Example profile OMA-DM XML ظاهر میشود.
گرههای زیرشاخه زیر تحت HomeSP استفاده میشوند:
-
FriendlyName: باید تنظیم شود؛ به عنوان متن نمایشی استفاده میشود. -
FQDN: الزامی -
RoamingConsortiumOI
گرههای زیرشاخه زیر تحت Credential استفاده میشوند:
-
Realm: باید یک رشته غیرتهی باشد UsernamePassword: برای EAP-TTLS با تنظیم گرههای زیر مورد نیاز است:-
Username: رشتهای که شامل نام کاربری است -
Password: رشته کدگذاری شده با Base64 (در مثال زیر، رویcGFzc3dvcmQ=، رشته کدگذاری شده با base64 برای "password"، تنظیم شده است) -
EAPMethod/EAPType: باید روی21تنظیم شود. -
EAPMethod/InnerMethod: باید روی یکی ازPAP،CHAP،MS-CHAPیاMS-CHAP-V2تنظیم شود.
-
DigitalCertificate: برای EAP-TLS مورد نیاز است. گرههای زیر باید تنظیم شوند:-
CertificateTypeرویx509v3تنظیم شده است -
CertSHA256Fingerprintروی خلاصه SHA-256 صحیح گواهی کلاینت در بخش MIME کلید EAP-TLS تنظیم شده است.
-
SIM: برای EAP-SIM، EAP-AKA و EAP-AKA' مورد نیاز است. فیلدEAPTypeباید روی نوع EAP مناسب تنظیم شود وIMSIباید با IMSI یکی از سیمکارتهای نصب شده در دستگاه در زمان تهیه مطابقت داشته باشد. رشته IMSI میتواند یا کاملاً از ارقام اعشاری تشکیل شود تا تطابق کامل برابری اعمال شود، یا میتواند از ۵ یا ۶ رقم اعشاری به همراه ستاره (*) تشکیل شود تا تطابق IMSI فقط با MCC/MNC برقرار شود. به عنوان مثال، رشته IMSI123456*با هر سیمکارتی که MCC آن123و MNC آن456باشد، مطابقت دارد.
اندروید ۱۱ قابلیتهایی را معرفی میکند که باعث میشود Passpoint R1 انعطافپذیرتر باشد.
- نام دامنه احراز هویت، مجوز و حسابداری جداگانه (AAA)
مدیران شبکهای که به یک نام دامنه AAA نیاز دارند که مستقل از نام دامنه کامل (FQDN) اعلام شده توسط شبکه از طریق پروتکل جستجوی شبکه دسترسی (ANQP) مشخص شده باشد، میتوانند لیستی از FQDNها را که با نقطه ویرگول از هم جدا شدهاند، در یک گره جدید در زیر درخت
Extensionsubtree) مشخص کنند. این یک گره اختیاری است و دستگاههایی که اندروید نسخه 10 یا پایینتر را اجرا میکنند، این گره را نادیده میگیرند.Android: زیرشاخه افزونه اندرویدAAAServerTrustedNames: برای نامهای قابل اعتماد سرور AAA با تنظیم گرههای زیر مورد نیاز است:-
FQDN: رشتهای که شامل نامهای معتبر سرور AAA است. برای جدا کردن نامهای معتبر از نقطه ویرگول استفاده کنید. برای مثال،example.org;example.com.
-
- مراکز صدور گواهی ریشه خصوصی خودامضا
مدیران شبکه Passpoint که گواهینامههای خود را به صورت داخلی مدیریت میکنند، میتوانند پروفایلهایی با یک CA خصوصی امضا شده برای احراز هویت AAA ارائه دهند.
- اجازه نصب پروفایلها بدون گواهی Root CA
گواهی Root CA که به پروفایل متصل است، برای احراز هویت سرور AAA استفاده میشود. مدیران شبکه Passpoint که میخواهند برای احراز هویت سرور AAA خود به Root CA های معتبر عمومی تکیه کنند، میتوانند پروفایلهایی را بدون گواهی Root CA تهیه کنند. در این حالت، سیستم گواهیهای سرور AAA را با گواهیهای عمومی Root CA که در مخزن اعتماد نصب شدهاند، تأیید میکند.
تأمین Passpoint R2
اندروید ۱۰ پشتیبانی از ویژگیهای Passpoint R2 را معرفی کرد. Passpoint R2 ثبتنام آنلاین (OSU) را پیادهسازی میکند، روشی استاندارد برای ارائه پروفایلهای Passpoint جدید. اندروید ۱۰ و بالاتر از ارائه پروفایلهای EAP-TTLS با استفاده از پروتکل SOAP-XML بر روی OSU ESS باز پشتیبانی میکند.
ویژگیهای پشتیبانیشدهی Passpoint R2 فقط به کد مرجع AOSP نیاز دارند (هیچ پشتیبانی درایور یا میانافزار اضافی لازم نیست). کد مرجع AOSP همچنین شامل پیادهسازی پیشفرض رابط کاربری Passpoint R2 در برنامهی تنظیمات است.
وقتی اندروید یک نقطه دسترسی Passpoint R2 را شناسایی میکند، چارچوب اندروید:
- فهرستی از ارائهدهندگان خدمات تبلیغشده توسط نقطه دسترسی را در انتخابگر Wi-Fi نمایش میدهد (علاوه بر نمایش SSIDها).
- از کاربر میخواهد برای تنظیم پروفایل Passpoint، یکی از ارائهدهندگان خدمات را لمس کند.
- کاربر را در جریان تنظیم پروفایل Passpoint راهنمایی میکند.
- پروفایل Passpoint حاصل را پس از اتمام موفقیتآمیز نصب میکند.
- با استفاده از پروفایل Passpoint که به تازگی ارائه شده است، به شبکه Passpoint متصل میشود.
ویژگیهای Passpoint R3
اندروید ۱۲ ویژگیهای Passpoint R3 زیر را معرفی میکند که تجربه کاربری را بهبود میبخشد و به شبکهها اجازه میدهد تا با قوانین محلی مطابقت داشته باشند:
- شرایط و ضوابط
پذیرش شرایط و ضوابط در برخی مکانها و حوزهها برای ارائه دسترسی به شبکه از نظر قانونی الزامی است. این ویژگی به استقرارهای شبکه اجازه میدهد تا پورتالهای کپتیو ناامن که از شبکههای باز استفاده میکنند را با یک شبکه Passpoint امن جایگزین کنند. هنگامی که پذیرش شرایط و ضوابط الزامی باشد، یک اعلان به کاربر نمایش داده میشود.
آدرس اینترنتی (URL) شرایط و ضوابط باید به یک وبسایت امن با استفاده از HTTPS اشاره کند. اگر URL به یک وبسایت ناامن اشاره کند، چارچوب بلافاصله اتصال را قطع و شبکه را مسدود میکند.
- آدرس اینترنتی اطلاعات محل برگزاری
به اپراتورهای شبکه و مکانها اجازه میدهد تا اطلاعات بیشتری مانند نقشههای مکان، فهرستها، تبلیغات و کوپنها را در اختیار کاربر قرار دهند. هنگام اتصال شبکه، یک اعلان به کاربر نمایش داده میشود.
آدرس اینترنتی (URL) اطلاعات محل برگزاری باید به یک وبسایت امن با استفاده از HTTPS اشاره کند. اگر URL به یک وبسایت ناامن اشاره کند، چارچوب URL را نادیده میگیرد و اعلانی نمایش نمیدهد.
سایر ویژگیهای Passpoint
اندروید ۱۱ قابلیتهای Passpoint زیر را معرفی میکند که تجربه کاربری، مصرف برق و انعطافپذیری در پیادهسازی را بهبود میبخشد.
- اجرای تاریخ انقضا و اطلاع رسانی
- اعمال تاریخ انقضا روی پروفایلها به چارچوب اجازه میدهد تا از اتصال خودکار به نقاط دسترسی با اعتبارنامههای منقضیشده، که قطعاً منجر به خطا میشوند، جلوگیری کند. این امر از مصرف زمان پخش جلوگیری میکند و در مصرف باتری و پهنای باند بکاند صرفهجویی میکند. چارچوب هنگامی که شبکهای مطابق با پروفایل کاربر در محدوده باشد و پروفایل منقضی شده باشد، اعلانی را به کاربر نمایش میدهد.
- چندین پروفایل با FQDN یکسان
- اپراتورهایی که شبکههای Passpoint را راهاندازی میکنند و از چندین شناسه شبکه تلفن همراه عمومی (PLMN) استفاده میکنند، میتوانند چندین پروفایل Passpoint با FQDN یکسان، یکی برای هر شناسه PLMN، ارائه دهند که به طور خودکار با سیمکارت نصب شده مطابقت داده شده و برای اتصال به شبکه استفاده میشود.
اندروید ۱۲ قابلیتهای Passpoint زیر را معرفی میکند که تجربه کاربری، مصرف برق و انعطافپذیری در پیادهسازی را بهبود میبخشد:
- پیشوند هویتی تزئینشده
- هنگام احراز هویت در شبکههایی با پیشوند مشخص، پیشوند هویت مشخص به اپراتورهای شبکه اجازه میدهد تا شناسه دسترسی به شبکه (NAI) را بهروزرسانی کنند تا مسیریابی صریح را از طریق چندین پروکسی درون یک شبکه AAA انجام دهند (به RFC 7542 مراجعه کنید). اندروید ۱۲ این ویژگی را مطابق با مشخصات WBA برای افزونههای PPS-MO پیادهسازی میکند.
- رسیدگی قریبالوقوع به لغو احراز هویت
- به اپراتورهای شبکه اجازه میدهد تا به دستگاهی سیگنال دهند که سرویس برای اعتبارنامهای که برای احراز هویت در شبکه استفاده میشود، برای مدت معینی (که از طریق تأخیر زمانی مشخص میشود) در دسترس نیست. پس از دریافت این سیگنال، دستگاهها تا زمانی که تأخیر زمانی منقضی نشود، سعی نمیکنند دوباره با همان اعتبارنامه به شبکه متصل شوند. در مقابل، دستگاههایی که از این ویژگی پشتیبانی نمیکنند، ممکن است در حالی که سرویس در دسترس نیست، بارها و بارها سعی کنند دوباره به شبکه متصل شوند.
نمونههایی از پروفایلهای XML مربوط به OMA-DM PerProviderSubscription-MO
پروفایل با نام کاربری و رمز عبور (EAP-TTLS)
مثال زیر یک پروفایل برای شبکهای با مشخصات زیر را نشان میدهد:
- نام مناسب شبکه روی
Example Networkتنظیم شده است - FQDN روی
hotspot.example.netتنظیم شده است - OI های کنسرسیوم رومینگ (برای رومینگ)
- اعتبارنامه با نام کاربری
user،passwordpassword که با Base64 کدگذاری شده و 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 های کنسرسیوم رومینگ (برای رومینگ)
- 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تنظیم شده است - اعتبار سیمکارت با شناسه PLMN
999888 - روش 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>
مشاوره مجوز
دستگاههایی که اندروید ۸.x یا اندروید ۹ را اجرا میکنند و دارای پروفایل Passpoint R1 EAP-SIM، EAP-AKA یا EAP-AKA هستند، به طور خودکار به شبکه Passpoint متصل نمیشوند. این مشکل با کاهش بار وایفای، کاربران، اپراتورها و سرویسها را تحت تأثیر قرار میدهد.
| بخش | تأثیر | اندازه تأثیر |
|---|---|---|
| ارائه دهندگان خدمات اپراتورها و Passpoint | افزایش بار شبکه تلفن همراه | هر اپراتوری که از Passpoint R1 استفاده میکند. |
| کاربران | فرصت اتصال خودکار به نقاط دسترسی (AP) وایفای اپراتور از دست رفت و در نتیجه هزینههای داده افزایش یافت. | هر کاربری که دستگاهی دارد که روی شبکه اپراتوری کار میکند که از 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.
معیار دوم در اندروید ۸.۰ اصلاح شد:
Else: If the PLMN ID (3GPP Network) matches AND the NAI Realm matches
then the service is a Roaming Service Provider.
با این تغییر، سیستم هیچ تطابقی با ارائهدهندگان خدمات قبلی که کار میکردند، مشاهده نکرد، بنابراین دستگاههای Passpoint به طور خودکار متصل نشدند.
راه حل ها
برای حل مشکل معیارهای تطبیق اصلاحشده، اپراتورها و ارائهدهندگان خدمات باید حوزه شناسه دسترسی به شبکه (NAI) را به اطلاعات منتشر شده توسط Passpoint AP اضافه کنند.
راهحل پیشنهادی برای ارائهدهندگان خدمات شبکه این است که برای سریعترین زمان استقرار، یک راهحل جانبی شبکه پیادهسازی کنند. یک راهحل جانبی دستگاه به این بستگی دارد که تولیدکنندگان اصلی تجهیزات (OEM) یک لیست تغییرات (CL) را از AOSP دریافت کنند و سپس دستگاههای موجود را بهروزرسانی کنند.
رفع مشکل شبکه برای اپراتورها و ارائه دهندگان خدمات Passpoint
راه حل سمت شبکه نیاز به پیکربندی مجدد شبکه برای اضافه کردن عنصر ANQP قلمرو NAI به شرح زیر دارد. مشخصات Passpoint نیازی به عنصر ANQP قلمرو NAI ندارد، اما اضافه کردن این ویژگی با مشخصات Passpoint مطابقت دارد، بنابراین پیادهسازیهای کلاینت سازگار با مشخصات نباید با مشکل مواجه شوند.
- عنصر ANQP مربوط به قلمرو NAI را اضافه کنید.
- زیرفیلد قلمرو NAI را طوری تنظیم کنید که با
Realmپروفایل نصب شده روی دستگاه مطابقت داشته باشد. - اطلاعات زیر را بر اساس هر نوع 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 : تنظیم
رفع مشکل Device/AOSP برای OEMها
برای پیادهسازی یک راهحل جانبی در سمت دستگاه، تولیدکنندگان اصلی تجهیزات (OEM) باید پچ CL aosp/718508 را انتخاب کنند. این پچ را میتوان روی نسخههای زیر اعمال کرد (برای اندروید ۱۰ یا بالاتر اعمال نمیشود):
- اندروید ۹
- اندروید ۸.x
وقتی وصله امنیتی دریافت شد، تولیدکنندگان اصلی تجهیزات (OEM) باید دستگاههای موجود در محل را بهروزرسانی کنند.