eSIM - od fizycznych kart do rozwiązań software'owych
March 18, 2024

Czym się różni eSIM od SIM?

eSIM to tak naprawdę SIM z funkcją Remote Provisioning, czyli możliwością zmiany profili operatora zdalnie. Bez wizyty w salonie i bez wymiany fizycznej karty. Najczęściej spotykany jako układ scalony w obudowie MFF2.
Uwaga, eSIM to nie jest MFF2! MFF2 to obudowa w której sprzedawany jest eSIM, ale w tej obudowie może być równie dobrze zwykły SIM.

Kluczową różnicą jest przynależność eSIM - należy ona do producenta urządzenia lub użytkownika, a nie do operatora.
Skoro nie należy do operatora - nie ma na niej danych identyfikujących operatora - dane te muszą być zainstalowane przez użytkownika (eSIM consumer) lub zdalnie przez operatora (eSIM M2M).
To zdecentralizowanie kontroli umożliwia użytkownikom większą swobodę w zarządzaniu swoimi subskrypcjami.

Coś co jest ułatwieniem dla użytkownika końcowego, jest zmorą dla operatorów.

Dla wersji eSIM M2M, niezbędna jest infrastruktura po stronie operatora umożliwiająca autoryzację i zdalne ładowanie profili, co stanowi wyzwanie technologiczne i organizacyjne.
Specyfikacja Remote SIM Provisioning (RSP) opracowana przez GSMA zapewnia bezpieczne i efektywne zarządzanie profilami, gwarantując, że klucze kryptograficzne, które są fundamentem bezpieczeństwa, pozostają chronione.

A jakie to klucze?

Ki (Klucz Autoryzacyjny)

  • Opis: 128bit klucz, używany do uwierzytelnienia karty SIM/eSIM w sieci operatora. Jest to klucz symetryczny, co oznacza, że ten sam klucz jest używany zarówno do szyfrowania, jak i deszyfrowania danych.
  • Przechowywanie: Klucz Ki jest przechowywany zarówno na karcie SIM/eSIM, jak i w systemie autentykacji operatora (tzw. Authentication Centre, AuC).
  • Własność: Klucz należy jednocześnie do operatora sieci (który posiada jego kopię w swojej bazie danych AuC) oraz do użytkownika (jako że klucz jest zapisany na jego karcie SIM/eSIM).

OPc (Operator Variant Algorithm Configuration Field)

  • Opis: OPc bierze udział w generowaniu odpowiedzi na wyzwanie autentykacyjne (RAND, proces ten był pokazany w poprzednim artykule o kartach SIM) wysyłane przez sieć, współpracując z kluczem Ki i algorytmami A3/A8, aby wyprodukować podpis, który jest następnie wysyłany z powrotem do sieci do weryfikacji.
  • Przechowywanie: Klucz OPc jest przechowywany na karcie SIM/eSIM i jest używany lokalnie przez kartę do generowania odpowiedzi autentykacyjnej i klucza szyfrującego.
  • Własność: Podobnie jak klucz Ki, OPc jest wspólną własnością operatora i użytkownika (posiadacza karty SIM/eSIM), choć bezpośrednio użytkownik nie ma dostępu do tego klucza, a jego obsługa jest w pełni zautomatyzowana przez kartę SIM/eSIM i systemy operatora.

Kc (Ciphering Key)

  • Opis: 64 bitowy klucz Kc jest używany do szyfrowania danych przesyłanych między urządzeniem a siecią operatora. Jest generowany podczas procesu autentykacji za pomocą klucza Ki i niektórych innych elementów (takich jak numer RAND - random challenge).
  • Przechowywanie: Klucz Kc jest generowany i tymczasowo przechowywany zarówno na karcie SIM/eSIM, jak i w sieci operatora.
  • Własność: Kc jest generowany wspólnie przez kartę SIM/eSIM i sieć operatora i jest używany wyłącznie na potrzeby bieżącej sesji.

Czym jest ten RSP?

Remote SIM provisioning to specyfikacja realizowana przez GSMA, która umożliwia konsumentom zdalną aktywację modułu tożsamości (profilu) abonenta wbudowanego w urządzenie przenośne, takie jak smartfon, smartwatch, opaska fitness lub tablet.
Proces obsługi takiego profilu : produkcja profilu → personalizacja → zabezpieczenie → dostarczenie (wgranie na eSIM).

