Sigurnosni mehanizmi za rad sa pametnim karticama
SVEU
Č
ILIŠTE U ZAGREBU
FAKULTET ELEKTROTEHNIKE I RA
Č
UNARSTVA
DIPLOMSKI RAD br. 1445
SIGURNOSNI MEHANIZMI ZA RAD S
PAMETNIM KARTICAMA
Aleksander Radovan
Zagreb, rujan 2004.
2

4
6.4.1.2. Dekripcija ..................................................................................................................................... 42
6.4.1.3. Digitalno potpisivanje .................................................................................................................. 42
6.4.1.4. Verificikacija digitalnog potpisa .................................................................................................. 42
6.4.1.5. Jednostavan primjer RSA enkripcije............................................................................................ 43
6.4.1.6. Složeniji primjer RSA enkripcije ................................................................................................ 43
6.4.1.7. Stvarni primjer.............................................................................................................................. 44
6.4.1.8. Duljine klju
č
eva i njihov životni ciklus ....................................................................................... 45
6.5. D
IGITALNI CERTIFIKATI
................................................................................................................46
7. PRAKTI
Č
NI RAD – DEMONSTRACIJA SIGURNOSNIH MEHANIZAMA KORISTE
Ć
I
PAMETNE KARTICE..........................................................................................................................48
7.1. P
ERSONALIZACIJA KARTICE
..........................................................................................................49
7.2. R
AD APLIKACIJE
............................................................................................................................50
7.2.1. Unošenje PIN-a ....................................................................................................................50
7.2.2. Popunjavanje elektroni
č
ke uplatnice...................................................................................51
7.2.3. Provo
đ
enje transakcija ........................................................................................................52
7.3. I
ZVORNI TEKSTOVI PROGRAMA
.....................................................................................................53
7.4. Z
AKLJU
Č
AK O PRAKTI
Č
NOM RADU
...............................................................................................53
8. ZAKLJU
Č
AK.....................................................................................................................................55
PRILOG 1 – NAJVAŽNIJI DIJELOVI PROGRAMSKOG KODA ..............................................56
P.1.1. P
ROVJERA UNESENOG
PIN-
A
.....................................................................................................56
P.1.2. D
OHVA
Ć
ANJE CERTIFIKATA S KARTICE
.....................................................................................58
P.1.3. D
IGITALNO POTPISIVANJE NALOGA ZA ELEKTRONI
Č
KO PLA
Ć
ANJE
...........................................60
P.1.4. P
ROVJERA DIGITALNOG POTPISA
...............................................................................................61
DODATAK A .........................................................................................................................................62
A.1. P
OPIS SVIH PAROVA VRIJEDNOSTI
C
N
D
N
......................................................................................62
A.2. P
OPIS SVIH KLJU
Č
EVA DOBIVENIH PERMUTACIJOM PAROVA
C
N
D
N
.............................................63
A.3. P
OPIS SVIH
S-
KUTIJA
....................................................................................................................64
A.3.1. S
1
kutija.................................................................................................................................64
A.3.2. S
2
kutija.................................................................................................................................64
A.3.3. S
3
kutija.................................................................................................................................64
A.3.4. S
4
kutija.................................................................................................................................64
A.3.5. S
5
kutija.................................................................................................................................64
A.3.6. S
6
kutija.................................................................................................................................64
A.3.7. S
7
kutija.................................................................................................................................65
A.3.8. S
8
kutija.................................................................................................................................65
A.4. P
OPIS SVIH KORAKA U PETLJI
(
T
= 0
DO
79)
U
SHA-1
ALGORITMU
............................................65
LITERATURA .......................................................................................................................................69
5
1. Uvod
Pametna kartica (engl. smart card) je plasti
č
na kartica koja u sebi ima ugra
đ
en
integrirani sklop (engl. integrated circuit chip), a dimenzije su joj iste kao i kod
kreditnih kartica. Glavne funkcije kartice su autentifikacija, pohranjivanje podataka,
vrednovanje (engl. validation), te mehanizam samozaklju
č
avanja. Otporna je na
vanjske napade i ne ovisi o potencijalno ranjivim vanjskim resursima. Baš zbog tih
svojstava se pametne kartice
č
esto koriste u razli
č
itim aplikacijama koje zahtijevaju
visoku razinu sigurnosne zaštite i autentifikacije. Na primjer, pametne kartice mogu
služiti za identifikaciju vlasnika kartice, kao zdravstvena kartica, ili kao
kreditna/debitna bankovna kartica koja omogu
ć
ava financijske transakcije. Sve te
aplikacije koriste osjetljive podatke spremljene na kartici kao što su biometrijski
podaci o vlasniku, medicinski podaci, kriptografski klju
č
evi za autentifikaciju itd.
Uskoro
ć
e uobi
č
ajene kartice s magnetskom trakom biti potpuno zamijenjene i
integrirane unutar jedne multiaplikacijske pametne kartice koja se u industriji
pametnih kartica naziva još i ''elektroni
č
ki nov
č
anik''. Neprestanim unaprije
đ
ivanjem
sigurnosnih svojstava pametna kartica postaje vrlo pouzdan medij za pohranjivanje
najosjetljivijih podataka
č
ime se smanjuje broj argumenata za sumnju u njezinu
isplativnost.
Sigurnost pametnih kartica se razmatra iz tri razli
č
ita aspekta. U prvom se opisuje
fizi
č
ka struktura kartice i na
č
in na koji je provedena zaštita tijekom životnog ciklusa
pametne kartice. Drugi opisuje na
č
in na koji je provedena zaštita podataka logi
č
kim
kontrolama nad datotekama koje se nalaze na kartici. Tre
ć
i aspekt opisuje kako
kartica pruža sigurnosno i autentifikacijsko okruženje za aplikacije pomo
ć
u
proceduralnih operacija i mehanizama. Nakon toga se u radu opisuju neke tehnike
narušavanja sigurnosti i napada na pametne kartice.
Postojanje niza na
č
ina ugrožavanja sigurnosti pametnih kartica ne zna
č
i da pametna
kartica nije sigurna. Napadi da sigurnosne sustave bilo koje vrste nisu novost. Nigdje
ne postoji 100%-tna sigurnost, pa tako ni kod pametnih kartica. Glavna odluka o
tome da li je sustav siguran ili ne, ovisi o ispunjavanju sigurnosnih zahtjeva sustava.
Nadalje, ve
ć
ina napada na pametne kartice se mogu klasificirati u tri klase, što zna
č
i
da je cijena probijanja sustava puno ve
ć
a nego njegova vrijednost, ili je potreban vrlo
dugi vremenski period da bi se probili kriptografski algoritmi. No, kako tehnologija
vrlo brzo napreduje, proizvo
đ
a
č
i su primorani stalno ažurirati sigurnosna svojstva
svojih produkata.
Postoji nekoliko vrsta pametnih kartica, od obi
č
nih memorijskih kartica koje nemaju
svojstvo procesiranja podataka, do kartica s procesorom i kriptografskim procesorom
koje proširuju podru
č
je upotrebe kartice, ali i razinu sigurnosti. Najnovija vrsta
kartica su beskontaktne kartice koje, osim izbjegavanja problema s kontaktima na
prihvatnim ure
đ
ajima, donose i niz prednosti kojima postižu ve
ć
u popularnost kod
krajnjih korisnika.
Sigurnosni mehanizmi su osnovna sredstva kojima se postiže vrlo visoka razina
sigurnosti kod pametnih kartica. Oni se temelje na vrlo kompleksnim matemati
č
kim
prora
č
unima koje vrlo teško mogu izra
č
unavati obi
č
na ra
č
unala bez specijaliziranog
sklopovlja. U mehanizme se ubrajaju algoritmi kriptiranja, funkcije sažimanja, te
algoritmi za ramjenu klju
č
eva.

