Passpoint (Hotspot 2.0)

Passpoint to protokół Wi-Fi Alliance (WFA), który umożliwia urządzeniom mobilnym wykrywanie i uwierzytelnianie się w hotspotach Wi-Fi zapewniających dostęp do internetu.

Pomoc dotycząca urządzenia

Aby obsługiwać Passpoint, producenci urządzeń muszą wdrożyć interfejs Supplicant. Od Androida 13 interfejs używa AIDL do definiowania HAL. W przypadku wersji starszych niż Android 13 interfejsy i partycje dostawcy korzystają z HIDL. Pliki HIDL znajdują się w folderze hardware/interfaces/supplicant/1.x, a pliki AIDL – w folderze hardware/interfaces/supplicant/aidl. Użytkownik zapewnia obsługę standardu 802.11u, w szczególności funkcji wykrywania i wyboru sieci, takich jak Generic Advertisement Service (GAS) i protokół zapytań sieci dostępowej (ANQP).

Implementacja

Android 11 lub nowszy

Aby obsługiwać Passpoint na urządzeniach z Androidem 11 lub nowszym, producenci urządzeń muszą zapewnić obsługę oprogramowania układowego dla 802.11u. Wszystkie pozostałe wymagania dotyczące obsługi Passpoint są zawarte w AOSP.

Android 10 lub starszy

W przypadku urządzeń z Androidem 10 lub starszym producenci muszą zapewnić obsługę zarówno frameworku, jak i interfejsu HAL/firmware:

  • Framework: Włącz Passpoint (wymaga flagi funkcji)
  • Oprogramowanie: obsługa 802.11u

Aby obsługiwać Passpoint, zaimplementuj interfejs HAL Wi-Fi i włącz flagę funkcji Passpoint. W pliku device.mk znajdującym się w folderze device/<oem>/<device> zmień zmienną środowiskową PRODUCT_COPY_FILES, aby uwzględnić obsługę funkcji Passpoint:

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

Wszystkie pozostałe wymagania dotyczące obsługi Passpoint są zawarte w AOSP.

Weryfikacja

Aby sprawdzić implementację funkcji Passpoint, uruchom te testy jednostkowe pakietu Passpoint:

Testy usługi:

atest com.android.server.wifi.hotspot2

Testy menedżera:

atest android.net.wifi.hotspot2

Konfiguracja Passpoint R1

Android obsługuje Passpoint R1 od wersji 6.0, co umożliwia dostarczanie danych logowania Passpoint R1 (wersja 1) przez pobieranie przez przeglądarkę specjalnego pliku zawierającego informacje o profilu i danych logowania. Klient automatycznie uruchamia specjalny instalator informacji o Wi-Fi i pozwala użytkownikowi wyświetlić części informacji przed zaakceptowaniem lub odrzuceniem treści.

Informacje o profilu zawarte w pliku są używane do dopasowywania do danych pobranych z punktów dostępu obsługujących Passpoint, a dane logowania są automatycznie stosowane w przypadku każdej dopasowanej sieci.

Implementacja referencyjna na Androida obsługuje protokoły EAP-TTLS, EAP-TLS, EAP-SIM, EAP-AKA i EAP-AKA'.

Mechanizm pobierania

Plik konfiguracji Passpoint musi być hostowany na serwerze internetowym i chroniony za pomocą protokołu TLS (HTTPS), ponieważ może zawierać hasło w postaci zwykłego tekstu lub dane klucza prywatnego. Treść składa się z zawiniętego tekstu MIME w wielu częściach reprezentowanego w UTF-8 i zakodowanego w formacie base64 zgodnie z sekcją 6.8 standardu RFC-2045.

Te pola nagłówka HTTP są używane przez klienta do automatycznego uruchamiania instalatora Wi-Fi na urządzeniu:

  • Wartość Content-Type musi być ustawiona na application/x-wifi-config.
  • Wartość Content-Transfer-Encoding musi być ustawiona na base64.
  • Opcja Content-Disposition nie może być ustawiona.

