next up previous contents
Next: Karta Schlumberger Cyberflex Access Up: Łączność kart procesorowych ze Previous: Protokół T=1   Spis tresci


Protokoły warstwy aplikacji

Przyjrzyjmy się teraz bliżej protokołom warstwy aplikacji. Opisaliśmy już krótko dwa protokoły warstwy aplikacji zdefiniowane w normie ISO/IEC 7816-4 [27]. Protokołów warstwy aplikacji korzystających z komunikacyjnej warstwy łącza może istnieć oczywiście dowolnie dużo. Zobaczmy więc, jaką strukturę mają dane przesyłane pomiędzy aplikacją działającą na karcie a aplikacjami po stronie czytnika.

Wyróżniamy dwie różne struktury danych (struktury APDU) przesyłane w protokołach warstwy aplikacji. Pierwsza z nich to polecenie APDU wysłane przez czytnik do karty. Druga to odpowiedź APDU wysyłana przez kartę do czytnika.

Rysunek 2.4: Struktura polecenia APDU
\begin{figure}\centering %%
\input{rozdzial_2/rysunki/rys5.eepic}
\end{figure}

Polecenie APDU składa się z nagłówka i treści. Na rysunku 2.4 zaprezentowano strukturę polecenia APDU.

W nagłówku polecenia APDU mieszczą się cztery pola:

CLA
określa klasę instrukcji, do której należy polecenie,

INS
określa instrukcję, jaką należy wykonać na karcie po otrzymaniu polecenia,

P1, P2
zawierają parametry dla instrukcji wywoływanej na karcie.

Zauważmy, że pola nagłówka polecenia APDU pokrywają się z polami nagłówka polecenia TPDU w protokole T=0.

Treść polecenia APDU może mieć różną długość i strukturę. Zależy ona od tego, czy wraz z nią aplikacja działająca po stronie czytnika przekazuje do karty dodatkowe dane oraz czy w odpowiedzi oczekuje od karty pewnych danych. Treść polecenia APDU może składać się maksymalnie z 3 części. Pole Lc zawiera długość danych transmitowanych do karty przez aplikację działającą po stronie czytnika. Pole z danymi przechowuje dane przeznaczone dla karty. Pole Le określa, ilu danych oczekuje czytnik w odpowiedzi na polecenie.

W zależności od tego jak wygląda treść polecenia APDU, wyróżnia się cztery jej postacie.

Przypadek 1
Żadne dane nie są przekazywane na kartę ani z karty, więc polecenie APDU zawiera jedynie nagłówek.

Przypadek 2
Dane są przekazywane jedynie z karty do aplikacji działającej po stronie czytnika, treść polecenia APDU zawiera więc tylko pole Le.

Przypadek 3
Dane są przekazywane tylko przez czytnik do aplikacji działającej na karcie, treść polecenia APDU zawiera pole Lc i pole z danymi dla karty.

Przypadek 4
Dane są przekazywane zarówno z karty, jak i na kartę, treść polecenia zawiera więc wszystkie trzy pola.

Rysunek 2.5: Struktura odpowiedzi APDU
\begin{figure}\centering %%
\input{rozdzial_2/rysunki/rys6.eepic}
\end{figure}

Struktura odpowiedzi APDU jest dużo prostsza niż polecenie APDU i zaprezentowano ją na rysunku 2.5. Odpowiedź składa się co najwyżej z dwóch elementów:


next up previous contents
Next: Karta Schlumberger Cyberflex Access Up: Łączność kart procesorowych ze Previous: Protokół T=1   Spis tresci
Janina Mincer-Daszkiewicz 2001-11-21