Wymogiem certyfikacji GSMA jest to, że pakiet personalizacyjny jest dekodowany wewnątrz chipa, a więc nie ma możliwości zrzucenia kluczy Ki, OPc. Kolejnym ważnym aspektem jest to, że eSIM jest własnością przedsiębiorstwa, a to oznacza, że przedsiębiorstwo ma teraz pełną kontrolę nad zabezpieczeniami i aplikacjami w eSIM oraz tym, jakie profile operatorów mają być używane.

Remote Provisioning wymusza wymianę wrażliwych danych przez obce sobie jednostki, takie jak:

  • dane subskrypcyjne;
  • dane profilu operatora;
  • certyfikaty;

To jest główny problem z wdrożeniem eSIM.

Operator potrzebuje danych urządzenia do stworzenia profilu i wgrania go. Producent eSIM musi wgrać oprogramowanie do zarządzania profilami. To oprogramowanie musi być zatwierdzone przez operatora, by można było “dogadać się” z eSIM.

Dane wrażliwe operatora muszą być zainstalowane przez użytkownika (consumer version) lub zdalnie przez operatora (M2M version).

Model push i pull

eSIM consumer

Wersja eSIM consumer jest przede wszystkim dedykowana dla urządzeń konsumenckich, takich jak smartfony czy smartwatche.

Tutaj kluczową rolę odgrywa interfejs użytkownika (UI), często wymagana jest również obecność kamery, by móc zeskanować kod QR i wgrać profil operatora. To użytkownik dyryguje orkiestrą, decydując, który z dostępnych profili operatorów jest aktywny w danym momencie, dzięki czemu kontrola nad usługami telekomunikacyjnymi staje się bardziej intuicyjna i elastyczna. Aktualizacja profilu może odbywać się zarówno przez Wi-Fi, jak i sieć komórkową, co dodatkowo podkreśla swobodę wyboru i zarządzania eSIM.

Architektura systemu:

eSIM w wersji consumer

Omówmy sobie główne komponenty systemu eSIM w wersji consumer .

eUICC SIM (Embedded Universal Integrated Circuit Card)

  • moduł do zdalnego zarządzania profilami operatorów;
  • umożliwia pobieranie, przechowywanie i aktualizację w trybie over-the-air (OTA) profili wielu operatorów komórkowych na karcie;

LPA (Local Profile Assistant)

  • kluczowa postać w tej architekturze - komponent wbudowany w urządzenie służący do lokalnego pobierania i zarządzania statusem profili (instalacja, aktywacja, deaktywacja, usuwanie);
  • odpowiada za bezpośrednią komunikację z SM-DP+ i może rezydować zarówno w urządzeniu (częściej spotykane), jak i w eUICC (mniej popularne);

SM-DP+ (Subscription Manager - Data Preparation)

  • komponent backendowy odpowiedzialny za bezpieczne generowanie, przechowywanie i dostarczanie profili eSIM;

SM-DS (Subscription Manager - Discovery Server)

  • korzysta on bezpośrednio z komponentu przechowywującego listę gotowych do pobrania profili na urządzenie;

Blok SM-DP+ odpowiada za stworzenie, pobranie, zdalne zarządzanie (włączanie, wyłączanie, kasowanie, aktualizację) profilu. Znak + w jego nazwie dodano, aby podkreślić, że obejmuje on funkcjonalność bloków SM-DP i SM-SR z wersji M2M.

LPA stanowi natomiast zbiór funkcji odpowiadających za pobranie zaszyfrowanego profilu przez eUICC i implementujących interfejs użytkownika umożliwiający mu zarządzanie statusem profilu.

Blok SM-DS z kolei pozwala SM-DP+ na skomunikowanie się z eUICC bez informacji o tym, do jakiej sieci jest ten moduł podłączony. W tym celu SM-DS umożliwia SM-DP+ wysyłanie alarmów, które mają zawiadomić LPA o dostępności profilu do pobrania przez eUICC.
Jest to realizowane w następujący sposób: zgłoszenia są wysyłane z SM-DP+ do SM-DS, zaś LPA odpytuje o nie SM-DS z częstością zależną od trybu pracy eUICC i akcji użytkownika.

Proste, prawda? Sprawa się lekko skomplikuje w wersji M2M.

eSIM M2M

