Passpoint‏ (Hotspot 2.0)

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, ובמיוחד בתכונות של זיהוי רשת ובחירה ברשת, כמו Generic Advertisement Service‏ (GAS) ו-Access Network Query Protocol‏ (ANQP).

הטמעה

‫Android מגרסה 11 ואילך

כדי לתמוך ב-Passpoint במכשירים עם Android מגרסה 11 ואילך, יצרני המכשירים צריכים לספק תמיכה ב-firmware עבור 802.11u. כל שאר הדרישות לתמיכה ב-Passpoint כלולות ב-AOSP.

‫Android מגרסה 10 ומטה

במכשירים עם Android מגרסה 10 ומטה, יצרני המכשירים צריכים לספק תמיכה גם ב-framework וגם ב-HAL/firmware:

  • 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: צריך להיות מוגדר לערך 21
    • EAPMethod/InnerMethod: הערך צריך להיות אחד מאלה: PAP,‏ CHAP,‏ MS-CHAP או MS-CHAP-V2
  • DigitalCertificate: נדרש עבור EAP-TLS. צריך להגדיר את הצמתים הבאים:

    • CertificateType מוגדר לשעה x509v3
    • CertSHA256Fingerprint מוגדר לגיבוב (hash) הנכון לפי SHA-256 של אישור הלקוח בקטע MIME של מפתח EAP-TLS
  • SIM: נדרש עבור EAP-SIM,‏ EAP-AKA ו-EAP-AKA'. השדה EAPType צריך להיות מוגדר לסוג ה-EAP המתאים, והערך של IMSI צריך להיות זהה ל-IMSI של אחד מכרטיסי ה-SIM שמותקנים במכשיר בזמן ההקצאה. מחרוזת ה-IMSI יכולה להכיל רק ספרות עשרוניות כדי לאלץ התאמה מלאה, או 5 או 6 ספרות עשרוניות ואחריהן כוכבית (*) כדי להרחיב את ההתאמה של ה-IMSI רק ל-MCC/MNC. לדוגמה, המחרוזת IMSI 123456* תואמת לכל כרטיס 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 שרוצים להסתמך על רשויות אישורים ציבוריות מהימנות לצורך אימות שרת AAA יכולים להקצות פרופילים בלי אישור של רשות אישורים בסיסית. במקרה כזה, המערכת מאמתת את אישורי שרת ה-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:

  1. מוצגת רשימה של ספקי השירותים שמפרסמים את עצמם בבוחר ה-Wi-Fi (בנוסף להצגת ה-SSID).
  2. מוצגת למשתמש בקשה להקיש על אחד מספקי השירות כדי להגדיר פרופיל Passpoint.
  3. המשתמש מונחה בתהליך ההגדרה של פרופיל Passpoint.
  4. הפרופיל שנוצר מותקן בסיום מוצלח.
  5. השיוך לרשת 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
  • השם המלא של הדומיין שהוגדר הוא 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
  • השם המלא של הדומיין שהוגדר הוא globalroaming.net
  • מספרי OIs של קונסורציום בנדידה (לנדידה)
  • התחום שהוגדר: 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
  • השם המלא של הדומיין שהוגדר הוא 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 או Android מגרסה 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, ולכן יישומי לקוח שתואמים למפרטים לא אמורים להיפגע.

  1. מוסיפים את רכיב ה-ANQP של תחום ה-NAI.
  2. מגדירים את שדה המשנה של תחום NAI כך שיתאים ל-Realm של הפרופיל שהותקן במכשיר.
  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)

תיקון במכשיר או ב-AOSP ליצרני ציוד מקורי

כדי להטמיע פתרון עקיף בצד המכשיר, יצרני ציוד מקורי (OEM) צריכים לבחור את תיקון ה-CL aosp/718508. אפשר להחיל את התיקון הזה על הגרסאות הבאות (לא רלוונטי ל-Android מגרסה 10 ואילך):

  • ‫Android 9
  • ‫Android 8.x

כשמזהים את התיקון, יצרני ציוד מקורי (OEM) צריכים לעדכן את המכשירים בשטח.