PL182666B1 - Sposób i urządzenie do komunikacji programu użytkowego z kartą mikroprocesorową - Google Patents
Sposób i urządzenie do komunikacji programu użytkowego z kartą mikroprocesorowąInfo
- Publication number
- PL182666B1 PL182666B1 PL96318655A PL31865596A PL182666B1 PL 182666 B1 PL182666 B1 PL 182666B1 PL 96318655 A PL96318655 A PL 96318655A PL 31865596 A PL31865596 A PL 31865596A PL 182666 B1 PL182666 B1 PL 182666B1
- Authority
- PL
- Poland
- Prior art keywords
- microprocessor card
- application program
- data
- module
- card
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/355—Personalisation of cards for use
- G06Q20/3552—Downloading or loading of personalisation data
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephone Function (AREA)
- Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
- Storage Device Security (AREA)
Abstract
1. Sposób komunikacji programu uzytkowego z karta mikroprocesorowa, znamienny tym, ze zadanie (100) skomuni- kowania sie z karta mikroprocesorowa (20) przedstawia sie przez program uzytkowy (10) modulowi dialogowemu (40) karty mikro- procesorowej (20), który jest wyszczegól- niony dla karty mikroprocesorowej (20) i zawiera specyficzne dane dotyczace karty mikroprocesorowej (20), oraz w momencie zadania (100) generuje sie w module dialo- gowym (40) karty mikroprocesorowej (20) co najmniej jedno polecenie (110), które jest wymagane do komunikacji z karta mi- kroprocesorowa (20), po czym realizuje sie dostep modulu dialogowego (40) karty mi- kroprocesorowej (20) do specyficznych informacji dla programu uzytkowego (10) przechowywanego w pamieci elementu (30) przechowujacego dane programu uzytko- wego (10). FIG . 1 PL PL PL
Description
Przedmiotem wynalazku jest sposób i urządzenie do komunikacji programu użytkowego z kartą mikroprocesorową.
Karty ze zintegrowanym układem elektronicznym, które są wydajne, oraz na ogół małe, w przybliżeniu o rozmiarze i w kształcie karty kredytowej i wykonane korzystnie z tworzywa sztucznego lub metalu, są znane jako karty nośnika danych albo karty mikroprocesorowe. W przeciwieństwie do prostych kart przechowujących, znanych jako karty pamięciowomikroprocesorowe albo karty z pamięcią, inteligentne karty nośnika danych, znane także jako wielofiinkcyjne karty mikroprocesorowe albo karty inteligentne, posiadają oprócz funkcji pamięci własny procesor do sterowania danymi przechowywanymi w układzie scalonym karty nośnika danych. Umożliwia to lepszą ochronę danych i daje w rezultacie ulepszone działanie kart mikroprocesorowych. Proste karty z pamięcią umożliwiają na ogół tylko zapis i odczyt danych. Karty inteligentne oprócz tych fUnkcji posiadają także funkcje strukturyzacji danych, oddzielania danych, zarządzania danymi i ochrony danych. Interfejs karty inteligentnej i przez to oprogramowanie wymagane do odczytu danych z karty mikroprocesorowej, na przykład sekwencji poleceń, są więc znacznie bardziej złożone niż w kartach z pamięcią.
Instalowanie kart mikroprocesorowych, które wzrasta przede wszystkim dzięki ich zwiększonemu zabezpieczeniu przed manipulacją, rozpowszechnia się na szeroki zakres programów użytkowych. Programy użytkowe z kartami mikroprocesorowymi, czyli programy, w których wymagana jest komunikacja dowolnego oddzielnego urządzenia z kartą mikroprocesorową, mogą służyć do dokonywania zapłaty bez gotówki, identyfikacji właściciela karty mikroprocesorowej, przechowywania danych lub innych podobnych zastosowań. Program użytkowy tego typu składa się z wewnętrznych segmentów programu na karcie mikroprocesorowej oraz zewnętrznych segmentów programu w odpowiadających urządzeniach, takich jak automaty na gotówkę, komputery osobiste albo specjalne terminale. Na ogół wewnętrzne
182 666 segmenty takiego programu reprezentują wszystkie dane i programy znajdujące się w samej pamięci karty mikroprocesorowej, zaś zewnętrzne segmenty reprezentują wszystkie dane i programy na zewnątrz karty mikroprocesorowej. Za programowanie tych zewnętrznych segmentów zwykle odpowiedzialni są programiści urządzeń, w których ma zostać zainstalowana karta mikroprocesorowa. Często urządzenia te mają złożoną samodzielną platformę oprogramowania. Aby zintegrować programy z kartami mikroprocesorowymi w tych przypadkach, wymagana jest rozległa wiedza o strukturze przechowywanych danych oraz interfejsie karty mikroprocesorowej.
Większość stosowanych kart mikroprocesorowych znacznie różni się od siebie w zależności od producenta. Wiele z kart mikroprocesorowych realizuje częściowy zestaw standardu ISO 7816 i wykorzystuje również kilka funkcji specjalnych.
Aby umożliwić dostęp do danych przechowywanych na karcie mikroprocesorowej, przeprowadza się zwykle programowanie na stałe (kodowanie) poleceń. Oznacza to jednak mniejszą elastyczność oprogramowania użytkowego i niewielkie możliwości wprowadzania zmian.
Przy instalacji karty mikroprocesorowej zwykle stosuje się szyfrowanie danych lub poleceń uwierzytelniających kartę mikroprocesorową albo urządzenia na zewnątrz karty mikroprocesorowej. W tym celu wykorzystuje się na ogół symetryczny algorytm szyfrujący taki jak standard DES (digital encryption standard, standard szyfrowania cyfrowego) albo niesymetryczny algorytm szyfrujący, taki jak algorytm z kluczem publicznym. W celu uwierzytelnienia właściciela karty mikroprocesorowej stosuje się obecnie niemal wyłącznie osobisty numer identyfikacyjny (Personal Identification Number, PIN). Oprócz urządzeń takich jak urządzenia odczytujące i zapisujące kartę mikroprocesorową, istnieją w szczególności inne elementy, takie jak elementy uwierzytelniające do szyfrowania i wprowadzania numerów PIN, które trzeba rozważyć w oprogramowaniu kart mikroprocesorowych i które mogą być włączone do takiego oprogramowania.
Komunikacja elementów i urządzeń, która jest realizowana przez sprzęt i oprogramowanie, z zewnętrznymi segmentami programu użytkowego, jest uzyskiwana przez zastosowanie interfejsu programowego. Dla karty mikroprocesorowej prosty interfejs nie jest jednak wystarczający. Wskutek złożoności struktur danych, a także wymaganych poleceń, nie wystarczy wykorzystać osadzenia poleceń w innym protokole lub zastosować język programowania wyższego poziomu. Dla danych specyficznych dla programu użytkowego wykorzystuje się również wiedzę o wewnętrznych strukturach karty mikroprocesorowej i przez to o ich dostępności i sposobie dostępu poprzez program użytkowy do interfejsu karty mikroprocesorowej
Znany jest z publikacji zgłoszenia międzynarodowego WO 87/07062 przenośny system nośnika danych, który zapewnia zabezpieczenie zbiorów danych aplikacji wielokrotnych przesyłanych od klienta do pamięci medycznych i/lub bankowych zbiorów danych. System zawiera przenośny nośnik danych, kartę mikroprocesorową, który pracuje jak wiele podobnych, zwykłych kart kredytowych. Zasilanie przenośnego nośnika danych jest zrealizowane ze stacji przyłączeniowej poprzez urządzenie odczytująco-zapisujące. To urządzenie umożliwia także, poprzez połączenie pojemnościowe, przesył danych pomiędzy nośnikiem danych i stacją przyłączeniową. W znanym rozwiązaniu uzyskano większe zabezpieczenie, gdyż oprogramowanie stacji odbierające i interpretujące dane ze zbioru widzi sąsiedni strumień bitów dotyczący tylko zbioru programu użytkowego, który jest dostępny.
Istotą sposobu komunikacji programu użytkowego z kartą mikroprocesorową, według wynalazku jest to, ze żądanie skomunikowania się z kartą mikroprocesorową przedstawia się przez program użytkowy modułowi dialogowemu karty mikroprocesorowej, który jest wyszczególniony dla karty mikroprocesorowej i zawiera specyficzne dane dotyczące karty mikro-procesorowej, oraz w momencie żądania generuje się w module dialogowym karty mikroprocesorowej co najmniej jedno polecenie, które jest wymagane do komunikacji z kartą mikroprocesorową po czym realizuje się dostęp modułu dialogowego karty mikroprocesorowej do specyficznych informacji dla programu użytkowego przechowywanego w pamięci elementu przechowującego dane programu użytkowego.
182 666
Korzystnie moduł dialogowy karty mikroprocesorowej wybiera się przez program użytkowy spośród pewnej liczby modułów dialogowych karty mikroprocesorowej zaś element . przechowujący dane programu użytkowego wyszczególnia się najpóźniej przy tworzeniu żądania dla modułu dialogowego karty mikroprocesorowej, przy czym oba zdarzenia zachodzą na podstawie specjalnych danych odpowiedzi karty mikroprocesorowej i wiadomości dotyczących konkretnego programu użytkowego, który ma zostać wykonany.
Korzystnie specjalne dane odpowiedzi karty mikroprocesorowej odbiera się poprzez wstępne zapytanie z karty mikroprocesorowej.
Korzystnie przypisuje się co najmniej jedną nazwę zastępczą w elemencie przechowującym dane programu użytkowego do wyznaczenia określonych danych udostępnianych programowi użytkowemu.
Korzystnie żądanie zawiera informacje dotyczące żądanej metody dostępu i nazwy zastępczej żądanych danych.
Korzystnie po żądaniu przedstawionym modułowi dialogowemu karty mikroprocesorowej, wyszukuje się w elemencie przechowującym dane programu użytkowego nazwy zastępcze zawarte w żądaniu.
Korzystnie na pierwsze żądanie wprowadza się moduł dialogowy karty mikroprocesorowej do trybu początkowego i tworzy się pierwsze polecenie z sekwencji poleceń, w którym moduł dialogowy karty mikroprocesorowej zmienia swój stan wewnętrzny przy każdej odpowiedzi na polecenie i pobiera informacje dotyczące postępowania sekwencji, oraz przerywa się tworzenie poleceń gdy tylko moduł dialogowy karty mikroprocesorowej osiągnie odpowiedni stan końcowy dla żądania.
Korzystnie stan końcowy osiąga się przy wystąpieniu błędu w komunikacji lub gdy udało się przetworzenie danych.
Korzystnie wykonuje się tylko zmianę konkretnego elementu przechowującego dane programu użytkowego dla modyfikacji danych przechowywanych na karcie mikroprocesorowej oraz udostępnia się nowy element przechowujący dane programu użytkowego, w trakcie którego nie jest konieczna zmiana programu użytkowego jako takiego.
Korzystnie tworzy się nowy moduł dialogowy karty mikroprocesorowej dla zmiany segmentów programu użytkowego odnoszących się do karty mikroprocesorowej.
Korzystnie wywołuje się przez program użytkowy procedurę agencyjną zarządzającą różnymi elementami przechowującymi dane programu użytkowego i modułami dialogowymi karty mikroprocesorowej dla wykorzystania wielu elementów przechowujących dane programów użytkowych i/lub wielu modułów dialogowych karty mikroprocesorowej dla pewnej liczby różnych programów użytkowych i typów kart mikroprocesorowych.
Korzystnie realizuje się przez procedurę agencyjną na żądanie dostępność odpowiednich wersji elementów przechowujących dane programów użytkowych i modułów dialogowych karty mikroprocesorowej.
Korzystnie żąda się przez procedurę agencyjną od innej procedury agencyjnej wymaganego oryginału spośród odpowiednich wersji elementów przechowujących dane programów użytkowych i/lub modułów dialogowych karty mikroprocesorowej, lub ich kopii.
Korzystnie uzyskuje się przez procedurę agencyjną brakujące segmenty przez skomunikowanie się z innymi zasobami lokalnymi lub zasobami dostępnymi poprzez sieć.
Korzystnie utworzone polecenie przekazuje się z powrotem do programu użytkowego i przesyła się przez niego jako polecenie programu użytkowego do urządzenia odczytującozapisującego dla bezpośredniego odczytu i zapisu danych na karcie mikroprocesorowej, przekazuje się z urządzenia odczytująco-zapisującego polecenie lub polecenie programu użytkowego do karty mikroprocesorowej i odbiera się z niej odpowiedź, po czym odpowiedź, albo wyprowadzoną z niej w podobny sposób odpowiedź, akceptuje się przez program użytkowy i przenosi do modułu dialogowego karty mikroprocesorowej jako dane odpowiedzi, oraz interpretuje się przez moduł dialogowy karty mikroprocesorowej dane odpowiedzi i tworzy następnie późniejsze polecenie, przy czym proces powtarza się aż do przetworzenia żądania.
Korzystnie po zakończeniu albo w trakcie całej sekwencji poleceń, przekazuje się przez moduł dialogowy karty mikroprocesorowej rekord danych jako reakcję na żądanie i dane
182 666 zwrócone przez kartę mikroprocesorową programu użytkowego, przy czym rekord danych reprezentuje odpowiedź karty mikroprocesorowej, która jest zrozumiała dla programu użytkowego na żądanie programu użytkowego, które nie jest zrozumiałe dla karty mikroprocesorowej.
Korzystnie sygnalizuje się w module dialogowym karty mikroprocesorowej potrzebę dokonania potrzebnego zaszyfrowania lub odszyfrowania odpowiednim żądaniem dla programu użytkowego i następnie dostarcza jej potrzebne dane oraz przekazuje się przez program użytkowy żądanie modułu dialogowego karty mikroprocesorowej do specjalizowanego modułu dla zaszyfrowania.
Korzystnie przekazuje się wskazanie nazwy zastępczej elementu danych i/lub programu oraz żądaną metodę dostępu dla przetworzenia danych i/lub programów na karcie mikroprocesorowej do programu użytkowego.
Korzystnie jako metody dostępu stosuje się odczyt, zapis, uwierzytelnienie i/lub utworzenie albo usunięcie struktur.
Korzystnie polecenia specyficzne dla programu użytkowego dla przetworzenia danych i/lub programów na karcie mikroprocesorowej przez program użytkowy, które mogą być zrealizowane przez kartę mikroprocesorową! wystąpić jako metoda dostępu, przechowuje się na karcie mikroprocesorowej, przy czym mogą one zostać zainicjalizowane specjalnymi poleceniami.
Korzystnie na żądanie programu użytkowego z modułu pośredniego umieszczonego w przybliżeniu na poziomie programu użytkowego, który zastępuje moduł dialogowy karty mikroprocesorowej w jego komunikacji z programem użytkowym, tworzy się rekord danych, który zawiera informacje z elementu przechowującego dane programu użytkowego, odbiera się przez router rekord danych i wydaje się polecenie modułowi dialogowemu karty mikroprocesorowej, który został przesunięty na poziom routera, po czym wysyła się przez router polecenie utworzone przez moduł dialogowy do karty mikroprocesorowej oraz odpowiedź karty mikroprocesorowej na polecenie do modułu dialogowego, zwraca się przez router wynik żądania po skomunikowaniu się modułu dialogowego z kartą mikroprocesorową do modułu pośredniego oraz udziela się przez moduł pośredni odpowiedzi programowi użytkowemu.
Korzystnie cechy elementu przechowującego dane programu użytkowego określa się ręcznie przy wykorzystaniu wszystkich informacji dla wszystkich danych znajdujących się na karcie mikroprocesorowej i ich charakterystyk, zaś dane na karcie mikroprocesorowej, które są dostępne dla programu użytkowego, dostarcza się wraz z nazwami zastępczymi.
Korzystnie modyfikację elementu przechowującego dane programu użytkowego dokonuje się bezpośrednio przez moduł dialogowy karty mikroprocesorowej albo procedurę agencyjną.
Korzystnie element przechowujący dane programu użytkowego, który znajduje się na karcie mikroprocesorowej, kopiuje się, przechowuje i udostępnia modułowi dialogowemu karty mikroprocesorowej albo procedurze agencyjnej.
Korzystnie dane specyficzne dla programu użytkowego obejmują informacje dotyczące typu, położenia, wielkości i metod dostępu dla danych przechowywanych na karcie mikroprocesorowej, jak również samych danych przechowywanych na karcie mikroprocesorowej
Korzystnie dane specyficzne dla karty mikroprocesorowej obejmują informacje dotyczące poleceń i protokołu karty mikroprocesorowej do uzyskiwania dostępu do przechowywanych na niej danych.
Korzystnie informacje specyficzne dla karty mikroprocesorowej rozmieszcza się w postaci tablicowej i/lub hierarchicznej.
Korzystnie element przechowujący dane programu użytkowego znajduje się na karcie mikroprocesorowej.
Istotą urządzenia do komunikacji programu użytkowego z kartą mikroprocesorową, według wynalazku jest to, że zawiera co najmniej jeden element przechowujący dane programu użytkowego dostosowany do zapisywania informacji odnoszących się do specyficznych danych programu użytkowego oraz co najmniej jeden moduł dialogowy karty mikroprocesorowej generujący, przy wykorzystaniu elementu przechowującego dane programu użytkowego, polecenia dla interfejsu z kartą mikroprocesorową, przy czym moduł dialogowy karty mikroprocesorowej zawiera specyficzne dane odnoszące się do karty mikroprocesorowej.
182 666
Korzystnie element przechowujący dane programu użytkowego zawiera nazwy zastępcze do określenia specyficznych danych programu użytkowego.
Korzystnie moduł dialogowy karty mikroprocesorowej ma dostęp do elementu przechowującego dane programu użytkowego.
Korzystnie zawiera urządzenie przydzielające do przydzielania elementu przechowującego dane programu użytkowego modułowi dialogowemu karty mikroprocesorowej.
Korzystnie informacja dla jednego lub więcej programów użytkowych jest zawarta w elemencie przechowującym dane programu użytkowego.
Korzystnie moduł dialogowy karty mikroprocesorowej jest modułem pracującym synchronicznie i asynchronicznie.
Korzystnie moduł dialogowy karty mikroprocesorowej jest automatem skończonym zaznaczającym swój stan wewnętrzny na podstawie danych wejściowych i stanu bieżącego przechodzącym do innego stanu.
Korzystnie posiada co najmniej jedną procedurę agencyjną odpowiedzialną za zarządzanie każdym typem modułu dialogowego karty mikroprocesorowej i elementu przechowującego dane programu użytkowego i wykorzystywaną przez program użytkowy do wyznaczania odpowiedniej kombinacji modułu dialogowego karty mikroprocesorowej i elementu przechowującego dane programu użytkowego dla każdego typu karty mikroprocesorowej.
Korzystnie co najmniej jedna agencja jest połączona z inną agencją poprzez sieć lub inną trasę komunikacyjną.
Korzystnie zawiera umieszczony w przybliżeniu na poziomie programu użytkowego moduł pośredni zastępujący moduł dialogowy karty mikroprocesorowej w jego komunikacji z programem użytkowym i tworzący rekord danych, przy czym rekord danych zawiera informacje z elementu przechowującego dane programu użytkowego w odpowiedzi na żądanie od programu użytkowego, oraz router odbierający rekord danych i wydający polecenia modułowi dialogowemu karty mikroprocesorowej, który został przesunięty na poziom routera, przy czym router wysyła polecenie utworzone przez moduł dialogowy do karty mikroprocesorowej oraz odpowiedź karty mikroprocesorowej na polecenie do modułu dialogowego, router zwraca wynik żądania po skomunikowaniu się modułu dialogowego karty z kartą mikroprocesorową do modułu pośredniego i moduł pośredni udziela odpowiedzi programowi użytkowemu.
Korzystnie karta mikroprocesorowa jest kartą pamięci z własnym procesorem albo bez niego.
Korzystnie informacje specyficzne dla karty mikroprocesorowej zawierają kompletne struktury podstawowe karty mikroprocesorowej lub jej części.
Zaletą rozwiązania według wynalazku jest uproszczony interfejs do komunikacji z kartą mikroprocesorową.
Przedmiot wynalazku jest przedstawiony w przykładach wykonania na rysunku, na którym fig. 1 przedstawia schematycznie komunikację programu użytkowego z kartą mikroprocesorową, fig. 2 - zastosowanie kilku elementów przechowujących dane i/lub kilku modułów dialogowych dla pewnej liczby różnych programów użytkowych i typów kart mikroprocesorowych, fig. 3 - kolejny przykład wykonania, który umożliwia zmniejszenie łącznych kosztów komunikacji z kartą mikroprocesorową.
Na figurze 1 przedstawiono schematycznie komunikowanie się programu użytkowego 10 z kartą mikroprocesorową 20. Program użytkowy 10 jest oddzielony od karty mikroprocesorowej 20 i może być umieszczony na przykład w urządzeniu odczytująco-zapisującym, w komputerze albo w innym środowisku, które może się komunikować z kartą mikroprocesorową 20. Element 30 przechowujący dane programu użytkowego 10 służy do zapisywania danych specyficznych dla programu. Moduł dialogowy 40 karty mikroprocesorowej 20 tworzy polecenia wymagane dla interfejsu karty mikroprocesorowej 20.
Element 30 przechowujący dane zawiera informacje dotyczące typu, położenia, rozmiaru i metod dostępu do danych przechowywanych na karcie mikroprocesorowej 20, jak również informacje do przetwarzania tych danych, które mogą być potrzebne zależnie od opcji zabezpieczenia programu użytkowego 10. Dla prostej identyfikacji danych dotyczących dostępu poprzez program użytkowy 10 przypisuje się danym jedną albo więcej nazw zastępczych. Informację tę umieszcza się w elemencie 30 przechowującym dane w odpowiedniej
182 666 postaci, takiej jak tabela i zawiera ona wszystkie potrzebne informacje dla programu użytkowego 10 lub dla pewnej liczby dodatkowych programów (więcej szczegółów na ten temat można znaleźć na figurze 2). Dostęp do elementu 30 przechowującego dane następuje poprzez moduł dialogowy 40. Przypisanie elementu 30 przechowującego dane do modułu dialogowego 40 wykonuje się poprzez zewnętrzny segment aplikacji lub specjalne rozszerzenia modułu dialogowego 40.
Tworzenie elementu 30 przechowującego dane następuje korzystnie poprzez ręczne utworzenie wymaganych danych. Aby to uzyskać, potrzebne są wszystkie informacje dla wszystkich danych na karcie mikroprocesorowej 20, wraz z ich charakterystyką. Danym na karcie mikroprocesorowej 20, które są dostępne z programu użytkowego 30, nadaje się nazwy zastępcze przeznaczone dla elementu 30 przechowującym dane.
Jeśli dane na karcie mikroprocesorowej 20 mają zostać przetworzone, program użytkowy 10 przedstawia żądanie 100 do modułu dialogowego 40. Żądanie 100 tego typu zawiera informacje dotyczące żądanej metody dostępu, jak również nazwy zastępcze potrzebnych danych. W odpowiedzi na żądanie 100 moduł dialogowy 40 tworzy sekwencję poleceń wymaganą do uzyskania dostępu do danych na karcie mikroprocesorowej 20. Aby to osiągnąć, wykorzystuje on informacje przechowywane na pozycji każdej nazwy zastępczej znajdującej się w elemencie 30 przechowującym dane. Potrzebne parametry metody dostępu są podawane modułowi dialogowemu 40 wraz z żądaniem 100. Na przykład nazwa zastępcza daty, metoda odczytu do zastosowania i dane dotyczące miejsca składania odpowiedzi na żądanie 100 należą do żądania 100, którym jest przeprowadzenie odczytu daty na karcie mikroprocesorowej 20. Ten typ żądania może składać się również z odczytu trybu dostępu dla danych o nazwie zastępczej NUMER KONTA oraz adresu w pamięci na składowane dane. Oprócz sposobów odczytu i zapisu może tu również następować uwierzytelnienie, generowanie lub usuwanie struktur, jak również polecenia specyficzne dla aplikacji, które mogą być zrealizowane przy pomocy kart mikroprocesorowych. W tych przypadkach istnieją sposoby przechowywane na karcie mikroprocesorowej 20, które są inicjalizowane za pomocą specjalnych poleceń. Na przykład może to być modyfikacja ilości gotówki na koncie przechowywanym na karcie mikroprocesorowej 20.
Aby umożliwić proste osadzenie w istniejących systemach, często jest konieczne zapewnienie asynchronicznego trybu pracy modułu dialogowego 40. Wiele ze stosowanych platform oprogramowania wymaga programowania sterowanego zdarzeniami. Moduł działający synchronicznie mógłby prowadzić do tymczasowej blokady całego systemu. Jednak czas trwania tej blokady często jest niedopuszczalny dla tych programów użytkowych z kartą mikroprocesorową, ponieważ obejmuje on przekazywanie danych do względnie powolnego nośnika, jak również przetwarzanie poleceń procesora działające względnie wolno.
Moduł dialogowy 40 jest korzystnie zrealizowany jako moduł asynchroniczny, ale może również pracować synchronicznie. W momencie żądania 100 programu użytkowego 10, moduł dialogowy 40 tworzy sekwencję poleceń dla karty mikroprocesorowej 20. Każde polecenie 110 z sekwencji jest przekazywane indywidualnie z powrotem do programu. Przekazuje on odpowiednie polecenie 110 modułu dialogowego 40 jako polecenie 130 programu do odpowiedniego urządzenia czytająco-zapisującego 120 w celu bezpośredniego odczytu i zapisu danych na karcie mikroprocesorowej 20. W tym momencie należy wspomnieć, ze program użytkowy 10, jak opisano powyżej, może być umieszczony bezpośrednio w urządzeniu czytająco-zapisującym 120. Dla pewnych programów zamiast szeregu poleceń może być odpowiednie jedno polecenie 110.
Urządzenie czytająco-zapisujące 120 przekazuje polecenie 130 programu, lub wyprowadzone z niego polecenie 130' programu, do karty mikroprocesorowej 20 i otrzymuje od niej odpowiedź 140. Dane odpowiedzi 140 albo odpowiedzi 140', wyprowadzonej z niej w podobny sposób, są przyjmowane przez program użytkowy 10 i podawane z kolei modułowi dialogowemu 40 jako dane odpowiedzi 150. Moduł ten interpretuje dane odpowiedzi 150 i tworzy zaraz potem następne polecenie, jeśli jest to potrzebne. Proces jest powtarzany do przetworzenia żądanych danych. Na końcu procesu, albo również ciągle w trakcie sekwencji poleceń, moduł dialogowy 40 przekazuje rekord danych 160 jako reakcję na żądanie 100 i dane po
182 666 wracające z karty mikroprocesorowej 20 do programu użytkowego 10. Ten rekord danych reprezentuje odpowiedź karty mikroprocesorowej 20, która jest zrozumiała dla programu użytkowego 10, na żądanie 100 programu użytkowego 10, które nie było zrozumiałe dla karty mikroprocesorowej 20.
Realizację modułu dialogowego 40 przeprowadza się korzystnie poprzez zastosowanie idei automatu skończonego. Ten typ automatu może przechowywać swój własny stan wewnętrzny i na podstawie danych wejściowych i bieżącego stanu, przechodzić do stanu następnego. Programowanie tego automatu wykonuje się przez dokonanie wstępnego wyboru pożądanych konwersji stanów dla określonych kombinacji stanu tymczasowego i danych wejściowych.
Podczas tworzenia poleceń istnieją również przykłady zastosowań danych lub poleceń zabezpieczonych kodami, co wymaga w rezultacie szyfrowania/odszyfrowania, na przykład w karcie mikroprocesorowej 20. Z powodów bezpieczeństwa nie powinny być one wykonywane przez moduł dialogowy 40. Moduł ten zasygnalizuje więc to wymaganie poprzez odpowiednie żądanie programu użytkowego 10 i dostarczy wymagane dane. Program użytkowy 10 w większości przypadków przekaze z kolei to żądanie do specjalizowanego modułu w celu zaszyfrowania. Po odpowiedzi moduł dialogowy 40 będzie kontynuował tworzenie sekwencji poleceń.
Oprócz żądań szyfrowania, można także przedstawiać żądania urządzeniu czytaj ącozapisującemu 120, jak również żądania między innymi dla urządzenia wprowadzania numeru PIN. Żądania te są przekazywane przez program użytkowy 10 do odpowiednich urządzeń w celu ich przetworzenia.
Aby połączyć się z kartą mikroprocesorową 20, program użytkowy 10 wybierze najpierw odpowiedni moduł dialogowy 40, na przykład spośród pewnej liczby możliwych modułów. W tym ostatnim momencie podaje się również żądany element 30 przechowywanych danych w chwili utworzenia żądania dla modułu dialogowego 40. Obie te czynności zachodzą na podstawie specjalnych danych odpowiedzi karty, które są odbierane na przykład poprzez wstępne zapytanie z karty mikroprocesorowej 20 i dzięki znajomości określonego programu użytkowego 10, który dokonuje transakcji. Po wybraniu modułu dialogowego 40 i elementu 30 przechowującego dane, żądanie 100 może zostać przedstawione modułowi dialogowemu 40 przez program użytkowy 10. W tym momencie moduł dialogowy 40 wyszukuje w elemencie 30 przechowującym dane nazwy zastępcze zawarte w żądaniu 100 i odbiera dotyczące ich potrzebne informacje specyficzne dla programu. Pierwsze żądanie 100 wprowadza moduł dialogowy 40 w tryb początkowy i jest wtedy tworzone pierwsze polecenie z wymaganej sekwencji poleceń. Przy każdej odpowiedzi na polecenie, moduł dialogowy 40 zmieni swój wewnętrzny stan i pobierze informacje dotyczące postępowania sekwencji. Tworzenie poleceń zostaje ukończone gdy tylko moduł dialogowy 40 osiągnie stan końcowy, który jest właściwy dla żądania. Zachodzi to wówczas, gdy w połączeniu wystąpi błąd lub gdy udało się przetworzenie danych.
Jeśli potrzebna jest modyfikacja programu użytkowego 10 poprzez modyfikację danych przechowywanych na kartach mikroprocesorowych, może ona zostać ograniczona do zmiany elementu 30 przechowującego dane. Nowy element 30' (nie pokazany na rysunku) jest udostępniany programowi użytkowemu 10, a sam program użytkowy 10 nie musi być zmieniany. Zmiana segmentów programu 10 dotyczących karty mikroprocesorowej 20, taka jak na przykład zastosowanie typów karty mikroprocesorowej o innym interfejsie, prowadzi do utworzenia nowego modułu dialogowego 40' (nie pokazanego na rysunku). Informacja dotycząca danych programu użytkowego 10 w elementach 30 albo 30' nie musi w tym przypadku być zmieniana.
Jest zrozumiałe, ze polecenie 110 i żądanie 140 modułu dialogowego 40 korzystnie nie są zmieniane ani przez program użytkowy 10 ani przez urządzenie czytająco-zapisujące 120 czy inne urządzenia mogące znajdować się pomiędzy modułem dialogowym 40 i kartą mikroprocesorową 20. Sygnały 110, 130 i 130' są w tym przypadku identyczne i karta mikroprocesorowa 20 odbiera polecenie 110 modułu dialogowego 40 pośrednio i przekazuje z kolei do niego (także pośrednio) swoją odpowiedź 140 na polecenie 110. Tak więc sygnały 140, 140' i 150 również są identyczne. W podobny sposób w każdym przypadku można uzyskać bezpośred
182 666 nie przekazanie polecenia 110 do karty mikroprocesorowej 20 i odpowiadającą mu odpowiedź 140 z powrotem do modułu dialogowego 40.
Jest również zrozumiałe, że moduł dialogowy 40 może działać w trybie asynchronicznym, jak również synchronicznym. W trybie asynchronicznym program użytkowy 10 nie czeka na odpowiedź modułu dialogowego 40 na żądanie 100, jest więc dostępna także między żądaniem 100 i odpowiedzią. Natomiast w trybie synchronicznym program użytkowy 10 czeka na odpowiedź modułu dialogowego 40 na żądanie 100, nie jest więc dostępna aż do zakończenia odpowiedzi.
Figura 2 przedstawia zastosowanie kilku elementów 230 przechowujących dane i/lub kilku modułów dialogowych 240 dla pewnej liczby różnych programów użytkowych 210 i typów kart mikroprocesorowych 220. Tak zwana procedura agencyjna 250 jest wywoływana przez program użytkowy 10 spośród pewnej liczby programów użytkowych 210 zamiast modułu dialogowego 40, jak na fig. 1. Zadaniem procedury agencyjnej 250 jest zarządzanie różnymi elementami 230 przechowującymi dane i modułami dialogowymi 240, oraz zapewnienie dostępności odpowiednich wersji w wymagany sposób. Aby to uzyskać, stosuje się korzystnie listę wszystkich lokalnych elementów 230 i modułów 240, wraz z ich charakterystykami, a także ich kryteriami, gdy mają one być użyte. Jeżeli nie jest dostępny odpowiedni moduł i odpowiedni element, potrzebny oryginał lub jego kopia mogą być zażądane przez inną procedurę agencyjną 260. Może to zostać wykonane poprzez lokalną sieć, jak również odpowiednie trasy komunikacyjne pomiędzy procedurami 250 i 260.
Jeśli w realizacji modułu dialogowego 40 stosuje się również interpretowany język programowania, jeden i ten sam program użytkowy można zastosować również na urządzeniach z innym sprzętem i systemami operacyjnymi. Aby to osiągnąć, dla każdego urządzenia realizuje się odpowiedni interpreter, który przetwarza program modułu dialogowego przez interpretację.
Jeżeli podczas przenoszenia poleceń z modułu dialogowego 40 do karty mikroprocesorowej 20 trzeba przejść przez kilka poziomów programu, może to spowodować znaczny koszt komunikacji z kartą mikroprocesorową 20. Można go zmniejszyć jeżeli, tak jak pokazano na figurze 3, moduł dialogowy 40 zostanie umieszczony bliżej karty mikroprocesorowej 20. Aby to uzyskać, moduł ten 40 zastępuje się tak zwanym modułem pośrednim 340. Moduł ten tworzy pojedynczy rekord danych 350 dla każdego żądania 100 ze wszystkimi potrzebnymi informacjami z elementu 30 przechowującego dane i umożliwia przesłanie go do routera 360. Router 360 odbiera rekord danych 350 z modułu pośredniego 340 i z kolei przekazuje polecenie modułowi dialogowemu 40, który został przesunięty na ten poziom Wszystkie polecenia 370 utworzone przez moduł dialogowy 40 są teraz przesyłane do karty mikroprocesorowej 20 poprzez router 360, a z kolei każda odpowiedź jest wysyłana do modułu dialogowego 40. Wynik 390 żądania 100 po połączeniu modułu dialogowego 40 z kartą mikroprocesorową 20 jest na końcu oddawany z powrotem do modułu pośredniego 340 przez router 360, a następnie przekazywany przez router 360 jako odpowiedź 160 do programu użytkowego 10. Moduł pośredni 340 zapewnia jednorodny interfejs dla programu użytkowego 10, tak więc nie musi on być modyfikowany przy jego stosowaniu. Program użytkowy 10 pozostaje niezależny od tego, czy komunikuje się z modułem dialogowym 40, czy z jego modułem pośrednim 340 Router 360 umieszcza się korzystnie na tym samym poziomie, co moduł dialogowy 40, natomiast element 30 przechowujący dane pozostaje na poziomie programu użytkowego 10 albo procedury agencyjnej 230.
Należy zauważyć, ze urządzenie odczytuj ąco-zapisujące 120 stanowi przykład abstrakcyjnej reprezentacji urządzenia z bezpośrednim dostępem do karty mikroprocesorowej 20. Urządzenie odczytująco-zapisujące może tym niemniej składać się z pewnej liczby osobnych urządzeń i warstw o poszczególnych interfejsach pomiędzy sobą.
Ponadto, jest oczywiste, ze wynalazek dotyczy prostych kart z pamięcią, jak również inteligentnych kart z nośnikiem danych z własnym procesorem do sterowania danymi przechowywanymi w mikroukładzie karty nośnika danych.
Modyfikację elementu 30 przechowującego dane można przeprowadzić również bezpośrednio poprzez moduł dialogowy 40 lub procedurę agencyjną 250. Jest to szczególnie ko
182 666 rzystne, gdy struktury na karcie mikroprocesorowej 20 trzeba utworzyć albo zmodyfikować przy pomocy modułu dialogowego 40, na przykład gdy moduł dialogowy 40 ma przechować lub zmienić strukturę nowego pliku na karcie mikroprocesorowej 20.
W jednym z przykładów wykonania element 30 przechowujący dane jest umieszczony bezpośrednio na karcie mikroprocesorowej 20. Dzięki temu potrzebny element 30 jest zawsze bezpośrednio dostępny dla karty mikroprocesorowej 20. W innym przykładzie wykonania element 30 przechowujący dane, który jest umieszczony bezpośrednio na karcie mikroprocesorowej 20, jest kopiowany przez tę kartę mikroprocesorową 20 i zapamiętywany, korzystnie przez moduł dialogowy 40, i jest udostępniony modułowi dialogowemu 40 lub procedurze agencyjnej 250 dla innych kart mikroprocesorowych tego samego typu.
Poniżej zostanie opisany przebieg przetwarzania sekwencji poleceń. Program użytkowy 10 odczytuje numer konta z karty mikroprocesorowej 20. Moduł dialogowy 40, który ma zostać wykorzystany, jest wybierany na podstawie charakterystyki typu karty mikroprocesorowej 20. Program użytkowy 10 wysyła żądanie 100 do modułu dialogowego 40, do którego przypisano przy wcześniejszym wyborze określony element 30 przechowujący dane, na podstawie danych karty o typie karty mikroprocesorowej 20. Tabela 1 przedstawia wyciąg z tego przypisanego elementu 30.
Żądanie 100 zawiera jako parametry polecenie CZYTAJ, nazwę zastępczą NUMER KONTA i adres w pamięci bufora, w którym należy umieścić wynik żądania 100. Moduł dialogowy 40 wyszukuje następnie w elemencie 30 nazwę zastępczą NUMER KONTA (zobacz tabela 1). Gdy zostanie znaleziona, pozycja udostępnia informację co do elementu przechowującego dane i pliku karty mikroprocesorowej 20, w którym ma zostać znaleziony ten element danych, jak również informację o typie i rozmiarze elementu danych, oraz informację dotyczącą bezpieczeństwa. Dane na karcie mikroprocesorowej 20 są w tym przykładzie umieszczone w elemencie przechowującym dane, które zazwyczaj mogą być zrozumiałe dla systemów danych w komputerach.
W tym przykładzie w tabeli 1 zostaje znaleziony wskaźnik ścieżki 3F00.A100.4001 (oznaczony strzałką) pod nazwą zastępczą NUMER KONTA, a także informacja, ze typ pliku to PRZEZROCZYSTY. Odnajdywany w pliku jest element danych o przesunięciu 4 i długości 5 bajtów. Wskazanie dziedziny kodu KREDYT i dziedziny upoważnienia AUT.KREDYT służy do przetłumaczenia logicznych numerów kodowych na numery fizyczne. Przy wprowadzeniu haseł (z numerem PIN) stosuje się dziedzinę GLOBAL dla PINI i PIN2. Dziedzina dla określonego obiektu reprezentuje grupę elementów przechowujących dane i plików, które majądostęp-uo wspólnej jednostki tych obiektów.
Moduł dialogowy 40 inicjalizuje tworzenie sekwencji poleceń dla selekcji wymaganego słownika na karcie mikroprocesorowej 20 na podstawie wskaźnika ścieżki 3F00.Al 00.4001. Bierze się przy tym pod uwagę bieżący wybrany element przechowujący dane. W przypadku, gdy element 3F00 został już wybrany, pierwszym utworzonym poleceniem 110 będzie polecenie wybrania podelementu A100. To pierwsze polecenie 110 jest przekazywane z powrotem do programu użytkowego 10 wraz z sygnałem, że sekwencję poleceń należy kontynuować Następnie program 10 przekazuje dalej pierwsze polecenie 110 jako polecenie 130 do interfejsu w celu przesłania do urządzenia odczytująco-zapisującego wykorzystywanego przez kartę mikroprocesorową 20. Urządzenie przesyła następnie polecenie 130 do karty mikroprocesorowej 20. Karta mikroprocesorowa 20 wysyła odpowiedź 140 z potwierdzeniem wyboru i w razie potrzeby inne informacje o wybranym elemencie przechowującym dane. Odpowiedź 140 jest zawracana przez urządzenie odczytująco-zapisujące 120 do programu użytkowego 10, która natychmiast przekazuje ją dalej jako dane odpowiedzi 150 do modułu dialogowego 40.
Dane odpowiedzi 150 są na ogół przedstawiane w formacie, który nie jest zrozumiały dla programu użytkowego 10. Aby można było zrozumieć dane odpowiedzi, rozległa znajomość modułu dialogowego 40 musi być udostępniona przez kartę mikroprocesorową 20. Moduł dialogowy 40 na podstawie danych odpowiedzi 150 jest w stanie sformułować wnioski co do powodzenia pierwszego polecenia 110 i zebrać informacje dotyczące postępu sekwencji poleceń. Jako następny krok drugie polecenie 110 wyboru pliku 4001 jest przekazywane programowi użytkowemu 10 i jest ono traktowane tak jak pierwsze polecenie 110.
182 666
Na końcu tworzone jest dodatkowe polecenie 110 odczytu żądanych danych. W tym celu stosuje się informacje o położeniu (przesunięcie = 4) i rozmiarze (długość = 5) numeru konta. Polecenie 110 jest przesyłane tak jak poprzednio polecenie 110 i karta mikroprocesorowa 20 analogicznie na nie odpowiada. Dane odpowiedzi 150' karty mikroprocesorowej zawierają teraz również żądane dane. Dane te mogą na przykład być zaszyfrowane, co moduł dialogowy 40 rozpoznał na podstawie poprzedniej informacji podczas wyboru pliku. W tym momencie, zostanie utworzone żądanie 140 modułu dialogowego 40 dla programu użytkowego 10, aby przeprowadzić szyfrowanie danych. Program użytkowy 10 może sam przeprowadzić szyfrowanie, lub może przekazać je dodatkowemu specjalizowanemu modułowi. Wynik jest przekazywany z powrotem jako element danych odpowiedzi 150' do modułu dialogowego 40. Moduł ten 40 kopiuje teraz dane w formacie zrozumiałym dla modułu użytkowego 10 do pamięci buforowej, która została wskazana w początkowym żądaniu 100 i sygnalizuje programowi użytkowemu 10 koniec sekwencji poleceń. Program użytkowy 10 ma teraz dostęp do numeru konta i może wysłać następne żądanie do modułu dialogowego 40.
182 666 (Π ω
(ϋ
| Dziedzina PIN 2 | | GLOBALNY | | [GLOBALNY | i GLOBALNY [ | GLOBALNY 1 | GLOBALNY |
| Dziedzina PIN 1 ___ | | GLOBALNY | | I GLOBALNY 1 | 1 GLOBALNY | | GLOBALNY 1 | GLOBALNY |
| Dziedzina upoważnień ia | Q Ul H D | I AUT KREDYT I | AUT kredyt! | I AUT DEBET | | AUT_DEBET |
| Dziedzina klucza | KREDYT 1 | I KREDYT I | KREDYT | I DEBET 1 | DEBET |
| Dziedzina długości | LO | o | o | o | |
| Indeks : przesuni 1 ęcia | o | cn | o | C\] | |
| Tryb typu danych | PRZEZROCZYSTY 1 | 1 PRZEZROCZYSTY 1 | I PRZEZROCZYSTY | [dedykowany | CYKLICZNY_STAŁY |
| Dane ścieżki | o o o o o o Ui co | o o o o o o U-l co | o o o o o o Ul co | o o Ol o o Ul co | „3F00.A200.1200 |
| Nazwa zastępcza | 1 „KOD BANKU | Z O ω s o z | | „NUMER KARTY | | | „DEBET | | „WIELKOŚĆ DEBETU |
182 666
182 666
FIG. 2
182 666
130
140'
FIG. 1
350 390
FIG. 3
Departament Wydawnictw UP RP. Nakład 60 egz.
Cena 4,00 zł.
Claims (40)
- Zastrzeżenia patentowe1. Sposób komunikacji programu użytkowego z kartą mikroprocesorową, znamienny tym, że żądanie (100) skomunikowania się z kartą mikroprocesorową (20) przedstawia się przez program użytkowy (10) modułowi dialogowemu (40) karty mikroprocesorowej (20). który jest wyszczególniony dla karty mikroprocesorowej (20) i zawiera specyficzne dane dotyczące karty mikroprocesorowej (20), oraz w momencie żądania (100) generuje się w module dialogowym (40) karty mikroprocesorowej (20) co najmniej jedno polecenie (110), które jest wymagane do komunikacji z kartą mikroprocesorową (20), po czym realizuje się dostęp modułu dialogowego (40) karty mikroprocesorowej (20) do specyficznych informacji dla programu użytkowego (10) przechowywanego w pamięci elementu (30) przechowującego dane programu użytkowego (10).
- 2. Sposób według zastrz. 1, znamienny tym, że moduł dialogowy (40) karty mikroprocesorowej (20) wybiera się przez program użytkowy (10) spośród pewnej liczby modułów dialogowych (40) karty mikroprocesorowej (20) zaś element (30) przechowujący dane programu użytkowego (10) wyszczególnia się najpóźniej przy tworzeniu żądania (100) dla modułu dialogowego (40) karty mikroprocesorowej (20), przy czym oba zdarzenia zachodzą na podstawie specjalnych danych odpowiedzi karty mikroprocesorowej (20) i wiadomości dotyczących konkretnego programu użytkowego (10), który ma zostać wykonany.
- 3. Sposób według zastrz. 2, znamienny tym, że specjalne dane odpowiedzi karty mikroprocesorowej (20) odbiera się poprzez wstępne zapytanie z karty mikroprocesorowej (20).
- 4. Sposób według zastrz. 1, znamienny tym, ze przypisuje się co najmniej jedną nazwę zastępczą w elemencie (30) przechowującym dane programu użytkowego (10) do wyznaczenia określonych danych udostępnianych programowi użytkowemu (10).
- 5. Sposób według zastrz. 1, znamienny tym, że żądanie (100) zawiera informacje dotyczące żądanej metody dostępu i nazwy zastępczej żądanych danych.
- 6. Sposób według zastrz. 5, znamienny tym, że po żądaniu (100) przedstawionym modułowi dialogowemu (40) karty mikroprocesorowej (20), wyszukuje się w elemencie (30) przechowującym dane programu użytkowego (10) nazwy zastępcze zawarte w żądaniu (100).
- 7. Sposób według zastrz. 1, znamienny tym, że na pierwsze żądanie (100) wprowadza się moduł dialogowy (40) karty mikroprocesorowej (20) do trybu początkowego i tworzy się pierwsze polecenie z sekwencji poleceń, w którym moduł dialogowy (40) karty mikroprocesorowej (20) zmienia swój stan wewnętrzny przy każdej odpowiedzi (150) na polecenie (110) i pobiera informacje dotyczące postępowania sekwencji, oraz przerywa się tworzenie poleceń gdy tylko moduł dialogowy (40) karty mikroprocesorowej (20) osiągnie odpowiedni stan końcowy dla żądania (100).
- 8. Sposób według zastrz. 7, znamienny tym, że stan końcowy osiąga się przy wystąpieniu błędu w komunikacji lub gdy udało się przetworzenie danych.
- 9. Sposób według zastrz. 1, znamienny tym, że wykonuje się tylko zmianę konkretnego elementu (30) przechowującego dane programu użytkowego (10) dla modyfikacji danych przechowywanych na karcie mikroprocesorowej (20) oraz udostępnia się nowy element (30') przechowujący dane programu użytkowego (10), w trakcie którego nie jest konieczna zmiana programu użytkowego (10) jako takiego.
- 10. Sposób według zastrz. 1, znamienny tym, że tworzy się nowy moduł dialogowy (40') karty mikroprocesorowej (20) dla zmiany segmentów programu użytkowego (10) odnoszących się do karty mikroprocesorowej (20).
- 11. Sposób według zastrz. 1, znamienny tym, że wywołuje się przez program użytkowy (10) procedurę agencyjną (250) zarządzającą różnymi elementami (230) przechowującymi dane programu użytkowego (10) i modułami dialogowymi (240) karty mikroprocesorowej (20) dla182 666 wykorzystania wielu elementów (230) przechowujących dane programów użytkowych i/lub wielu modułów dialogowych (240) karty mikroprocesorowej (20) dla pewnej liczby różnych programów użytkowych (210) i typów kart mikroprocesorowych (20).
- 12. Sposób według zastrz. 11, znamienny tym, że realizuje się przez procedurę agencyjną (250) na żądanie dostępność odpowiednich wersji elementów (230) przechowujących dane programów użytkowych (10) i modułów dialogowych (240) karty mikroprocesorowej (20).
- 13. Sposób według zastrz. 11, znamienny tym, że żąda się przez procedurę agencyjną (250) od innej procedury agencyjnej (260) wymaganego oryginału spośród odpowiednich wersji elementów (230) przechowujących dane programów użytkowych (10) i/lub modułów dialogowych (240) karty mikroprocesorowej, lub ich kopii.
- 14. Sposób według zastrz. 11, znamienny tym, ze uzyskuje się przez procedurę agencyjną (250) brakujące segmenty przez skomunikowanie się z innymi zasobami lokalnymi lub zasobami dostępnymi poprzez sieć.
- 15. Sposób według zastrz. 1, znamienny tym, że utworzone polecenie (110) przekazuje się z powrotem do programu użytkowego (10) i przesyła się przez niego jako polecenie (130) programu użytkowego (10) do urządzenia odczytująco-zapisującego (120) dla bezpośredniego odczytu i zapisu danych na karcie mikroprocesorowej (20), przekazuje się z urządzenia odczytująco-zapisującego polecenie (130) lub polecenie (130') programu użytkowego (10) do karty mikroprocesorowej (20) i odbiera się z niej odpowiedź (140), po czym odpowiedź (140), albo wyprowadzoną z niej w podobny sposób odpowiedź (140'), akceptuje się przez program użytkowy (10) i przenosi do modułu dialogowego (40) karty mikroprocesorowej (20) jako dane odpowiedzi (150), oraz interpretuje się przez moduł dialogowy (40) karty mikroprocesorowej (20) dane odpowiedzi (150) i tworzy następnie późniejsze polecenie, przy czym proces powtarza się az do przetworzenia żądania (100).
- 16. Sposób według zastrz. 15, znamienny tym, ze po zakończeniu albo w trakcie całej sekwencji poleceń, przekazuje się przez moduł dialogowy (40) karty mikroprocesorowej (20) rekord danych (160) jako reakcję na żądanie (100) i dane zwrócone przez kartę mikroprocesorową (20) programu użytkowego (10), przy czym rekord danych (160) reprezentuje odpowiedź karty mikroprocesorowej (20), która jest zrozumiała dla programu użytkowego (10) na żądanie (100) programu użytkowego (10), które nie jest zrozumiałe dla karty mikroprocesorowej (20).
- 17. Sposób według zastrz. 1, znamienny tym, że sygnalizuje się w module dialogowym (40) karty mikroprocesorowej (20) potrzebę dokonania potrzebnego zaszyfrowania lub odszyfrowania odpowiednim żądaniem dla programu użytkowego (10) i następnie dostarcza jej potrzebne dane oraz przekazuje się przez program użytkowy (10) żądanie modułu dialogowego (40) karty mikroprocesorowej (20) do specjalizowanego modułu dla zaszyfrowania.
- 18. Sposób według zastrz. 1, znamienny tym, że przekazuje się wskazanie nazwy zastępczej elementu danych i/lub programu oraz żądaną metodę dostępu dla przetworzenia danych i/lub programów na karcie mikroprocesorowej (20) do programu użytkowego (10).
- 19. Sposób według zastrz. 18, znamienny tym, ze jako metody dostępu stosuje się odczyt, zapis, uwierzytelnienie i/lub utworzenie albo usunięcie struktur.
- 20. Sposób według zastrz. 17 albo 18, znamienny tym, ze polecenia specyficzne dla programu użytkowego dla przetworzenia danych i/lub programów na karcie mikroprocesorowej (20) przez program użytkowy (10), które mogą być zrealizowane przez kartę mikroprocesorową (20) i wystąpić jako metoda dostępu, przechowuje się na karcie mikroprocesorowej (20), przy czym mogą one zostać zainicjalizowane specjalnymi poleceniami.
- 21. Sposób według zastrz. 1, znamienny tym, ze na żądanie (100) programu użytkowego (10) z modułu pośredniego (340) umieszczonego w przybliżeniu na poziomie programu użytkowego (10), który zastępuje moduł dialogowy (40) karty mikroprocesorowej (20) w jego komunikacji z programem użytkowym (10), tworzy się rekord danych (350), który zawiera informacje z elementu (30) przechowującego dane programu użytkowego (10), odbiera się przez router (360) rekord danych (350) i wydaje się polecenie modułowi dialogowemu (40) karty mikroprocesorowej (20), który został przesunięty na poziom routera (360), po czym wysyła się przez router (360) polecenie (370) utworzone przez moduł dialogowy (40) do182 666 karty mikroprocesorowej (20) oraz odpowiedź (380) karty mikroprocesorowej (20) na polecenie (370) do modułu dialogowego (40), zwraca się przez router (360) wynik (390) żądania (100), po skomunikowaniu się modułu dialogowego (40) z kartą mikroprocesorową (20) do modułu pośredniego (340) oraz udziela się przez moduł pośredni (340) odpowiedzi (160) programowi użytkowemu (10).
- 22. Sposób według zastrz. 1, znamienny tym, że cechy elementu (30) przechowującego dane programu użytkowego (10) określa się ręcznie przy wykorzystaniu wszystkich informacji dla wszystkich danych znajdujących się na karcie mikroprocesorowej (20) i ich charakterystyk, zaś dane na karcie mikroprocesorowej (20), które są dostępne dla programu użytkowego (10), dostarcza się wraz z nazwami zastępczymi.
- 23. Sposób według zastrz. 1, znamienny tym, ze modyfikację elementu (30) przechowującego dane programu użytkowego (10) dokonuje się bezpośrednio przez moduł dialogowy (40) karty mikroprocesorowej (20) albo procedurę agencyjną (250).
- 24. Sposób według zastrz. 1, znamienny tym, że element (30) przechowujący dane programu użytkowego (10), który znajduje się na karcie mikroprocesorowej (20), kopiuje się, przechowuje i udostępnia modułowi dialogowemu (40) karty mikroprocesorowej (20) albo procedurze agencyjnej (250).
- 25. Sposób według zastrz. 1, znamienny tym, że dane specyficzne dla programu użytkowego (10) obejmują informacje dotyczące typu, położenia, wielkości i metod dostępu dla danych przechowywanych na karcie mikroprocesorowej (20), jak również samych danych przechowywanych na karcie mikroprocesorowej (20).
- 26. Sposób według zastrz. 1, znamienny tym, że dane specyficzne dla karty mikroprocesorowej (20) obejmują informacje dotyczące poleceń i protokołu karty mikroprocesorowej (20) do uzyskiwania dostępu do przechowywanych na niej danych.
- 27. Sposób według zastrz. 1, znamienny tym, że informacje specyficzne dla karty mikroprocesorowej (20) rozmieszcza się w postaci tablicowej i/lub hierarchicznej.
- 28. Sposób według zastrz. 1, znamienny tym, że element (30) przechowujący dane programu użytkowego (10) znajduje się na karcie mikroprocesorowej (20).
- 29. Urządzenie do komunikacji programu użytkowego z kartą mikroprocesorową, znamienne tym, że zawiera co najmniej jeden element (30) przechowujący dane programu użytkowego, dostosowany do zapisywania informacji odnoszących się do specyficznych danych programu użytkowego (10) oraz co najmniej jeden moduł dialogowy (40) karty mikroprocesorowej (20) generujący, przy wykorzystaniu elementu (30) przechowującego dane programu użytkowego (10), polecenia dla interfejsu z kartą mikroprocesorową (20), przy czym moduł dialogowy (40) karty mikroprocesorowej (20) zawiera specyficzne dane odnoszące się do karty mikroprocesorowej (20).
- 30. Urządzenie według zastrz. 29, znamienne tym, że element (30) przechowujący dane programu użytkowego (10) zawiera nazwy zastępcze do określenia specyficznych danych programu użytkowego (10).
- 31. Urządzenie według zastrz. 29 albo 30, znamienne tym, że tylko moduł dialogowy (40) karty mikroprocesorowej ma dostęp do elementu (30) przechowującego dane programu użytkowego (10).
- 32. Urządzenie według zastrz. 29, znamienne tym, że zawiera urządzenie przydzielające do przydzielania elementu (30) przechowującego dane programu użytkowego (10) modułowi dialogowemu (40) karty mikroprocesorowej (20).
- 33. Urządzenie według zastrz. 29, znamienne tym, że informacja dla jednego lub więcej programów użytkowych (10) jest zawarta w elemencie (30) przechowującym dane programu użytkowego (10).
- 34. Urządzenie według zastrz. 29, znamienne tym, ze moduł dialogowy (40) karty mikroprocesorowej (20) jest modułem pracującym synchronicznie i asynchronicznie.
- 35. Urządzenie według zastrz. 29, znamienne tym, ze moduł dialogowy (40) karty mikroprocesorowej (20) jest automatem skończonym zaznaczającym swój stan wewnętrzny na podstawie danych wejściowych i stanu bieżącego przechodzącym do innego stanu.182 666
- 36. Urządzenie według zastrz. 29, znamienne tym, że posiada co najmniej jedną procedurę agencyjną (250, 260) odpowiedzialną za zarządzanie każdym typem modułu dialogowego (240, 240') karty mikroprocesorowej (20) i elementu (230, 230') przechowującego dane programu użytkowego (10) i wykorzystywaną przez program użytkowy (10) do wyznaczania odpowiedniej kombinacji modułu dialogowego (40) karty mikroprocesorowej (20) i elementu (30) przechowującego dane programu użytkowego (10) dla każdego typu karty mikroprocesorowej (20).
- 37. Urządzenie według zastrz. 36, znamienne tym, że co najmniej jedna agencja (250) jest połączona z inną agencją (260) poprzez sieć lub inną trasę komunikacyjną.
- 38. Urządzenie według zastrz. 29, znamienne tym, że zawiera umieszczony w przybliżeniu na poziomie programu użytkowego (10) moduł pośredni (340) zastępujący moduł dialogowy (40) karty mikroprocesorowej (20) w jego komunikacji z programem użytkowym (10) i tworzący rekord danych (350), przy czym rekord danych (350) zawiera informacje z elementu (30) przechowującego dane programu użytkowego (10) w odpowiedzi na żądanie (100) od programu użytkowego (10), oraz router (360) odbierający rekord danych (350) i wydający polecenia modułowi dialogowemu (40) karty mikroprocesorowej (20), który został przesunięty na poziom routera (360), przy czym router (360) wysyła polecenie (370) utworzone przez moduł dialogowy (40) do karty mikroprocesorowej (20), oraz odpowiedź (380) karty mikroprocesorowej (20) na polecenie (370) do modułu dialogowego (40), router (360) zwraca wynik (390) żądania (100) po skomunikowaniu się modułu dialogowego (40) karty z kartą mikroprocesorową (20) do modułu pośredniego (340) i moduł pośredni (3^θ) udziela odpowiedzi (160) programowi użytkowemu (10).
- 39. Urządzenie według zastrz. 29, znamienne tym, że karta mikroprocesorowa (20) jest kartą pamięci z własnym procesorem albo bez niego.
- 40. Urządzenie według zastrz. 29, znamienne tym, ze informacje specyficzne dla karty mikroprocesorowej (20) zawierają kompletne struktury podstawowe karty mikroprocesorowej (20) lub jej części.* * *
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE19522527A DE19522527A1 (de) | 1995-06-23 | 1995-06-23 | Verfahren zur Vereinfachung der Kommunikation mit Chipkarten |
| PCT/EP1996/002483 WO1997001147A2 (de) | 1995-06-23 | 1996-06-07 | Verfahren zur vereinfachung der kommunikation mit chipkarten |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| PL318655A1 PL318655A1 (en) | 1997-07-07 |
| PL182666B1 true PL182666B1 (pl) | 2002-02-28 |
Family
ID=7764886
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PL96318655A PL182666B1 (pl) | 1995-06-23 | 1996-06-07 | Sposób i urządzenie do komunikacji programu użytkowego z kartą mikroprocesorową |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US6279047B1 (pl) |
| JP (1) | JPH09510812A (pl) |
| KR (1) | KR100308596B1 (pl) |
| DE (1) | DE19522527A1 (pl) |
| HU (1) | HUP9800977A3 (pl) |
| PL (1) | PL182666B1 (pl) |
| WO (1) | WO1997001147A2 (pl) |
Families Citing this family (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19728011C2 (de) * | 1997-07-01 | 2003-03-27 | Ibm | Integriertes Zahlungsmodul für ein Terminal |
| DE19742459C2 (de) * | 1997-09-26 | 2000-02-03 | Orga Kartensysteme Gmbh | Einrichtung für den Betrieb einer Chipkarte und den Datenaustausch zwischen einer Chipkarte und einem mikroprozessorgestützten System |
| DE19757863A1 (de) * | 1997-12-24 | 1999-07-08 | Peter Grohse | Sende- und Empfangseinheit zum Bezahlen von Autobahngebühren |
| DE19827415A1 (de) * | 1998-06-19 | 1999-12-23 | Ibm | Entwicklungswerkzeug für Chipkartenanwendungen |
| JP3553387B2 (ja) * | 1998-09-11 | 2004-08-11 | オムロン株式会社 | 相互認証システム |
| DE19845582A1 (de) * | 1998-10-02 | 2000-04-06 | Ibm | Vereinfachtes Benutzen einer Chipkarte |
| EP1006442A3 (en) * | 1998-11-30 | 2003-09-03 | International Business Machines Corporation | Method and system for programming applications for use with devices having a reduced support of high-level programming concepts |
| US7231411B1 (en) | 1999-09-15 | 2007-06-12 | Koninklijke Philips Electronics N.V. | Removable card system with downloadable agent for communicating with a digital television receiver or other host device |
| DE10008308A1 (de) * | 2000-02-23 | 2001-08-30 | Orga Kartensysteme Gmbh | Kartenterminal |
| JP2002032503A (ja) * | 2000-07-19 | 2002-01-31 | Hitachi Ltd | 証明書提供方法および証明書提供サービスシステム |
| US20020077182A1 (en) * | 2000-12-18 | 2002-06-20 | Arthur Swanberg | Interactive computer games |
| US7340748B2 (en) * | 2000-12-21 | 2008-03-04 | Gemplus | Automatic client proxy configuration for portable services |
| GB0106082D0 (en) | 2001-03-13 | 2001-05-02 | Mat & Separations Tech Int Ltd | Method and equipment for removing volatile compounds from air |
| WO2002076043A1 (en) * | 2001-03-19 | 2002-09-26 | Sony Corporation | Network system |
| US7363486B2 (en) | 2001-04-30 | 2008-04-22 | Activcard | Method and system for authentication through a communications pipe |
| TW552786B (en) * | 2001-04-30 | 2003-09-11 | Activcard | Method and system for remote activation and management of personal security devices |
| US7225465B2 (en) | 2001-04-30 | 2007-05-29 | Matsushita Electric Industrial Co., Ltd. | Method and system for remote management of personal security devices |
| WO2002089444A1 (en) | 2001-04-30 | 2002-11-07 | Activcard Ireland, Limited | Method and system for authenticating a personal security device vis-a-vis at least one remote computer system |
| US20020162021A1 (en) * | 2001-04-30 | 2002-10-31 | Audebert Yves Louis Gabriel | Method and system for establishing a remote connection to a personal security device |
| US6896183B2 (en) * | 2001-08-03 | 2005-05-24 | Dai Nippon Printing Co., Ltd. | Multi-application IC card |
| US7162631B2 (en) | 2001-11-02 | 2007-01-09 | Activcard | Method and system for scripting commands and data for use by a personal security device |
| FR2833727B1 (fr) * | 2001-12-17 | 2004-02-27 | Gemplus Card Int | Procede de mise en oeuvre d'une application au moyen d'un lecteur de carte a puce et systeme correspondant |
| US20030167399A1 (en) * | 2002-03-01 | 2003-09-04 | Yves Audebert | Method and system for performing post issuance configuration and data changes to a personal security device using a communications pipe |
| US8010405B1 (en) | 2002-07-26 | 2011-08-30 | Visa Usa Inc. | Multi-application smart card device software solution for smart cardholder reward selection and redemption |
| US8626577B2 (en) | 2002-09-13 | 2014-01-07 | Visa U.S.A | Network centric loyalty system |
| US7121456B2 (en) | 2002-09-13 | 2006-10-17 | Visa U.S.A. Inc. | Method and system for managing token image replacement |
| US8015060B2 (en) | 2002-09-13 | 2011-09-06 | Visa Usa, Inc. | Method and system for managing limited use coupon and coupon prioritization |
| US9852437B2 (en) | 2002-09-13 | 2017-12-26 | Visa U.S.A. Inc. | Opt-in/opt-out in loyalty system |
| US6920611B1 (en) | 2002-11-25 | 2005-07-19 | Visa U.S.A., Inc. | Method and system for implementing a loyalty merchant component |
| US7827077B2 (en) | 2003-05-02 | 2010-11-02 | Visa U.S.A. Inc. | Method and apparatus for management of electronic receipts on portable devices |
| DE10324996A1 (de) | 2003-06-03 | 2005-02-17 | Giesecke & Devrient Gmbh | Chipkarte mit wenigstens einer Applikation |
| DE10337257A1 (de) * | 2003-08-13 | 2005-04-14 | Giesecke & Devrient Gmbh | Verfahren zum Betreiben einer Chipkarte, auf der mehrere Applikationen implementiert sind |
| US8554610B1 (en) | 2003-08-29 | 2013-10-08 | Visa U.S.A. Inc. | Method and system for providing reward status |
| US7104446B2 (en) | 2003-09-03 | 2006-09-12 | Visa U.S.A., Inc. | Method, system and portable consumer device using wildcard values |
| US7051923B2 (en) | 2003-09-12 | 2006-05-30 | Visa U.S.A., Inc. | Method and system for providing interactive cardholder rewards image replacement |
| US8407083B2 (en) | 2003-09-30 | 2013-03-26 | Visa U.S.A., Inc. | Method and system for managing reward reversal after posting |
| US8005763B2 (en) | 2003-09-30 | 2011-08-23 | Visa U.S.A. Inc. | Method and system for providing a distributed adaptive rules based dynamic pricing system |
| EP1523205B1 (en) | 2003-10-10 | 2014-04-16 | Option | Method and system for accessing a smart card stored in a telecommunications card from a host device to which said telecommunications card is connected |
| US7137565B2 (en) * | 2003-10-10 | 2006-11-21 | Option | Method and algorithm for accessing a smart card stored in a telecommunications card from a host device to which said telecommunications is connected |
| JP4391375B2 (ja) * | 2004-09-30 | 2009-12-24 | フェリカネットワークス株式会社 | 情報管理装置および方法、並びにプログラム |
| US7992781B2 (en) | 2009-12-16 | 2011-08-09 | Visa International Service Association | Merchant alerts incorporating receipt data |
| US8429048B2 (en) | 2009-12-28 | 2013-04-23 | Visa International Service Association | System and method for processing payment transaction receipts |
| FR2997205B1 (fr) * | 2012-10-23 | 2014-10-31 | Morpho | Procede de gestion d'identifiants dans une carte a circuit integre et carte a circuit integre correspondante |
| JP7240300B2 (ja) | 2019-10-25 | 2023-03-15 | Towa株式会社 | 粉粒体供給装置、樹脂成形装置、及び樹脂成形品の製造方法 |
| CN113055468B (zh) * | 2021-03-11 | 2023-04-07 | 新华三半导体技术有限公司 | 一种芯片管控方法、装置及系统 |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4870704A (en) * | 1984-10-31 | 1989-09-26 | Flexible Computer Corporation | Multicomputer digital processing system |
| JPS61177585A (ja) * | 1985-02-04 | 1986-08-09 | Toshiba Corp | 携帯用電子装置密封体 |
| US4874935A (en) * | 1986-03-10 | 1989-10-17 | Data Card Coprporation | Smart card apparatus and method of programming same |
| US4816654A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Improved security system for a portable data carrier |
| FR2638868B1 (fr) * | 1988-11-09 | 1990-12-21 | Bull Cp8 | Systeme de telechargement securise d'un terminal et procede mis en oeuvr |
| FR2657445B1 (fr) * | 1990-01-25 | 1992-04-10 | Gemplus Card Int | Procede de chargement de programmes d'application dans un lecteur de carte a memoire a microprocesseur et systeme destine a sa mise en óoeuvre. |
| FR2667171B1 (fr) * | 1990-09-25 | 1994-08-26 | Gemplus Card Int | Support portable a micro-circuit facilement programmable et procede de programmation de ce micro-circuit. |
| US5276312A (en) * | 1990-12-10 | 1994-01-04 | Gtech Corporation | Wagering system using smartcards for transfer of agent terminal data |
| FR2683342B1 (fr) * | 1991-10-31 | 1994-01-07 | Gemplus Card International | Circuit d'interface pour carte a circuit integre. |
| EP0581421B1 (en) * | 1992-07-20 | 2003-01-15 | Compaq Computer Corporation | Method and system for certificate based alias detection |
| DE19508940B4 (de) * | 1994-03-15 | 2006-03-09 | Mitel Knowledge Corp., Kanata | Verfahren zum Betrieb eines computergesteuerten Kommunikationssystems |
| US5517646A (en) * | 1994-04-25 | 1996-05-14 | Compaq Computer Corp. | Expansion device configuration system having two configuration modes which uses automatic expansion configuration sequence during first mode and configures the device individually during second mode |
| FR2719680B1 (fr) * | 1994-05-05 | 1996-07-12 | Gemplus Card Int | Procédé de sécurisation des accès aux cartes amovibles pour ordinateur. |
| US5624316A (en) * | 1994-06-06 | 1997-04-29 | Catapult Entertainment Inc. | Video game enhancer with intergral modem and smart card interface |
| US5983288A (en) * | 1996-08-20 | 1999-11-09 | Lucent Technologies Inc. | Dynamically configurable personal computer card utilizing variable interrogation signal to detect connected extension |
-
1995
- 1995-06-23 DE DE19522527A patent/DE19522527A1/de not_active Withdrawn
-
1996
- 1996-06-07 JP JP9503547A patent/JPH09510812A/ja active Pending
- 1996-06-07 PL PL96318655A patent/PL182666B1/pl not_active IP Right Cessation
- 1996-06-07 HU HU9800977A patent/HUP9800977A3/hu unknown
- 1996-06-07 KR KR1019970701152A patent/KR100308596B1/ko not_active Expired - Fee Related
- 1996-06-07 WO PCT/EP1996/002483 patent/WO1997001147A2/de not_active Ceased
- 1996-06-07 US US08/793,911 patent/US6279047B1/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| WO1997001147A2 (de) | 1997-01-09 |
| JPH09510812A (ja) | 1997-10-28 |
| PL318655A1 (en) | 1997-07-07 |
| US6279047B1 (en) | 2001-08-21 |
| KR100308596B1 (ko) | 2001-10-19 |
| DE19522527A1 (de) | 1997-01-02 |
| WO1997001147A3 (de) | 1997-02-06 |
| KR970705801A (ko) | 1997-10-09 |
| HUP9800977A3 (en) | 1998-10-28 |
| HUP9800977A2 (hu) | 1998-08-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| PL182666B1 (pl) | Sposób i urządzenie do komunikacji programu użytkowego z kartą mikroprocesorową | |
| AU736325B2 (en) | Multi-application IC card system | |
| EP0976114B1 (en) | Secure multiple application card system and process | |
| CN100590590C (zh) | 包括便携式数据处理单元的数据交换系统 | |
| EP0981807B1 (en) | Integrated circuit card with application history list | |
| AU681754B2 (en) | Data exchange system comprising portable data processing units | |
| JP4129063B2 (ja) | シェル特徴を有するicカード | |
| US7850066B2 (en) | Smartcard system | |
| EP0982692A2 (en) | Expanded smart card communication architecture and procedure for communicating between smart card application and data carrier | |
| US6357665B1 (en) | Configuration of IC card | |
| WO1999040548A1 (en) | Configuration of ic card | |
| TW451163B (en) | Simplified use of smart cards | |
| US6766961B2 (en) | IC card | |
| WO1999040549A1 (en) | System and method for controlling access to computer code in an ic card | |
| GB2350703A (en) | Smart devices | |
| EP1384197B1 (en) | Method of manufacturing smart cards | |
| US20030136829A1 (en) | IC card terminal | |
| KR100617904B1 (ko) | 스마트카드에 복수의 카드식별정보를 설치 및 관리할 수있는 스마트카드 관리시스템 및 그 방법 | |
| HK1022364B (en) | Secure multiple application card system and process | |
| HK1022364A1 (en) | Secure multiple application card system and process | |
| HK1024768B (en) | Integrated circuit card with application history list | |
| KR20040089777A (ko) | 스마트 카드를 이용한 출력정보 제공 방법 및 시스템 | |
| KR20100103746A (ko) | 데이터 구조 변경 기능을 구비한 아이씨 카드와 이를 이용한 결제 방법 및 시스템과 기록매체 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Decisions on the lapse of the protection rights |
Effective date: 20060607 |