Secure Element dla Androida?

Obecnie system mobilny Android stanowi gorący temat. Praktycznie co tydzień jest zapowiadane, lub wychodzi, nowe urządzenie z Androidem na pokładzie. Ilość aplikacji dla tej platformy rośnie w tempie lawinowym. Do tego dochodzą dobrze udokumentowane API dla programistów – ADK (Android Development Kit, środowisko Java) oraz natywne NDK (Native Development Kit, C/ C++). Jakby tego było mało, to na dokładkę mamy system operacyjny w formie Open Source. No i mamy przepis na sukces rynkowy. Aha, jeszcze jedno – to jest system sygnowany przez Google więc jest trendy 🙂

Jednej rzeczy, której w Androidzie mi brakuje to obsługa SE (Secure Element). To powoduje że wykorzystanie sprzętowych modułów bezpieczeństwa jest niemożliwe. Możemy zapomnień np. o NFC w telefonie z Androidem na pokładzie. Oczywiście taka pustka nie może istnieć zbyt długo. Skoro Google nie chciało zabrać się za implementację obsługi SE to ktoś to musiał zrobić.

Jedną z pierwszych firm, która ogłosiła chęć zagospodarowania tej działki było Giesecke & Devrient. G&D opublikowało nawet swój projekt „Secure Element Evaluation Kit for the Android platform” na Google Code Project. Oczywiście G&D nie robi tego bezinteresownie. W ten sposób promuje swój produkt, o którym pisałem wcześniej. Jednak biorąc pod uwagę że G&D robi to „zgodnie ze sztuką” i trzyma się ogólnie przyjętych standardów, to można im tylko podziękować. Przy okazji G&D opublikowało ciekawy dokument z którym warto się zapoznać – Security and Trust on Android. Publikacja ta jest o tyle interesująca że zawieranie tylko opis wizji projektantów ale jednocześnie stanowi świetną podstawę do zapoznania się z tematem.

W kwietniu 2009 organizacja GlobalPlatform opublikowała dokument GlobalPlatform’s Proposition for NFC Mobile: Secure Element Management and Messaging w którym zawarła szczegółową propozycję rozwiązania problemu z SE w telefonach.

Reklamy

karta microSD + java card dla komórek

Jakiś czas temu oglądałem bardzo ciekawy produktu Giesecke & Devrient pod nazwą Mobile Security Card CL. Prezentujący go inżynier pokazywał wersję nad którą jeszcze pracowali i nie wszystko jeszcze działało jak trzeba.

GD_microSD

OK, ale o co chodzi? Chodzi o połączenie karty microSD, standardowo używanej w telefonach komórkowych, razem z Java Card. Co ważne karty inteligentnej, która jest dualna (posiada interfejs stykowy i zbliżeniowy). Daje nam to możliwość rozszerzenia telefonu o podpis elektroniczny, bilet komunikacji miejskiej, kontrolę dostępu czy też płatności zbliżeniowe.

Jak mam w takim razie podpisać plik który znajduje się na moim laptopie wykorzystując komórkę wyposażoną w Mobile Security Card CL? Takie było moje pierwsze pytanie do pracownika G&D. Jak się okazało dość prosto. Miły Pan użyczył mi kartę, którą włożyłem do aparatu pracującego pod kontrolą Windows Mobile i podłączyłem telefon do komputera za pomocą standardowego kabla mini USB. Na laptopie pokazał się kreator wykrywania nowego sprzętu, po czy zakomunikował że czytnik kart został zainstalowany poprawnie. Teraz wystarczyło tylko zainstalować jeszcze  middleware StarSign i już można było zobaczyć certyfikaty na karcie microSD.

A co z interfejsem zbliżeniowym? Otóż karta, oprócz standardowych złączy karty microSD, posiada jeszcze dwa do których należy podłączyć antenę dla interfejsu ISO 14443. Tu niestety pojawia się problem – nie ma jeszcze telefonów które taką antenę posiadają. Można co prawda użyć do tego specjalnego breloczka, posiadającego antenę ,ale jest to raczej rozwiązanie tymczasowe.