Karty inteligentne - programowanie i zastosowania. Piotr Nazimek



Podobne dokumenty
Elektroniczna Legitymacja Studencka

Szczegółowy opis przedmiotu zamówienia

Elektroniczna Legitymacja Studencka jako narzędzie wielofunkcyjne Oberthur Technologies

Tarnowska Karta Miejska dokumentacja techniczna

Karta kibica - wymagania dla systemów stadionowych Strona 1 z 9

Laboratorium Programowania Kart Elektronicznych

Nowa legitymacja studencka w aplikacji Uczelnia.cl

Szczegółowy opis przedmiotu zamówienia

Szczegółowy opis przedmiotu zamówienia

Laboratorium Programowania Kart Elektronicznych

Laboratorium Programowania Kart Elektronicznych

PROJEKT I IMPLEMENTACJA UNIWERSALNEJ APLIKACJI DO OBSŁUGI KART ELEKTRONICZNYCH

Opis przedmiotu zamówienia/specyfikacja techniczna

Wykorzystanie protokołu T=CL w systemach kontroli dostępu

OPIS PRZEDMIOTU ZAMÓWIENIA

Programowanie kart elektronicznych. wykład 11: System zarządzania plikami

Programowanie kart elektronicznych. wykład 9: Polecenia - część 1

Praktyczne aspekty stosowania kryptografii w systemach komputerowych

System Elektronicznej Legitymacji Studenckiej

Uniwersalna aplikacja biblioteczna na Elektronicznej Legitymacji Studenckiej

ZAPYTANIE OFERTOWE. Dęblin, dnia r.

Załącznik nr 3 WZÓR ELEKTRONICZNEJ LEGITYMACJI STUDENCKIEJ


Laboratorium Programowania Kart Elektronicznych

Czytnik kart cyberjack RFID comfort (PL) dla nowych dowodów osobistych

Inżynieria programowania kart inteligentnych. Piotr Nazimek

Instrukcja instalacji i konfiguracji czytników kart kryptograficznych, aplikacji procertum CardManager, obsługa aplikacji procertum CardManager w

Laboratorium Programowania Kart Elektronicznych

Migracja EMV czas na decyzje biznesowe

Emulacja karty elektronicznej EMV. Michał Głuchowski Praca dyplomowa inżynierska pod opieką prof. Zbigniewa Kotulskiego