Metoda HTTP użyta do pobrania pliku musi być GET. Za każdym razem, gdy usługa HTTP GET w przeglądarce otrzyma odpowiedź z tymi nagłówkami MIME, uruchamiana jest aplikacja do instalacji. Pobieranie musi być uruchamiane przez kliknięcie elementu HTML, takiego jak przycisk (nieobsługiwane są automatyczne przekierowania do adresu URL pobierania). Takie działanie jest charakterystyczne dla przeglądarki Google Chrome. Inne przeglądarki mogą mieć podobne funkcje, ale nie muszą.

Skład pliku

Treść zakodowana w formacie Base64 musi składać się z treści wieloczęściowych MIME z Content-Type multipart/mixed. Poszczególne części treści złożonych składają się z tych elementów:

Część Content-Type (bez cudzysłowów) Wymagany Opis
Profil application/x-passpoint-profile Zawsze Dane w formacie OMA-DM SyncML zawierające MO w formacie PerProviderSubscription Passpoint R1 dla HomeSPCredential.
Certyfikat zaufania application/x-x509-ca-cert Wymagane w przypadku EAP-TLS i EAP-TTLS Pojedynczy ładunek certyfikatu X.509v3 zakodowany w formacie base64.
Klucz EAP-TLS application/x-pkcs12 Wymagane w przypadku EAP-TLS Struktura PKCS #12 ASN.1 zakodowana w formacie base64, zawierająca łańcuch certyfikatów klienta z co najmniej certyfikatem klienta i powiązanym kluczem prywatnym. Kontener PKCS 12, a także klucz prywatny i certyfikaty muszą być w postaci zwykłego tekstu bez hasła.

Sekcja Profile musi być przesyłana jako tekst XML z kodowaniem base64 i UTF-8, który określa części poddrzewi HomeSPCredential w specyfikacji technicznej Passpoint R2 w wersji 1.0.0, sekcja 9.1.

Węzeł najwyższego poziomu musi być węzłem MgmtTree, a bezpośredni podrzędny węzeł musi być węzłem PerProviderSubscription. Przykładowy plik XML znajdziesz w sekcji Przykładowy profil XML OMA-DM.

W węźle HomeSP są używane te węzły poddrzewa:

  • FriendlyName: musi być ustawiony; służy jako tekst wyświetlany
  • FQDN: wymagane
  • RoamingConsortiumOI

W węźle Credential są używane te węzły poddrzewa:

  • Realm: musi być niepustym ciągiem znaków.
  • UsernamePassword: wymagane dla EAP-TTLS z tymi węzłami:

    • Username: ciąg znaków zawierający nazwę użytkownika
    • Password: ciąg znaków zakodowany w formacie Base64 (ustawiony na cGFzc3dvcmQ=, ciąg znaków zakodowany w formacie Base64 dla „hasło” w przykładzie poniżej)
    • EAPMethod/EAPType: musi mieć wartość 21.
    • EAPMethod/InnerMethod: musi być ustawiony na jedną z wartości PAP, CHAP, MS-CHAP lub MS-CHAP-V2.
  • DigitalCertificate: wymagane w przypadku protokołu EAP-TLS. Musisz skonfigurować te węzły:

    • Ustawiono CertificateType na x509v3
    • CertSHA256Fingerprint ustawiony na prawidłowy skrót SHA-256 certyfikatu klienta w sekcji klucza MIME EAP-TLS.
  • SIM: wymagane w przypadku EAP-SIM, EAP-AKA i EAP-AKA'. Pole EAPType musi być ustawione na odpowiedni typ EAP, a wartość IMSI musi być zgodna z identyfikatorem IMSI jednej z kart SIM zainstalowanych na urządzeniu w momencie obsługi. Ciąg znaków IMSI może składać się wyłącznie z cyfr dziesiętnych, aby wymusić pełne dopasowanie, lub z 5 lub 6 cyfr dziesiętnych z gwiazdką (*), aby dopasowanie IMSI obejmowało tylko MCC/MNC. Na przykład ciąg znaków IMSI 123456* pasuje do dowolnej karty SIM z identyfikatorem MCC 123 i MNC 456.

Android 11 wprowadza funkcje, które zwiększają elastyczność konfigurowania Passpointa R1.

