Passpoint הוא פרוטוקול של Wi-Fi Alliance (WFA) שמאפשר למכשירים ניידים לגלות נקודות Wi-Fi לשיתוף אינטרנט שמספקות גישה לאינטרנט ולאמת אותן.
תמיכה במכשיר
כדי לתמוך ב-Passpoint, יצרני המכשירים צריכים להטמיע את ממשק ה-Supplicant. החל מ-Android 13, הממשק משתמש ב-AIDL להגדרת HAL.
בגרסאות קודמות ל-Android 13, ממשקים ומחיצות ספקים משתמשים ב-HIDL.
קבצי ה-HIDL נמצאים ב-hardware/interfaces/supplicant/1.x
וקובצי ה-AIDL נמצאים ב-hardware/interfaces/supplicant/aidl.
הלקוח מספק תמיכה בתקן 802.11u, במיוחד בתכונות של גילוי רשת ובחירה, כמו שירות פרסום כללי (GAS) ופרוטוקול שאילתת רשת גישה (ANQP).
הטמעה
ההטמעה של Passpoint משתנה בהתאם לגרסת Android.
Android מגרסה 11 ואילך
כדי לתמוך ב-Passpoint במכשירים עם Android מגרסה 11 ואילך, יצרני המכשירים צריכים לספק תמיכה ב-firmware ל-802.11u. כל שאר הדרישות לתמיכה ב-Passpoint כלולות ב-AOSP.
Android מגרסה 10 ומטה
במכשירים עם Android מגרסה 10 ומטה, יצרני המכשירים צריכים לספק תמיכה גם ב-framework וב-HAL וגם בקושחה:
- Framework: Enable Passpoint (requires a feature flag)
- קושחה: תמיכה ב-802.11u
כדי לתמוך ב-Passpoint, צריך להטמיע את Wi-Fi HAL ולהפעיל את דגל התכונה עבור 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
מערכת Android תומכת ב-Passpoint R1 מאז Android 6.0, ומאפשרת הקצאה של אישורי Passpoint R1 (גרסה 1) באמצעות הורדה מבוססת-אינטרנט של קובץ מיוחד שמכיל מידע על פרופיל ואישורים. הלקוח מפעיל אוטומטית תוכנת התקנה מיוחדת למידע על ה-Wi-Fi ומאפשר למשתמש לצפות בחלקים מהמידע לפני שהוא מאשר או דוחה את התוכן.
פרטי הפרופיל שכלולים בקובץ משמשים להתאמה לנתונים שאוחזרו מנקודות גישה עם Passpoint, ופרטי הכניסה מוחלים באופן אוטומטי על כל רשת תואמת.
הטמעת ההפניה של Android תומכת ב-EAP-TTLS, EAP-TLS, EAP-SIM, EAP-AKA ו-EAP-AKA'.
מנגנון ההורדה
קובץ ההגדרה של Passpoint צריך להיות מאוחסן בשרת אינטרנט ומוגן באמצעות TLS (HTTPS), כי הוא עשוי להכיל סיסמה בטקסט פשוט או נתונים של מפתח פרטי. התוכן מורכב מטקסט MIME מרובה חלקים עטוף שמיוצג ב-UTF-8 ומקודד בקידוד base64 לפי סעיף 6.8 ב-RFC-2045.
שדות הכותרת הבאים של HTTP משמשים את הלקוח להפעלת תוכנת התקנה של Wi-Fi במכשיר באופן אוטומטי:
- הערך של
Content-Typeחייב להיותapplication/x-wifi-config. - הערך של
Content-Transfer-Encodingחייב להיותbase64. - אסור להגדיר את
Content-Disposition.
שיטת ה-HTTP שמשמשת לאחזור הקובץ חייבת להיות GET. בכל פעם שמתקבלת תגובה עם כותרות ה-MIME האלה מקריאת HTTP GET מהדפדפן, אפליקציית ההתקנה מופעלת. ההורדה צריכה להתחיל בלחיצה על רכיב HTML, כמו לחצן (הפניות אוטומטיות לכתובת URL של הורדה לא נתמכות). ההתנהגות הזו ספציפית ל-Google Chrome. יכול להיות שדפדפני אינטרנט אחרים יספקו פונקציונליות דומה, ויכול להיות שלא.
הרכב הקבצים
התוכן בקידוד Base64 חייב להיות תוכן MIME multipart עם Content-Type של multipart/mixed. החלקים הבאים מרכיבים את החלקים הנפרדים של תוכן ה-multipart.
| Part | Content-Type (ללא מרכאות) | חובה | תיאור |
|---|---|---|---|
| פרופיל |
application/x-passpoint-profile
|
תמיד | מטען ייעודי (payload) בפורמט OMA-DM SyncML שמכיל את ה-MO בפורמט Passpoint R1
PerProviderSubscription עבור HomeSP
ו-Credential. |
| אישור מהימן |
application/x-x509-ca-cert
|
נדרש עבור EAP-TLS ו-EAP-TTLS | מטען ייעודי (payload) של אישור יחיד בקידוד Base64 מסוג X.509v3. |
| מפתח EAP-TLS |
application/x-pkcs12
|
נדרש עבור EAP-TLS | מבנה PKCS #12 ASN.1 בקידוד Base64 שמכיל שרשרת של אישורי לקוח, עם לפחות אישור הלקוח והמפתח הפרטי המשויך. קובץ ה-PKCS 12, המפתח הפרטי והאישורים צריכים להיות בטקסט לא מוצפן ללא סיסמה. |
הקטע Profile צריך להיות מועבר כטקסט XML בקידוד Base64 ובקידוד UTF-8, שמציין חלקים מעץ המשנה HomeSP ומעץ המשנה Credential במפרט הטכני של Passpoint R2 בגרסה 1.0.0, קטע 9.1.
צומת הרמה העליונה חייב להיות MgmtTree וצומת המשנה המיידי חייב להיות PerProviderSubscription. דוגמה לקובץ XML מופיעה במאמר דוגמה לפרופיל OMA-DM XML.
הצמתים הבאים בעץ המשנה נמצאים מתחת לצומת HomeSP:
-
FriendlyName: חובה להגדיר את הערך הזה. הוא משמש כטקסט שמוצג למשתמשים. -
FQDN: חובה RoamingConsortiumOI
הצמתים הבאים בעץ המשנה נמצאים מתחת לצומת Credential:
-
Realm: מחרוזת לא ריקה
UsernamePassword: נדרש עבור EAP-TTLS עם הצמתים הבאים:Username: מחרוזת שמכילה את שם המשתמש-
Password: מחרוזת בקידוד Base64 (מוגדרת ל-cGFzc3dvcmQ=, המחרוזת בקידוד Base64 של 'password', בדוגמה הבאה) EAPMethod/EAPType: צריך להיות מוגדר לערך21EAPMethod/InnerMethod: הערך צריך להיות אחד מאלה:PAP,CHAP,MS-CHAPאוMS-CHAP-V2
DigitalCertificate: נדרש עבור EAP-TLS. צריך להגדיר את הצמתים הבאים:CertificateTypeמוגדר לשעהx509v3-
CertSHA256Fingerprintמוגדר לגיבוב (digest) הנכון לפי SHA-256 של אישור הלקוח בקטע MIME של מפתח EAP-TLS
SIM: חובה ל-EAP-SIM, ל-EAP-AKA ול-EAP-AKA'. השדהEAPTypeצריך להיות מוגדר לסוג ה-EAP המתאים, והערך שלIMSIצריך להיות זהה ל-IMSI של אחד מכרטיסי ה-SIM שמותקנים במכשיר בזמן ההקצאה. מחרוזת ה-IMSI יכולה להכיל רק ספרות עשרוניות כדי לאלץ התאמה מלאה, או 5 או 6 ספרות עשרוניות ואחריהן כוכבית (*) כדי להרחיב את ההתאמה של ה-IMSI רק ל-MCC/MNC. לדוגמה, מחרוזת ה-IMSI123456*תואמת לכל כרטיס SIM עם MCC כ-123ו-MNC כ-456.
ב-Android 11 נוספו יכולות שהופכות את ההקצאה של Passpoint R1 לגמישה יותר.
- שם דומיין נפרד לאימות, להרשאה ולניהול חשבונות (AAA)
מנהלי רשתות Passpoint שצריכים לציין שם דומיין AAA בנפרד משם הדומיין שמוגדר במלואו (FQDN) שמשודר על ידי הרשת באמצעות פרוטוקול השאילתות של רשת הגישה (ANQP), יכולים לציין רשימה של שמות דומיין שמוגדרים במלואם (FQDN) שמופרדים באמצעות נקודה-ופסיק בצומת חדש מתחת לעץ המשנה
Extension. זהו צומת אופציונלי ומכשירים עם Android מגרסה 10 ומטה מתעלמים ממנו.
Android: עץ משנה של תוסף Android
AAAServerTrustedNames: נדרש עבור שמות מהימנים של שרת AAA עם הצמתים הבאים:-
FQDN: מחרוזת שמכילה את השמות המהימנים של שרת ה-AAA. משתמשים בנקודה-פסיק כדי להפריד בין השמות המהימנים. לדוגמה,example.org;example.com.
-
- רשויות אישורים (CA) פרטיות בחתימה עצמית
אדמינים של רשתות Passpoint שמנהלים את האישורים שלהם באופן פנימי יכולים להקצות פרופילים עם רשות CA פרטית בחתימה עצמית לאימות AAA.
- אפשר להתקין פרופילים ללא אישור CA בסיסי
אישור ה-CA הבסיסי שמצורף לפרופיל משמש לאימות שרת AAA. אדמינים של רשתות Passpoint שרוצים להסתמך על רשויות אישורים (CA) ציבוריות מהימנות לצורך אימות שרת AAA יכולים להקצות פרופילים בלי אישור CA בסיסי. במקרה כזה, המערכת מאמתת את אישורי שרת ה-AAA מול אישורי ה-CA הבסיסיים הציבוריים שהותקנו במאגר האישורים המהימנים.
הקצאת הרשאות ב-Passpoint R2
ב-Android 10 נוספה תמיכה בתכונות של Passpoint R2. ב-Passpoint R2 מיושמת הרשמה אונליין (OSU), שיטה סטנדרטית להקצאת פרופילי Passpoint חדשים. Android 10 ואילך תומך בהקצאת פרופילים של EAP-TTLS באמצעות פרוטוקול SOAP-XML דרך OSU ESS פתוח.
התכונות הנתמכות של Passpoint R2 דורשות רק קוד הפניה של AOSP (לא נדרשת תמיכה נוספת במנהל התקן או בקושחה). קוד ההפניה של AOSP כולל גם הטמעה של ברירת המחדל של ממשק המשתמש של Passpoint R2 באפליקציית ההגדרות.
כשמערכת Android מזהה נקודת גישה Passpoint R2, מסגרת Android:
- מוצגת רשימה של ספקי השירותים שמפרסמים את עצמם בבוחר ה-Wi-Fi (בנוסף להצגת ה-SSID).
- מוצגת למשתמש בקשה להקיש על אחד מספקי השירות כדי להגדיר פרופיל Passpoint.
- המשתמש מונחה בתהליך ההגדרה של פרופיל Passpoint.
- הפרופיל שנוצר מותקן בסיום מוצלח.
- התחברות לרשת Passpoint באמצעות פרופיל Passpoint שהוקצה לאחרונה.
תכונות של Passpoint R3
Android 12 כוללת את התכונות הבאות של Passpoint R3, שמשפרות את חוויית המשתמש ומאפשרות לרשתות לעמוד בדרישות של החוקים המקומיים:
- תנאים והגבלות
במקומות מסוימים נדרשת הסכמה לתנאים ולהגבלות כדי לקבל גישה לרשת. התכונה הזו מאפשרת להחליף פריסות של רשתות עם פורטלים שבויים לא מאובטחים, שמבוססים על רשתות פתוחות, ברשת Passpoint מאובטחת. המשתמש מקבל הודעה כשנדרש אישור של התנאים וההגבלות.
כתובת ה-URL של התנאים וההגבלות חייבת להפנות לאתר מאובטח באמצעות HTTPS. אם כתובת ה-URL מפנה לאתר לא מאובטח, המסגרת מתנתקת מהרשת וחוסמת אותה באופן מיידי.
- כתובת URL עם פרטי המקום
מאפשרת למפעילים של רשתות ולבעלי מקומות לספק למשתמש מידע נוסף, כמו מפות של המקום, מדריכים, מבצעים ושוברים. התראה מוצגת למשתמש כשהרשת מחוברת.
כתובת ה-URL של פרטי המקום חייבת להפנות לאתר מאובטח באמצעות HTTPS. אם כתובת ה-URL מפנה לאתר לא מאובטח, המסגרת מתעלמת מכתובת ה-URL ולא מציגה התראה.
תכונות אחרות של Passpoint
Android 11 כוללת את היכולות הבאות של Passpoint, שמשפרות את חוויית המשתמש, את צריכת החשמל ואת הגמישות של הפריסה.
- אכיפה של תאריך התפוגה והתראות
- הגדרת תאריכי תפוגה לפרופילים מאפשרת למסגרת להימנע מחיבור אוטומטי לנקודות גישה עם פרטי כניסה שתוקפם פג, ולכן החיבור ייכשל. כך לא ייעשה שימוש בזמן שיחה, ותיחסך סוללה ורוחב פס של השרת. המסגרת מציגה למשתמש התראה כשברשת יש התאמה לפרופיל שלו והתוקף של הפרופיל פג.
- כמה פרופילים עם אותו FQDN
- ספקי סלולר שמפעילים רשתות Passpoint ומשתמשים בכמה מזהי רשתות סלולריות ציבוריות (PLMN) יכולים להקצות כמה פרופילים של Passpoint עם אותו שם דומיין מלא (FQDN), אחד לכל מזהה PLMN, שמוגדר באופן אוטומטי בהתאם לכרטיס ה-SIM המותקן ומשמש לחיבור לרשת.
Android 12 כוללת את היכולות הבאות של Passpoint, שמשפרות את חוויית המשתמש, את צריכת החשמל ואת הגמישות של הפריסה:
- קידומת של זהות מעוצבת
- כשמבצעים אימות לרשתות עם קידומת מעוטרת, קידומת הזהות המעוטרת מאפשרת למפעילי רשת לעדכן את מזהה הגישה לרשת (NAI) כדי לבצע ניתוב מפורש דרך כמה שרתי proxy בתוך רשת AAA (ראו RFC 7542). ב-Android 12, התכונה הזו מיושמת בהתאם למפרט WBA לתוספים של PPS-MO.
- טיפול בהסרת אימות שעומדת להתרחש
- מאפשר למפעילי רשתות לסמן למכשיר שהשירות לא זמין לאישורים שמשמשים לאימות ברשת למשך זמן מסוים (שמצוין באמצעות עיכוב של פסק זמן). אחרי קבלת האות הזה, המכשירים לא ינסו להתחבר מחדש לרשת עם אותם פרטי כניסה עד שתפוג ההשהיה של הזמן הקצוב לתפוגה. לעומת זאת, מכשירים שלא תומכים בתכונה הזו עשויים לנסות להתחבר לרשת שוב ושוב בזמן שהשירות לא זמין.
דוגמאות לפרופילי XML של OMA-DM PerProviderSubscription-MO
פרופיל עם פרטי כניסה של שם משתמש וסיסמה (EAP-TTLS)
בדוגמה הבאה מוצג פרופיל של רשת עם:
- השם שקל להבין של הרשת שהוגדר הוא
Example Network - ה-FQDN שהוגדר הוא
hotspot.example.net - מספרי OIs של קונסורציום בנדידה (לנדידה)
- פרטי כניסה עם שם משתמש
user, סיסמהpasswordבקידוד Base64, ותחום שהוגדר ל-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 - מזהי 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>
פרופיל עם פרטי כניסה ל-SIM (EAP-AKA)
בדוגמה הבאה מוצג פרופיל של רשת עם:
- השם שקל להבין של הרשת שהוגדר הוא
Purple Passpoint - ה-FQDN שהוגדר הוא
wlan.mnc888.mcc999.3gppnetwork.org - פרטי כניסה ל-SIM עם מזהה 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>
המלצות בנושא אימות
במכשירים עם Android מגרסה 8.x או מגרסה 9 עם פרופיל Passpoint R1 EAP-SIM, EAP-AKA או EAP-AKA', לא מתבצע חיבור אוטומטי לרשת Passpoint. הבעיה הזו משפיעה על משתמשים, ספקי סלולר ושירותים, כי היא מקטינה את העברת הנתונים מרשת סלולרית לרשת Wi-Fi.
| פלח | השפעה | גודל ההשפעה |
|---|---|---|
| ספקים של שירותי Passpoint | עומס מוגבר על הרשת הסלולרית. | כל ספק שמשתמש ב-Passpoint R1. |
| משתמשים | הייתה הזדמנות להתחבר אוטומטית לנקודות גישה (AP) ל-Wi-Fi של הספק, אבל היא לא נוצלה, ולכן עלויות הנתונים גבוהות יותר. | כל משתמש עם מכשיר שפועל ברשת של ספק שתומך ב-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 לא התחברו אוטומטית.
פתרונות עקיפים
כדי לעקוף את הבעיה של קריטריוני ההתאמה ששונו, ספקי סלולר וספקי שירותים צריכים להוסיף את תחום מזהה הגישה לרשת (NAI) למידע שפורסם על ידי נקודת הגישה של Passpoint.
הפתרון המומלץ הוא שספקי שירותי רשת יטמיעו פתרון עקיף בצד הרשת, כדי להגיע לפריסה בזמן הקצר ביותר. פתרון עקיף בצד המכשיר תלוי ביצרני ציוד מקורי (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: הגדרת
תיקון במכשיר או ב-AOSP ליצרני ציוד מקורי
כדי להטמיע פתרון עקיף בצד המכשיר, יצרני ציוד מקורי (OEM) צריכים לבחור את תיקון ה-CL aosp/718508. אפשר להחיל את התיקון הזה על הגרסאות הבאות (לא רלוונטי ל-Android 10 ואילך):
- Android 9
- Android 8.x
כשמזהים את התיקון, יצרני ציוד מקורי צריכים לעדכן את המכשירים בשטח.