eSIM M2M wyróżnia się zastosowaniem w dziedzinie IoT, gdzie urządzenia komunikują się bezpośrednio z siecią bez interakcji z użytkownikiem. Tutaj proces konfiguracji i zarządzania profilami jest bardziej zautomatyzowany i odgórnie kontrolowany przez operatora, co wymaga bardziej złożonej infrastruktury telekomunikacyjnej.
Główne cechy charakterystyczne:

  • brak modułu LPA (Local Profile Assitant) - cała odpowiedzialność za zarządzanie profilami po stronie serwerów zarządzania subskrypcją u operatora;
  • model "push" - operator wysyła profil do urządzenia (brak interakcji z użytkownikiem).
  • profil "Bootstrap", wgrany już na etapie produkcji urządzenia, umożliwia podstawową komunikację, a protokół BIP (Bearer Independent Protocol), służy do aktualizacji i zarządzania profilami przez sieć komórkową.
  • profil testowy zgodny ze specyfikacją GSMA - do lokalnego testowania funkcjonalności, bez konieczności łączenia się z operatorem;

Kilka słów odnośnie Bootstrap profile.
eSIM mają być dostarczone zgodnie z GSMA z profilem SIM zawierającym niewielką ilość łączności wbudowanej (tytułowy Bootstrap profile). Jest to kluczowe dla aktywacji tych urządzeń zdalnie lub tam, gdzie nie ma interfejsu użytkownika.

Dzięki temu profilowi wgranemu na kartę eSIM, urządzenie może połączyć się z siecią zaraz po uruchomieniu.

  • przy pierwszym połączeniu eSIM wykorzystuje wstępnie załadowany profil startowy,
  • a następnie łączy się z operatorem sieci komórkowej w celu przeprowadzenia wstępnej transakcji właściwego profilu.

W ten sposób eSIM umożliwia większą elastyczność projektowania i wdrażania. Z praktycznego punktu widzenia nadal istnieją ograniczenia, ponieważ operatorzy nie chcą otwierać swoich systemów informatycznych na kontrolę z zewnątrz.

W Polsce, największy operator na rynku eSIM M2M, obsługuje moduły eSIM kupione tylko u niego.
Mając "wgląd" w proces programowania układów znika problem braku zaufania do nieznanych układów eSIM z Bootstrap profile.

eSIM M2M - architektura sieci

Czyli o tym, jak przeniesienie odpowiedzialności na zewnątrz komplikuje system.

Na rysunku widzimy główne elementy modelu M2M, w którym inicjatywa jest po stronie serwera (model push), strzałkami zaznaczając przepływ komunikacji pomiędzy nimi.

eSIM w wersji Machine-2-Machine

Omówmy sobie główne komponenty systemu.

SM-DP (Subscription Manager - Data Preparation)

  • Komponent backendowy odpowiedzialny za bezpieczne tworzenie i przechowywanie profili eSIM (zarówno istniejących, jak i nowych profili);
  • Personalizuje profile danymi subskrypcyjnymi i przygotowuje je do bezpiecznego pobrania i instalacji na karcie eUICC;

SM-SR (Subscription Manager - Secure Routing)

  • Działa jak bramka pomiędzy operatorem, SM-DP a kartą eUICC na urządzeniu;
  • Posiada bazę danych wszystkich kart eUICC pod swoją kontrolą oraz zestawy kluczy do zarządzania nimi;
  • Ustanawia bezpieczny kanał dla każdego zarejestrowanego eUICC, co umożliwia zdalne zarządzanie profilami (pobieranie, instalacja, włączanie, wyłączanie, usuwanie i inne funkcje);

eUICC (Embedded Universal Integrated Circuit Card)

  • Umożliwia pobieranie, przechowywanie i aktualizację profili wielu operatorów komórkowych na karcie SIM w trybie OTA (over-the-air);
  • Dane pomiędzy eSIM a SM-SR -> BIP (Bearer Independent Protocol) po SMS, CAT_TP lub TCP/IP (3GPP 102.127);

MNO (Mobile Network Operator)

  • Reprezentuje operatora sieci komórkowej;

Blok SM-DP (Subscription Manager - Data Preparation) odpowiada za przygotowanie, przechowywanie i ochronę profili operatorów, w tym danych uwierzytelniających. Odpowiada on również za ich pobranie i instalację na karcie eUICC.

Blok SM-SR (Subscription Manager - Secure Routing) zarządza statusem profili (włącza, wyłącza, usuwa) oraz zabezpiecza łącze komunikacyjne pomiędzy eUICC a SM-DP.