Oddzielna nazwa domeny służąca do uwierzytelniania, autoryzacji i rozliczania (AAA)

Administratorzy sieci Passpoint, którzy wymagają nazwy domeny AAA określonej niezależnie od pełnej i jednoznacznej nazwy domeny (FQDN) reklamowanej przez sieć za pomocą protokołu ANQP (Access Network Query Protocol), mogą określić listę pełnych i jednoznacznych nazw domen (FQDN) oddzielonych średnikami w nowym węźle podrzędnym w poddrzewie Extension. To jest węzeł opcjonalny, a urządzenia z Androidem w wersji 10 lub starszej ignorują ten węzeł.

  • Android: poddrzewo rozszerzenia na Androida

    • AAAServerTrustedNames: wymagane dla nazw zaufanych serwera AAA z tymi węzłami:

      • FQDN: ciąg znaków zawierający zaufane nazwy serwera AAA. Nazwy zaufanych użytkowników rozdzielaj średnikami. Na przykład: example.org;example.com.
prywatne główne urzędy certyfikacji z podpisami własnymi
Administratorzy sieci Passpoint, którzy zarządzają certyfikatami wewnętrznie, mogą udostępniać profile za pomocą prywatnego urzędu certyfikacji z własnym podpisem cyfrowym na potrzeby uwierzytelniania AAA.
Zezwalanie na instalowanie profili bez certyfikatu głównego urzędu certyfikacji
Certyfikat głównego urzędu certyfikacji dołączony do profilu jest używany do uwierzytelniania serwera AAA. Administratorzy sieci Passpoint, którzy chcą korzystać z publicznych zaufanych urzędów certyfikacji głównych do uwierzytelniania serwera AAA, mogą udostępniać profile bez certyfikatu głównego urzędu certyfikacji. W takim przypadku system sprawdza certyfikaty serwera AAA na podstawie publicznych certyfikatów głównych urzędów certyfikacji zainstalowanych w magazynie zaufanych certyfikatów.

Konfigurowanie Passpoint R2

Android 10 wprowadził obsługę funkcji Passpoint R2. Passpoint R2 implementuje rejestrację online (OSU), czyli standardową metodę tworzenia nowych profili Passpoint. Android 10 i nowsze wersje obsługują konfigurowanie profili EAP-TTLS za pomocą protokołu SOAP-XML w ramach otwartego interfejsu ESS OSU.

Obsługiwane funkcje Passpoint R2 wymagają tylko kodu referencyjnego AOSP (nie jest wymagane dodatkowe sterowniki ani oprogramowanie sprzętowe). Kod referencyjny AOSP zawiera też domyślną implementację interfejsu użytkownika Passpoint R2 w aplikacji Ustawienia.

Gdy Android wykryje punkt dostępu Passpoint R2, platforma Android:

  1. Wyświetla listę dostawców usług reklamowanych przez AP w selektorze Wi-Fi (oprócz wyświetlania identyfikatorów SSID).
  2. Prośba o kliknięcie jednego z dostawców usług w celu skonfigurowania profilu Passpoint.
  3. Prowadzi użytkownika przez proces konfiguracji profilu Passpoint.
  4. Po zakończeniu instalacji zainstaluje utworzony profil Passpoint.
  5. Połącza się z siecią Passpoint za pomocą nowo utworzonego profilu Passpoint.

Funkcje Passpoint R3

Android 12 wprowadza te funkcje Passpoint R3, które zwiększają wygodę użytkowników i umożliwiają sieciom dostosowanie się do lokalnych przepisów:

Warunki usługi

W niektórych miejscach i przy niektórych usługach zaakceptowanie warunków jest wymagane przez prawo. Ta funkcja umożliwia zastąpienie niezabezpieczonych portali przechwytujących, które korzystają z otwartych sieci, bezpieczną siecią Passpoint. Gdy użytkownik musi zaakceptować warunki, wyświetla się powiadomienie.

Adres URL warunków korzystania z usługi musi wskazywać na bezpieczną witrynę korzystającą z protokołu HTTPS. Jeśli adres URL wskazuje na niebezpieczną stronę internetową, framework natychmiast rozłącza połączenie i blokuje sieć.