7
2. Fizi
č
ka struktura i životni ciklus kartice
2.1. Fizi
č
ka struktura pametne kartice
Fizi
č
ka struktura pametne kartice je specificirana standardom ISO (engl.
International Standards Organization) 7810, 7816/1 i 7816/2. Struktura se sastoji od
tri osnovna dijela: plasti
č
ne kartice (dimenzija 85,80 mm x 53,98 mm x 0.80 mm),
sklopa s integriranim vezama zajedno s tiskanim vezama (engl. printed circuits) koji
su ugra
đ
eni na kartici. Slika 2.1. opisuje fizi
č
ku strukturu kartice.
Slika 2.1: Fizi
č
ka struktura pametne kartice
Tiskane veze su u skladu s ISO 7816/3 standardom i imaju pet komunikacijskih
to
č
aka za napajanje i podatke. Veze su hermeti
č
ki fiksirane u udubini kartice i
povezane s integriranim sklopom, popunjene vodljivim materijalom, te zatvorene uz
izbo
č
ene kontakte. Tiskane veze štite sklop s integriranim vezama od mehani
č
kih
naprezanja i stati
č
kog elektriciteta. Komunikacija sa sklopom se ostvaruje preko
kontakata koji prekrivaju tiskane veze.
Mogu
ć
nosti pametne kartice su odre
đ
ene integriranim sklopom. Obi
č
no se vezni
sklop sastoji od mikroprocesora, memorije za
č
itanje (engl. Read Only Memory -
ROM), nestati
č
ke memorije sa slu
č
ajnim pristupom (engl. Random Access Memory -
RAM) i elektri
č
ki izbrisive programirljive memorije za
č
itanje (engl. Electrically
Erasable Programmable ROM - EEPROM) koja zadržava podatke i nakon prestanka
napajanja. Integrirani sklopovi su izgra
đ
eni od silikona koji nije mehani
č
ki
fleksibilan zbog
č
ega se lako lomi, pa se izra
đ
uje u veli
č
ini svega nekoliko
milimetara.
Fizi
č
ko su
č
elje koje omogu
ć
uje izmjenu podataka izme
đ
u integriranog sklopa i
prihvatnog ure
đ
aja za karticu (engl. Card Acceptance Device – CAD) je ograni
č
eno
na brzinu komuniciranja od 9600 bita po sekundi. Komunikacijska linija je
bidirekciona serijska linija koja je u skladu sa standardom ISO 7816/3. Sve podatke
koji se razmjenjuju kontrolira centralna procesna jedinica koja se nalazi unutar
integriranog sklopa. Naredbe i podaci se šalju prema sklopu, a on odgovara statusnim
rije
č
ima (engl. status words) i izlaznim podacima koji se stvaraju na temelju tih
Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.
Slični dokumenti