Zajrzeć do chipa

Kartę chipową (Smart Card) widzieli już chyba wszyscy. W prawie każdym domu znajdziemy kawałek plastiku o wymiarach karty płatniczej, “ozdobiony” charakterystycznymi złotymi stykami elektrycznymi. Skąd się u nas wziął? Pewnie kupiliśmy kartę do automatów telefonicznych albo kodową do odbiornika telewizji satelitarnej, w pracy wręczono nam plastikowy klucz-identyfikator albo dorzucono taki gadżet do zakupów wykonanych w jakimś sklepie czy firmie stosującej system rabatowy.

Jak widać, wcale nie trzeba się specjalnie starać, aby zostać właścicielem kart chipowych. W niniejszym artykule opiszemy, jak wykorzystać je w charakterze klucza blokującego osobom niepowołanym dostęp do peceta albo do zgromadzonych na dysku danych. Będziemy musieli tylko zbudować odpowiedni czytnik, podłączyć go do komputera i skorzystać z gotowego oprogramowania potrafiącego sprawdzać informacje zapisane w chipie karty.

Na początku zastanowimy się nad prostym z pozoru zagadnieniem: czy wszystkie układy chipowe są takie same? Pod względem budowy mechanicznej w zasadzie tak. Rozróżnić wypada jednak karty pełnowymiarowe (wielkości karty kredytowej) i miniaturowe, znane chyba najlepiej jako moduły SIM telefonów GSM. Przyglądając się obu formatom kart, zauważymy zgodność układu styków. Każdy, kto miał okazję rozpakowywać nowy pakiet zakupiony w salonie GSM i własnoręcznie wyłamywać małą kartę z większej płytki plastiku, zauważył z pewnością, że operacja ta nie była niczym innym, jak zamianą “dużej” karty (pasującej do standardowych czytników) w małą, odpowiednią dla złącza współczesnych telefonów. Nawiasem mówiąc, swego czasu istniały telefony wymagające kart pełnego rozmiaru. Dowodzi to niezbicie, iż cała elektronika karty (chip) umieszczona jest bezpośrednio pod stykami, a reszta to tylko plastikowa oprawa.

W różnorodności siła

Skoro już o chipie mowa, warto zwrócić uwagę na to, że zarówno jego budowa, jak i zasada działania mogą się bardzo różnić w zależności od typu karty. Najprostsze są karty pamięciowe, zawierające jedynie układy EEPROM o różnej pojemności, czasem zabezpieczone przed zmianą zawartości kodem PIN. Stosowane są one w systemach identyfikacji, kontroli dostępu i wszędzie tam, gdzie wymagane jest, aby użytkownik “przenosił” ze sobą pewną ilość danych. Tego rodzaju układy dysponować mogą największym rozmiarem pamięci.

Bardziej zaawansowane układy są wyposażone w procesor. W maleńkim chipie znajduje się cały mikrokontroler, czyli w gruncie rzeczy komputer z procesorem i trzema pamięciami: ROM (zawierającą system operacyjny karty), RAM (do przechowywania przetwarzanych danych) oraz EEPROM (służącą jako pamięć masowa dla danych użytkownika). Zastosowanie takich kart może być bardzo szerokie. Zadanie, jakie wykonywać będzie karta, zależy głównie od zaimplementowanego w jej ROM-ie oprogramowania wewnętrznego. Daje to producentom i programistom duże pole do popisu. Trudno jest jednak zbudować systemy współpracujące z kartami procesorowymi. Wynika to z faktu, że różne “zapakowane w plastik” procesory mają niezgodne ze sobą listy rozkazów. Dlatego do budowy czytnika konieczna jest współpraca z producentem kart lub choćby dostęp do ich dokumentacji.

Specyficznym rodzajem kart procesorowych są układy kryptograficzne. Zawierają one zwykle specjalny procesor szyfrujący, a ich oprogramowanie przystosowane jest do przechowywania i udostępniania innym aplikacjom kluczy szyfrujących, do pracy w systemach podpisu elektronicznego, zdalnego identyfikowania użytkowników, zabezpieczania logowania do systemów komputerowych itd.

Więcej:bezcatnews