W przypadku eSIM dla M2M funkcje przygotowania danych i bezpiecznego routingu są rozdzielone na dwa oddzielne komponenty (SM-DP i SM-SR), podczas gdy w eSIM dla konsumentów są one zintegrowane w jednym module (SM-DP+). Z tego powodu migracja urządzeń M2M do nowego dostawcy łączności wiąże się z koniecznością przeniesienia zarządzania istniejącymi urządzeniami i ich kluczami kryptograficznymi do nowej platformy SM-SR. Procedura ta, znana również jako SM-SR swap, jest technicznie złożona i generuje znaczne koszty zarówno dla operatora sieci, jak i firm korzystających z rozwiązań IoT.

Profil jest "wypychany" do urządzenia za pomocą zdalnego polecenia z platformy zarządzania subskrypcją (SM-DP). Umożliwia to masowe zarządzanie profilami we wdrożeniach IoT z wieloma geograficznie rozproszonymi punktami końcowymi.

Główne problemy eSIM M2M

  • Pierwsze wgranie profilu do eSIM - jak dostarczyć operatorowi (a bardziej komuś kto obsługuje SM-DP i SM-SR) danych potrzebnych do stworzenia profilu i wgrania go w sposób bezpieczny; Kto dostarczy oprogramowania do eSIM?
  • Administracja profili - dostęp do infrastruktury operatora przez użytkowników;
  • RVP - wgrywanie i aktywowanie profili OTA, to wymiana danych wrażliwych z jednostkami zewnętrznymi (eSIM jest na urządzeniu i nie należy do operatora);
  • Swap profile - przenoszenie profili pomiędzy operatorami (przerzucenie profili z SM-SR1 na SM-SR2 u innego operatora). Podczas migracji do nowego dostawcy łączności, zarządzanie istniejącymi urządzeniami i ich kluczami kryptograficznymi również będzie musiało zostać przeniesione do nowej platformy SM-SR;

Na starcie systemu to SM-SR ma mieć dane o wszystkich eUICC w sieci i ich klucze by się z nimi dogadać zdalnie bez użytkownika.
Mając bazę uwierzytelnionych eUICC obsługuje ich profile (stworzone przez SM-DP).

eSIM M2M - a może wirtualny operator?

Problemem w M2M jest dostęp do infrastruktury operatora (MNO) przez użytkowników chcących zarządzać czy monitorować swoje eSIMy. Operatorzy nie chcą dawać dostępu do swojej infrastruktury. Rozwiązaniem tego problemy jest MVNO (virtual MNO) - wirtualni operatorzy. Zamiast dostępu każdego użytkownika do sieci są warstwą, która go od tego izoluje.
Czym się charakteryzuje wirtualny operator:

  • ktoś kto dogaduje się z operatorem/operatorami i to on świadczy usługi klientom w zamian za dodatkową opłatę;
  • serwery SM-DP i SM-SR są po stronie MVNO;
  • MNVO udostępnia panel do monitoringu i zarządzania;
  • zapewnia obsługę generic Bootstrap profile (wgranego domyślnie do eUICC) aby móc aktywować eSIM;

W tym układzie producent układów eSIM dogaduje się z wirtualnym operatorem, udostępniając mu listę produkowanych przez siebie układów. Wirtualny operator dzięki współpracy z producentem umieszcza niezbędne dla bezpieczeństwa klucze "na produkcji".
Dzięki takie kooperacji, nie kupujesz eSIM u operatora (co w chwili obecnej wiąże się z zakupem w tysiącach sztuk). Kupujesz je na sztuki u producentów mających współpracę z wirtualnym operatorem, który korzysta z fizycznej sieci operatorów lokalnych. Zarządzając serwerami subskrypcji profili, izoluje nas od operatorów.

Jak aktywować eSIM u wirtualnego operatora?

Poniżej lista kroków do wykonania u jednego z największych MVNO - Truephone:

  • zakładasz konto u operatora i wybierasz "abonament";
  • montujesz eSIM M2M u siebie;
  • komendami AT odczytujesz numer ICCID;
  • logujesz się u Truphone i aktywujesz odczytany ICCID;
  • po ok. 15min twój eSIM jest aktwyny;

Inni znani wirtualni operatorzy działający w europie: emnify, onomondo.

Referencje

#IoT #eSIM