Współczesne smartfony z powodzeniem łączą funkcję telefonu, aparatu, odtwarzacza muzycznego, biletomatu dla transportu miejskiego, a nawet portfela, nic więc dziwnego, że zaczynamy się zastanawiać nad bezpieczeństwem przechowywanych w nich danych. Jak smartfony chronią najcenniejsze dla użytkowników informacje i jak działa ich najważniejszy element zabezpieczający — maleńki czip o nazwie Secure Element.

Secure Element

To specjalny czip służący do bezpiecznego przechowywania informacji o płatności, który został zapożyczony od bezdotykowych kart kredytowych. Dziś za najbardziej niezawodny jest uznawany standard EMV (stosowany przez takie firmy jak Europay, MasterCard, Visa) — dzięki niemu informacje związane z płatnością mogą być przechowywane w mikroczipie, którego nie można tak łatwo zhakować. Dlatego karty, które używają standardu EMV, nazywa się „kartami czipowymi”.

Zasadniczo stosowany w telefonach Secure Element to taki sam czip, który jest używany w kartach płatniczych. Ma on oddzielny system operacyjny (tak, karty kredytowe mają własny system do uruchamiania swoich programów). Na tym czipie są przechowywane wszystkie informacje użytkownika, których nie może odczytać ani skopiować nawet system operacyjny telefonu czy tabletu, nie mówiąc o aplikacjach zainstalowanych na tych urządzeniach. Secure Element działa tylko ze specjalnymi zaufanymi aplikacjami, takimi jak wirtualne portfele.

Czip komunikuje się bezpośrednio z terminalem płatniczym, więc nawet jeśli smartfon zostanie zainfekowany szkodliwym oprogramowaniem, hakerzy nie przechwycą tych informacji — dane nie są przesyłane do głównego systemu operacyjnego, lecz pozostają w specjalnym systemie czipu Secure Element.

Portfel w telefonie: jak to się wszystko zaczęło

Pomysł połączenia telefonu z kartą kredytową powstał wcześniej, niż myślicie. Pierwszymi modelami z zainstalowanym czipem Secure Element były telefony o nazwie feature phone, jednak nigdy nie zdobyły one popularności. Jedna z firm wymyśliła nawet sposób na naśladowanie paska magnetycznego. Jednak telefony stały się prawdziwym konkurentem dla plastikowych kart dopiero niedawno, w 2014 roku, gdy uruchomiona została usługa Apple Pay.

Powodzenie systemu Apple Pay przyciągnęło uwagę konkurencji: w 2015 roku Samsung wprowadził  do swojej oferty podobną usługę. Oba systemy wymagają użycia czipu Secure Element (dlatego starsze iPhone’y oraz tańsze modele Samsunga nie obsługują płatności bezdotykowych).

Próbując ulepszyć funkcjonalność swoich urządzeń, koreański gigant wykupił LoopPay — firmę, która utworzyła technologię imitującą paski magnetyczne. Kilka miesięcy później Google zaprezentował Android Pay (której nazwa została zmieniona na początku 2018 roku na Google Pay).

Secure Element — wbudowany, zewnętrzny lub wykorzystujący chmurę

W rzeczywistości Secure Element nie musi być wbudowany w smartfona — możne mieć postać na przykład karty pamięci. Niektórzy operatorzy mobilni produkują karty SIM, które mogą przechowywać informacje z karty płatniczej lub biletu transportu publicznego. Jednak nigdy nie zyskało to większej popularności.

Google, w przeciwieństwie do firmy Apple czy Samsunga, początkowo produkował oprogramowanie dla urządzeń mobilnych, a nie same urządzenia. To dlatego ich system płatności miał tak wiele trudności już na początku. Większość telefonów z Androidem nie miała czipów Secure Element; firma nie mogła zmusić niezależnych producentów do zainstalowania bezpiecznego czipu, a klientów do zakupu nowych kart. A bez wspomnianego czipu nie mogła zastosować płatności bezdotykowych.

Google szukał sposobu na wyjście z impasu: najpierw instalował swoją aplikację portfela na kartach SIM z Secure Element. Jednak wiodący amerykańscy operatorzy telefonii komórkowych — Verizon, AT&T czy T-Mobile — odmówili współpracy w takim zakresie, bo kolidowałoby to z promowaniem ich własnej aplikacji, Isis Wallet (w późniejszym czasie jej nazwa została zmieniona na Softcard ze względów politycznych). Co ciekawe, w efekcie Google uzyskał ten system wraz z patentami.

Jednak zanim do tego doszło, firma wymyśliła jeszcze lepsze rozwiązanie: ponieważ telefony z systemem Android nie maja zainstalowanych fizycznie bezpiecznych czipów, utworzyła wirtualne — w chmurze. Technologia ta została nazwana Host Card Emulation (HCE).

Ten wykorzystujący chmurę system różni się od portfeli z wbudowanymi czipami Secure Element jedną istotną kwestią: podczas korzystania z HCE terminal płatniczy musi komunikować się z systemem operacyjnym urządzenia. System ten musi także nawiązać kontakt z chmurą Secure Element, w której przechowywane są informacje płatnicze, a także z zaufaną aplikacją.

Według ekspertów korzystanie z HCE jest z technicznego punktu widzenia mniej bezpieczne niż korzystanie z realnego czipu Secure Element: im więcej danych musi przejść przez internet, tym łatwiej jest je przechwycić. Niemniej jednak HCE zawiera dodatkowe mechanizmy zabezpieczające, które eliminują ryzyko — na przykład nie używa permanentnych kluczy płatności, lecz tymczasowych, których można użyć tylko raz.
Autor: Julia Glazova  Kaspersky Lab