Wzór nr 12 do 14 WZÓR LEGITYMACJI SŁUŻBIWEJ FUNKCJONARIUSZA STRAŻY GRANICZNEJ. ważna od r. (opublikowano w Dz.U. z 2004r. Nr 268, poz.

Laboratorium Programowania Kart Elektronicznych

Nowe karty wieloaplikacyjne

wersja 3.0 Strona 1 z 9

9 - Urządzenia. TachoTerminal PRO2. Funkcjonaloność urządzenia. TachoTerminal PRO2 TachoTerminal PRO1 TachoTerminal Reader

Wykład 5: Komunikacja z kartą elektroniczną

Projekt Fstorage. Łukasz Podkalicki Bartosz Kropiewnicki

UW-DAL-MAN v2 Dotyczy urządzeń z wersją firmware UW-DAL v5 lub nowszą.

Konspekt pracy inżynierskiej

Praktyczne aspekty wykorzystania nowoczesnej kryptografii. Wojciech A. Koszek

Opis przedmiotu zamówienia (OPZ)

Karty kryptograczne w ±rodowisku Linux

Bezpieczeństwo kart elektronicznych

KARTA OPISU MODUŁU KSZTAŁCENIA

Centrum Certyfikacji Ministerstwa Spraw Wewnętrznych. Instrukcja zdalnej recertyfikacji oraz zdalnego odblokowania karty

Od Wydawcy Krzywe eliptyczne w kryptografii Wykorzystanie pakietu SAGE... 9

Działalność MCP oraz kierunki rozwoju

Spis treści. Od Wydawcy

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Inteligentny czujnik w strukturze sieci rozległej

Laboratorium Programowania Kart Elektronicznych

Nowe mechanizmy w wersji 3 Java Card. Mateusz LESZEK (138775)

LABORATORIUM PROGRAMOWANIA KART ELEKTRONICZNYCH. Standard EMV plugin do SCSuite

Laboratorium Programowania Kart Elektronicznych

Unikupon TL. Sprzedaż doładowań telefonów przez Terminal Sunyard S520

Szczecin "Zastosowania nowych technologii w systemach karty miejskiej "

Bezpiecze ństwo systemów komputerowych.

POLITECHNIKA POZNAŃSKA - SYSTEMY INFORMATYCZNE W ZARZĄDZANIU. Zastosowanie kart elektronicznych w systemach płatniczych.

Bezpieczeństwo informacji w systemach komputerowych

Kod produktu: MP01611

Programator Kart Master - klient

Opis przedmiotu zamówienia

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

PRACA INŻYNIERSKA IMPLEMENTACJA MOBILNEGO KLIENTA BANKU ZABEZPIECZONEGO TOKENEM

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Podstawy Secure Sockets Layer

OPIS PRZEDMIOTU ZAMÓWIENIA

WARTO BYĆ RAZEM. Bank Zachodni WBK liderem. Maciej Biniek, czerwiec 2008

Elektroniczna Legitymacja Studencka w ofercie KIR S.A.

PROFESJONALNE USŁUGI BEZPIECZEŃSTWA

Wykład 5: Komunikacja z kartą elektroniczną

(Pluggable Authentication Modules). Wyjaśnienie technologii.

Biometryczna Identyfikacja Tożsamości

Rozproszony system zbierania danych.

APLIKACJA BIBLIOTECZNA JELIB

INSTRUKCJA UŻYTKOWANIA CZYTNIKA KART PROCESOROWYCH SYGNET 5v2 IU SY5

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Bezpieczeństwo aplikacji typu software token. Mariusz Burdach, Prevenity. Agenda

LEGITYMACJA STUDENCKA Z BIOMETRYCZNĄ IDENTYFIKACJĄ OSOBY W OGÓLNOPOLSKIM SYSTEMIE OCHRONY ZDROWIA OSOZ Aplet josoz

Instrukcja aplikacji do obsługi karty kryptograficznej

Technologia informacyjna

OPIS PRZEDMIOTU ZAMÓWIENIA:

PODRĘCZNIK OBSŁUGI BUSINESSNET

Instrukcja postępowania w celu złożenia podpisu elektronicznego na dokumentach składanych do SISC za pośrednictwem portalu PUESC.

Instrukcja obsługi. RUD-3 v2.0. RUD-3-DES v2.0

Podpis elektroniczny dla firm jako bezpieczna usługa w chmurze. mgr inż. Artur Grygoruk

Mobilny Taktyczny System Łączności Bezprzewodowej

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

PŁATNOŚCI ELEKTRONICZNE I NIE TYLKO

TX-RFID1 Moduł elektroniczny RFID Instrukcja

GIROCARD. Jako narodowa karta płatnicza. Wojciech-Beniamin Wolski

Instrukcja postępowania w celu złożenia podpisu elektronicznego na dokumentach składanych do SISC za pośrednictwem portalu PUESC.

Hitachi MULTOS IKD nowa propozycja wielofunkcyjnej karty

Jakie mamy rodzaje kart i do czego może służyć bankomat.

Usługi MCPLS i współpraca ze środowiskiem nie tylko uczelnianym

Serwery autentykacji w sieciach komputerowych

Poszczególne kroki wymagane przez normę ISO celem weryfikacji tożsamości użytkownika

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Instalacja i konfiguracji czytników kart kryptograficznych, aplikacji procertum CardManager w systemach Mac OS X

Transkrypt:

Karty inteligentne - programowanie i zastosowania Piotr Nazimek Instytut Informatyki Politechniki Warszawskiej Warszawa 2005

Plan seminarium karty elektroniczne - wprowadzenie komunikacja protokoły czytniki interfejsy systemy operacyjne kart na przykładzie MPCOS przykład: elektroniczna legitymacja studenta

Karty elektroniczne kawałek plastiku z wbudowanym układem elektronicznym często, choć niepoprawnie nazywane kartami czipowymi komunikacja oraz zasilanie układu realizowane jest poprzez fizyczne połączenie lub drogą radiową różne klasyfikacje kart budowę możliwości zastosowania interfejsy komunikacyjne

Karty pamięciowe karty elektroniczne posiadające pewien obszar pamięci służący do przechowywania danych z lub bez ochrony pamięci zapis/odczyt odnosi się do struktury fizycznej karty sposób komunikacji, zapisu/odczytu do/z pamięci nie jest ustandaryzowany przykłady: karta telefoniczna karta zdrowia

Karty procesorowe wyposażone w system operacyjny inne określenia: karta mikroprocesorowa karta inteligentna ang. smart card producenci: Gemplus, Setec, Axalto (Schlumberger), G&D,... przykłady karta SIM karta VITAY

Karty stykowe i bezstykowe karty stykowe Vcc RST CLK RFU GND Vpp I/O RFU karty bezstykowe zasilanie i komunikacja drogą radiową trzy rodzaje kart (w zależności od zasięgu)

Karty hybrydowe i dualne podział umowny interfejs stykowy i bezstykowy karta dualna układ elektroniczny + pasek magnetyczny karta hybrydowa

Karty natywne i programowalne karty natywne posiadają system operacyjny o określonym zestawie rozkazów przechowywanie i zarządzanie dostępem do danych specjalizacja karty programowalne możliwość stworzenia aplikacji jako kawałka systemu operacyjnego dodatkowo możliwość implementacji logiki aplikacji Java Card,.NET Card, MULTOS

Formaty kart najbardziej popularne ID 1 karta płatnicza ID 000 karta SIM ID 00 rozmiar pomiędzy kartą SIM a płatniczą określone w ISO/IEC 7810

Zastosowania jako bezpieczny nośnik informacji systemy płatnicze (EMV, elektroniczne portmonetki) systemy lojalnościowe podpis elektroniczny systemy dostępu systemy transportu publicznego (elektroniczny bilet) telefonia komórkowa (karta SIM)

Komunikacja protokół wyzwanie-odpowiedź protokoły T=0 prosty, najczęściej używany (znakowy) T=1 komunikat zanurzony w pakiecie (blokowy) T=USB dla kart USB komunikat PTS (ang. Protocol Type Selection)

ATR ang. Answer To Reset po dostarczeniu napięcia do karty określa możliwości karty (protokół komunikacyjny, szybkość transmisji) pozwala zidentyfikować rodzaj karty zawiera dodatkowe informacje producenta

APDU ang. Application Protocol Data Unit rozkaz przesyłany do karty CLA INS P1 P2 Lc Data Le ISO 7816-4 określono standardowe komendy

RAPDU ang. Response Application Protocol Data Unit odpowiedź karty Data SW1 SW2 ISO 7816-4 - określono standardowe bajty statusu

Czytniki kart interfejs pomiędzy kartą a systemem zewnętrznym RS232, USB, PCIMCIA, ISA, wbudowane różne API CT-API (głównie C) PC/SC (C, C++, Java, Perl, Python,...) OCF (Java) inne podstawowe komendy inicjalizuj wyślij/odbierz zakończ sesję

CT-API ang. CardTerminal - Application Programming Interface jedynie trzy komendy najczęściej interfejs w języku C zalety prostota wady konsolidacja bibliotek zależnych od urządzeń aplikacja zależna od określonego urządzenia

PC/SC ang. Personal Computer/Smart Card zarządzanie czytnikami i kartami w systemie uniwersalne API niezależne od czytnika zarządzanie dostępem (transakcje) czytniki zgodne z PC/SC standardowy sposób korzystania z zasobów w systemie MS Windows implementacje dla innych systemów operacyjnych http://www.pcscworkgroup.com/

OCF (Open Card Framework) biblioteka stworzona w języku Java podejście obiektowe pozwala na stworzenie aplikacji (apletu) klienta korzystającego z czytników i kart działających w systemie operacyjnym dzięki implementacji w Java jest przenośna (jeśli stworzono natywne biblioteki do komunikacji...) pozwala na wszechstronną konfiguracje i użycie tego samego kodu dla np. rzeczywistej karty i symulatora http://www.opencard.org/

Inne interfejsy implementacje interfejsu PC/SC w innych językach Perl, Python, Java OpenCT integracja czytników PC/SC, CT-API i OpenCT telefony komórkowe SATSA ang. Security and Trust Services inne urządzenia API dla systemów operacyjnych kart

Systemy operacyjne kart COS, ang. Card Operating System specjalizacja dla określonego zastosowania (karty natywne ) kryptograficzne lojalnościowe płatnicze itp. istotne różnice pomiędzy systemami systemy z maszynami wirtualnymi Java Card,.NET Card

ISO 7816-4 seria norm dotyczących kart inteligentnych opisuje komendy wspólne dla kart operujące na plikach: SELECT FILE, CREATE FILE, READ BINARY, WRITE BINARY, UPDATE BINARY... GET CHALLENGE GET RESPONSE większość kart posiada zaimplementowane komendy z ISO 7816-4 + dodatkowe (zależne od producenta)

Obsługa plików hierarchiczny system plików MF (ang. Master File, FID '3F00') DF (ang. Dedicated File) DF EF EF (ang. Elementary File) EF EF różne typy plików EF transparentne, rekordowe, cykliczne, przechowujące kody PIN... prawa dostępu do plików

Zabezpieczenia uwierzytelnienie przed wykonaniem określonych operacji wyzwanie-odpowiedź kod PIN zabezpieczona komunikacja (ang. secure messaging) moduły SAM (ang. Secure Access Module) zabezpieczenia sprzętowo-implementacyjne anty DPA, liczniki prób, atomowość transakcji

MPCOS EMV R5 2000 Multi-application Payment Chip Operating System Europay-MasterCard-Visa Revision 5 2000 = 2kB karta firmy Gemplus podstawowe zastosowania wieloaplikacyjna elektroniczna portmonetka karta płatnicza EMV

Charakterystyka MPCOS zgodna z ISO 7816-4 komendy dla elektronicznej portmonetki READ BALANCE CREDIT DEBIT itp. podpisywanie transakcji obsługa PIN operacje kryptograficzne oparte o algorytm 3DES z klucz 16-sto bajtowy

Charakterystyka MPCOS prawa dostępu do plików użycie pliku zależne od uwierzytelnienia określonym kluczem zamrażanie praw założonych plików... nie można usunąć utrudnienie w testowaniu np. personalizacji z kartą alternatywa: karta GPK (MPCOS + kryptografia asymetryczna) posiada komendę developerską ERASE CARD

Charakterystyka MPCOS możliwość identyfikacji aplikacji bez użycia FID AID (ang. Application ID) unikalny identyfikator DF, w którym znajdują się dane aplikacji do 16 bajtów istnieje moduł SAM odzwierciedlający operacje kryptograficzne dla MPCOS dywersyfikacja kluczy kryptograficznych algorytm wyprowadzenia klucza per karta na podstawie unikalnego numeru karty i klucza matki inne wielkości pamięci: 8kB, 32kB

Przykład komunikacji 3B 24 00 80 72 94 43 00 84 00 00 08 32 89 FA D8 10 67 A1 C7 90 00 itd...

Podsumowanie rozwój aplikacji kartowej odzwierciedla cykl życia karty personalizacja wprowadzenie kluczy i danych karta u użytkownika użytek codzienny operacje administratora zakończenie życia karty

Co dalej? SIM http://www.etsi.org/ EMV http://www.emvco.com/ OpenSC i OpenCT http://www.opensc.org Java Card (dokumentacja + API + symulator) http://java.sun.com/products/javacard/ grupa dyskusyjna (FAQ) news:alt.technology.smartcards

Co dalej? PKCS #11 i #15 http://www.rsasecurity.com/ GlobalPlatform http://www.globalplatform.org/ Linux http://www.linuxnet.com inne dokumenty http://www.google.com http://clusty.com/

Elektroniczna legitymacja studenta projekt wprowadzenia dokumentu zastąpienie książeczkowej legitymacji podwyższenie bezpieczeństwa prestiż integracja z istniejącymi systemami na uczelniach oraz lokalnymi usługami aspekt biznesowy (?) karty są popularne i pożądane

Zawartość dane jednoznacznie identyfikujące studenta dostępne dla zainteresowanych podmiotów modyfikowalne wyłącznie przez uprawnione instytucje dane zabezpieczone podpisem elektronicznym (kwalifikowanym) ustawowe upowszechnianie podpisu dane o ustalonej strukturze, składni i lokalizacji w pamięci (fizycznej, logicznej) karty

MIFARE bezstykowa karta pamięciowa z ochroną pamięci do wykorzystania 768 bajtów (w karcie 1kB) podzielone na 16 sektorów sektor składa się z czterech 16-sto bajtowych bloków można określić zasady dostępu do każdego z bloków jest to standard przemysłowy firmy Philips wiele firm ma w ofercie tą kartę zastosowania: systemy dostępu bilet elektroniczny

MIFARE niska uniwersalność zapisu upychanie danych w 768 bajtach uproszczony certyfikat (?) nielogiczny zapis i odczyt to jest karta o innym przeznaczeniu stałe przywiązanie do firmowej technologii uniemożliwienie integracji z lokalnymi systemami dostępu, kartami miejskimi niska cena

Aplikacja w karcie stykowej zarejestrowany identyfikator aplikacji (AID) zarejestrowany identyfikator obiektu (OID) uniwersalny opis danych (logiczny) z użyciem ASN.1 możliwość realizacji na praktycznie wszystkich kartach możliwość rozwoju aplikacji bez wymiany technologii wieloaplikacyjność legitymacji

Aplikacja w karcie stykowej SELSInfo ::= SEQUENCE { numerseryjnyukladu PrintableString (SIZE (8..16)), nazwauczelni UTF8String (SIZE (1..128)), nazwiskostudenta SEQUENCE OF UTF8String (SIZE (1..28)), imionastudenta SEQUENCE OF UTF8String (SIZE (1..24)), numeralbumu PrintableString (SIZE (1..16)), numeredycji PrintableString (SIZE (1)), numerpesel PrintableString (SIZE (11)), datawaznosci GeneralizedTime }

Aplikacja legitymacja MF 3F 00 DF.SELS D6 16 XX XX XX 45 4C 53 EF.ELS 00 01 EF.CERT 00 02...

Cykl życia personalizacja wydanie kart użytkownikom przedłużenie ważności ( pieczątka ) używanie... przedłużenie ważności ( pieczątka ) używanie...... zakończenie wykorzystania legitymacji

Integracja z kartą bezstykową jest możliwa i dobra dla lokalnych zastosowań systemy dostępu karty miejskie (potencjalny sponsor interfejsu bezstykowego)

Bezpieczeństwo czy można podrobić legitymację? czy można wyprodukować legitymację dla dowolnej osoby czy można przedłużyć legitymację na kolejny semestr? czy można legitymację skopiować? i co to daje? dodatkowe zabezpieczenia w karcie nadruk hologramy

Podsumowanie jeśli legitymacja będzie wdrażana to... jest to unikalny projekt kartowy wiele typów kart wielu wydawców wiele innych, lokalnych zastosowań (multiaplikacyjność)

Pytania? poczta elektroniczna: www: pnazimek@elka.pw.edu.pl pnazimek@gmail.com http://home.elka.pw.edu.pl/~pnazimek/