Adres URL informacji o miejscu

Umożliwia operatorom sieci i miejscom docelowym udostępnianie użytkownikom dodatkowych informacji, takich jak mapy, katalogi, promocje i kupony. Po połączeniu z siecią wyświetla się powiadomienie.

Adres URL informacji o miejscu docelowym musi wskazywać na bezpieczną witrynę internetową korzystającą z protokołu HTTPS. Jeśli adres URL wskazuje na niezabezpieczoną witrynę, platforma zignoruje ten adres i nie wyświetli powiadomienia.

Inne funkcje Passpoint

Android 11 wprowadza te funkcje Passpoint, które poprawiają wrażenia użytkownika, zużycie energii i elastyczność wdrożenia:

Egzekwowanie i powiadomienie o dacie ważności
Wymuszanie daty ważności profili pozwala platformie uniknąć automatycznego łączenia się z punktami dostępu przy użyciu wygasłych danych logowania, które z pewnością się nie uda. Zapobiega to wykorzystaniu czasu antenowego, a także oszczędza baterię i pasmo. Framework wyświetla powiadomienie użytkownikowi, gdy sieć dopasowująca jego profil znajduje się w zasięgu, a profil wygasł.
Wiele profili z identyczną pełną i jednoznaczną nazwą domeny
Operatorzy, którzy wdrażają sieci Passpoint i korzystają z wielu publicznych identyfikatorów sieci komórkowych (PLMN), mogą udostępniać wiele profili Passpoint z tym samym FQDN, po jednym dla każdego identyfikatora PLMN, który jest automatycznie dopasowywany do zainstalowanej karty SIM i używany do łączenia z siecią.

Android 12 wprowadza te funkcje Passpoint, które poprawiają wygodę użytkowników, zużycie energii i elastyczność wdrożenia:

Udekorowany prefiks tożsamości
Podczas uwierzytelniania w sieciach z ozdobą prefiksu operatorzy sieci mogą aktualizować identyfikator dostępu do sieci (NAI), aby przeprowadzić jawne przekierowywanie przez wiele serwerów proxy w sieci AAA (patrz RFC 7542). Android 12 wdraża tę funkcję zgodnie ze specyfikacją WBA dla rozszerzeń PPS-MO.
Obsługa zbliżającego się wylogowania
Pozwala operatorom sieci sygnalizować urządzeniu, że usługa jest niedostępna dla danych logowania używanych do uwierzytelniania w sieci przez określony czas (określany przez czas oczekiwania). Po otrzymaniu tego sygnału urządzenia nie będą próbować ponownie łączyć się z siecią przy użyciu tych samych danych logowania, dopóki nie upłynie czas oczekiwania. Z kolei urządzenia, które nie obsługują tej funkcji, mogą wielokrotnie próbować nawiązać połączenie z siecią, gdy usługa jest niedostępna.

Przykłady profili XML OMA-DM PerProviderSubscription-MO

Profil z danymi logowania (nazwą użytkownika i hasłem) (EAP-TTLS)

Ten przykład pokazuje profil sieci z:

  • Ustawiono nazwę przyjazną dla sieci: Example Network
  • Pełna i jednoznaczna nazwa domeny ustawiona na hotspot.example.net
  • O w roamingu (konsorcjum)
  • Dane uwierzytelniające z nazwą użytkownika user, hasłem password zakodowanym w formacie Base64 oraz domeną example.net
  • Metoda EAP ustawiona na 21 (EAP-TTLS)
  • Metoda wewnętrzna fazy 2 została ustawiona na MS-CHAP-V2
  • Ustawiono alternatywne nazwy domen AAA: trusted.comtrusted.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>

Profil z kwalifikującymi się certyfikatami cyfrowymi (EAP-TLS)

Ten przykład pokazuje profil sieci z:

  • Ustawiono nazwę przyjazną dla sieci: GlobalRoaming
  • Pełna i jednoznaczna nazwa domeny ustawiona na globalroaming.net
  • OIs konsorcja roamingu (do roamingu)
  • Ustawiono królestwo: users.globalroaming.net
  • Uwierzytelnienie z certyfikatem cyfrowym, który ma określony odcisk cyfrowy
<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>

Profil z danymi uwierzytelniania SIM (EAP-AKA)

Ten przykład pokazuje profil sieci z:

  • Ustawiono nazwę przyjazną dla sieci: Purple Passpoint
  • Pełna i jednoznaczna nazwa domeny ustawiona na wlan.mnc888.mcc999.3gppnetwork.org
  • Dane logowania do karty SIM z identyfikatorem PLMN 999888
  • Metoda EAP ustawiona na 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>

Informacje o uwierzytelnianiu

Urządzenia z Androidem 8.x lub 9.0 z profilem Passpoint R1 EAP-SIM, EAP-AKA lub EAP-AKA' nie będą się automatycznie łączyć z siecią Passpoint. Ten problem wpływa na użytkowników, operatorów i usługi, ponieważ zmniejsza ilość danych przesyłanych przez Wi-Fi.

Segment Wpływ Wpływ
Operatorzy i dostawcy usług Passpoint Zwiększone obciążenie sieci komórkowej. dowolny operator korzystający z protokołu Passpoint R1.
Użytkownicy Brak możliwości automatycznego łączenia się z punktami dostępu Wi-Fi operatora, co powoduje wyższe koszty transmisji danych. Każdy użytkownik z urządzeniem działającym w ramach sieci operatora obsługującej Passpoint R1.

Przyczyna niepowodzenia

Passpoint określa mechanizm dopasowywania reklamowanego dostawcy usług (ANQP) do profilu zainstalowanego na urządzeniu. Podane niżej reguły dopasowywania do EAP-SIM, EAP-AKA i EAP-AKA to częściowy zestaw reguł skupiający się na błędach 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.

W Androidzie 8.0 zmieniono drugie kryterium:

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

W związku z tą zmianą system nie znalazł żadnych dopasowań do wcześniejszych dostawców usług, więc urządzenia Passpoint nie łączyły się automatycznie.

Obejścia

Aby obejść problem z modyfikowanymi kryteriami dopasowywania, operatorzy i dostawcy usług muszą dodać domenę identyfikatora dostępu do sieci (NAI) do informacji opublikowanych przez punkt dostępu Passpoint.

Zalecanym rozwiązaniem jest wdrożenie przez dostawców usług sieciowych obejścia po stronie sieci, aby skrócić czas wdrożenia. Rozwiązanie na poziomie urządzenia zależy od OEM-ów, którzy pobierają listę zmian (CL) z AOSP, a następnie aktualizują urządzenia w polu.

Rozwiązanie problemu z siecią dla operatorów i dostawców usług Passpoint

Rozwiązanie po stronie sieci wymaga zmiany konfiguracji sieci w celu dodania elementu NAIrealm ANQP zgodnie z opisem poniżej. Specyfikacje Passpoint nie wymagają elementu ANQP w domenie NAI, ale dodanie tej właściwości jest zgodne ze specyfikacją Passpoint, więc zgodne z nią implementacje klienta nie powinny się zepsuć.

  1. Dodaj element ANQP domeny NAI.
  2. Ustaw podpole domeny NAI tak, aby odpowiadało wartości Realm profilu zainstalowanego na urządzeniu.
  3. W przypadku każdego typu programu EAP ustaw te informacje:

    • EAP-TTLS: ustaw EAPMethod(21) i obsługiwane typy uwierzytelniania wewnętrznego (PAP, CHAP, MS-CHAP lub MS-CHAP-V2).
    • EAP-TLS: ustaw EAPMethod(13)
    • EAP-SIM: ustaw EAPMethod(18)
    • EAP-AKA: ustaw EAPMethod(23)
    • EAP-AKA': ustaw EAPMethod(50)

Rozwiązanie dotyczące urządzenia lub AOSP dla producentów OEM

Aby wdrożyć obejście na poziomie urządzenia, producenci OEM muszą wybrać wersję poprawki aosp/718508. Tę łatkę można zastosować w ramach tych wersji (nie dotyczy Androida 10 ani nowszych):

  • Android 9
  • Android 8.x

Gdy łatka zostanie pobrana, producenci OEM muszą zaktualizować urządzenia w polu.