You are on page 1of 75

UNIVERZA V MARIBORU

FAKULTETA ZA ELEKTROTEHNIKO,
RAČUNALNIŠTVO IN INFORMATIKO

Dejan Paler

VSEPRISOTNE INFORMACIJSKE REŠITVE IN


TEHNOLOGIJA RFID

Diplomska naloga

Maribor, november 2006


I

FAKULTETA ZA ELEKTROTEHNIKO,
RAČUNALNIŠTVO IN INFORMATIKO
UNIVERZA V MARIBORU 2000 Maribor, Smetanova ul. 17

Diplomska naloga univerzitetnega študijskega programa

VSEPRISOTNE INFORMACIJSKE REŠITVE IN


TEHNOLOGIJA RFID

Študent: Dejan PALER


Študijski program: univerzitetni, Računalništvo in informatika
Smer: Informatika

Mentor: izr. prof. dr. Marjan HERIČKO

Maribor, november 2006


II

ZAHVALA
Zahvaljujem se mentorju dr. Marjanu Heričku za
pomoč in vodenje pri opravljanju diplomske
naloge.
Zahvala Inštitutu za informatiko za izposojo RFID
čitalnika in RFID kartic.
Posebna zahvala velja staršem, ki so mi omogočili
študij.
III

VSEPRISOTNE INFORMACIJSKE REŠITVE IN


TEHNOLOGIJA RFID
Ključne besede: vseprisotne informacijske rešitve, tehnologije RFID, RFID
značka, spletne storitve, ogrodje Compact Framework

UDK: 004.738.52(043.2)

Povzetek

Vseprisotne informacijske rešitve sestavljajo številne tehnologije, ki omogočajo dostop


do informacij in storitev kadarkoli in kjerkoli na varen in zanesljiv način. Diplomska
naloga podaja pregled definicij vseprisotnih informacijskih rešitev in klasifikacijo
tehnologij tovrstnih rešitev. Podrobneje opisuje tehnologijo RFID in njeno vlogo v
vseprisotnih informacijskih rešitvah. Opisuje tudi potek zasnove in razvoja aplikacije, ki
temelji na tehnologiji RFID, in predstavlja razvoj vseprisotnih informacijskih rešitev.
IV

PERVASIVE COMPUTING AND RFID


TECHNOLOGY
Key words: pervasive computing, ubiquitous computing, RFID technologies,
RFID tag, Web services, Compact Framework

UDK: 004.738.52(043.2)

Abstract

Pervasive computing consists of numerous technologies which are enabling access to


information and services, at anytime and anywhere in a secure and reliable way. The
Diploma paper presents an overview of definitions for pervasive computing and
classification of pervasive computing technologies. It describes the RFID technology and
its role in pervasive computing in grater detail. It also describes design and development
of application which is based on RFID technology and promises guidelines for pervasive
computing.
V

VSEBINA

1 UVOD ..................................................................................................................................................... 1

2 DEFINICIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV.................................................... 3


2.1 ZNAČILNOSTI VSEPRISOTNIH INFORMACIJSKIH REŠITEV .................................................................. 5
3 KLASIFIKACIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV ........................................... 7
3.1 INFORMACIJSKE NAPRAVE ............................................................................................................... 7
3.2 VSEPRISOTNA OMREŽJA .................................................................................................................. 9
3.3 PROGRAMSKA OPREMA ................................................................................................................. 10
3.4 KLASIFIKACIJA TEHNOLOGIJ IN PRIMERI ........................................................................................ 12
3.5 SORODNE TEHNOLOGIJE ................................................................................................................ 14
4 UPORABNOST TEHNOLOGIJE RFID .......................................................................................... 16
4.1 UPORABA TEHNOLOGIJE RFID NA RAZLIČNIH PODROČJIH ............................................................ 18
4.1.1 Primerjava tehnologije RFID in črtne kode ............................................................................ 21
4.1.2 Podpora tehnologije RFID na mobilnih napravah.................................................................. 23
4.2 STANDARDI IN DOGOVORI TEHNOLOGIJE RFID ............................................................................. 24
4.3 ZAGOTAVLJANJE VARNOSTI PRI UPORABI TEHNOLOGIJE RFID...................................................... 26
4.4 PROGRAMSKI VMESNIKI ................................................................................................................ 32
4.4.1 Značilnosti programskega vmesnika Contactless Communication API .................................. 32
4.4.2 Zgradba programskega vmesnika Contactless Communication API ...................................... 34
4.4.3 Značilnosti programskega vmesnika SocketScan Managed API............................................. 36
4.4.4 Zgradba programskega vmesnika SocketScan Managed API................................................. 37
4.4.5 Primerjava programskih vmesnikov Contactless Communication API in SocketScan Managed
API 39
5 ZASNOVA IN RAZVOJ RFID APLIKACIJE ZA REGISTRACIJO UDELEŽENCEV............ 40
5.1 OPIS SESTAVNIH DELOV APLIKACIJE .............................................................................................. 40
5.2 ZASNOVA RFID APLIKACIJE.......................................................................................................... 44
5.3 RAZVOJ RFID APLIKACIJE ............................................................................................................ 46
5.3.1 Zgradba aplikacije................................................................................................................... 47
5.4 APLIKACIJA IN ZNAČILNOSTI VSEPRISOTNIH INFORMACIJSKIH REŠITEV ......................................... 56
5.5 APLIKACIJA IN ZAGOTAVLJANJE VARNOSTI ................................................................................... 59
6 SKLEP .................................................................................................................................................. 63

7 LITERATURA..................................................................................................................................... 64
VI

UPORABLJENE KRATICE
API - Application Programming Interface
APPEL - A P3P Preference Exchange Language
CF - Compact Flash
DoS - Denial of Service
EAN - European Article Number
ECMA - European Computer Manufacturers Association
EPC - Electronic Product Code
ERP - Enterprise Resource Planning
ETSI - European Telecommunications Standard Institute
GUID - Globally Unique Identifier
HTTP - Hyper Text Transfer Protocol
IRI - Internationalized Resource Identifier
ISO - International Standards Organization
J2ME - Java 2 Platform Micro Edition
MVC - Model-View-Controller
NFC - Near Field Communication
NIST - National Institute of Standards and Technology
OWL - Web Ontology Language
P3P - Platform for Privacy Preferences Project
PDA - Personal Digital Assistant
PIN - Personal Identification Number
RDF - Resource Description Framework
RFID - Radio Frequency Identification
RIF - Rule Interchange Format
SAP - Systems, Applications and Products
UCC - Uniform Code Council
SOAP - Simple Object Access Protocol
UDDI - Universal Description, Discovery and Integration
URI - Uniform Resource Identifier
USB - Universal Serial Bus
WAP - Wireless Application Protocol
WICD - Web Integration Compound Document
WS-CDL - Web Services Choreography Description Language
WSDL - Web Services Description Language
WSRP - Web Services for Remote Portlets
XHTML - Extensible Hypertext Markup Language
XKMS - XML Key Management Specification
XML - Extensible Markup Language
XML Enc - XML Encryption Syntax and Processing
XML Sig - XML-Signature Syntax and Processing
VII

SEZNAM SLIK

Slika 3.1: Delitev tehnologij vseprisotnih informacijskih rešitev 7


Slika 3.2: Delitev tehnologij informacijskih naprav 8
Slika 3.3: Delitev tehnologij vseprisotnih omrežij 9
Slika 3.4: Delitev tehnologij programske opreme 11
Slika 3.5: Pregled tehnologij vseprisotnih informacijskih rešitev 12
Slika 4.1: Arhitektura RFID sistema 17
Slika 4.2: Hitrost branja tehnologije RFID in črtne kode 22
Slika 4.3: Shema RFID značke Clipped Tag podjetja IBM 30
Slika 4.4: Vrednosti nekaterih J2ME sistemskih lastnosti 34
Slika 4.5: Programski vmesnik Contactless Communication API 35
Slika 5.1: Struktura pomnilnika brezkontaktne kartice i-code II 42
Slika 5.2: RFID čitalnik in dlančnik Hewlett-Packard serije hx2000 43
Slika 5.3: Primer identifikacije z RFID čitalnikom 44
Slika 5.4: Diagram primera uporabe – Prijava na dogodek 45
Slika 5.5: Diagram primera uporabe – Udeležba dogodka 46
Slika 5.6: Zgradba grafičnega vmesnika aplikacije 47
Slika 5.7: Zgradba vzorca MVC 50
Slika 5.8: Zgradba vzorca Opazovalec 51
Slika 5.9: Entitetno relacijski diagram aplikacije 52
Slika 5.10: Grafični vmesnik aplikacije v angleškem jeziku 53
Slika 5.11: Grafični vmesnik aplikacije v nemškem jeziku 53
Slika 5.12: Identifikacija uporabnika 55
Slika 5.13: Samodejna identifikacija uporabnika 55
Slika 5.14: Spletna stran v programskem jeziku PHP 57
Slika 5.15: Povezljivost aplikacije 58
VIII

SEZNAM PREGLEDNIC

Preglednica 3.1: Sorodne tehnologije in kratek opis 15


Preglednica 4.1: Frekvenčna področja tehnologije RFID 16
Preglednica 4.2: Primerjava tehnologije RFID in črtne kode 23
Preglednica 4.3: Načini izbire RFID značk 38
UVOD 1

1 UVOD

Dostop do informacij kadarkoli in kjerkoli je danes ključnega pomena. Prav to je eden


izmed pomembnejših ciljev vseprisotnih informacijskih rešitev, ki vključujejo številne
prilagodljive in mobilne naprave. Te naprave so lahko pametni telefoni, dlančniki in
prenosni računalniki, ki dostopajo ali omogočajo dostop do raznovrstnih aplikacij.
Uporabniku prijazne aplikacije pa omogočajo upravljanje z informacijami tako iz
vsakodnevnega življenja kot tudi iz poslovnega sveta.
Vseprisotne informacijske rešitve predstavljajo hitro rastoče in relativno mlado
področje. Zato bomo v pričujoči diplomski nalogi najprej predstavili definicijo
vseprisotnih informacijskih rešitev, zatem pa bomo pogledali, katere so tiste skupne
lastnosti, ki povezujejo tehnologije in sisteme v vseprisotnih informacijskih rešitvah.
Obstoj vseprisotnih informacijskih rešitev omogočajo številne tehnologije, ki so med
seboj povezane na različne načine in zagotavljajo razne lastnosti vseprisotnih
informacijskih rešitev. Te tehnologije bomo razdelili na informacijske naprave, vseprisotna
omrežja in programsko opremo ter predstavili posamezne primere tehnologij. Nato bomo
pregledali nekaj sorodnih tehnologij, ki so vsaka na svoj način povezane z vseprisotnimi
informacijskimi rešitvami.
Tehnologija vseprisotnih informacijskih rešitev, ki jo bomo v diplomski nalogi
najpodrobneje pregledali, je tehnologija radiofrekvenčne identifikacije (RFID - Radio
Frequency Identification). Uporablja se na številnih področjih v informacijsko
komunikacijskem okolju. Trenutno je najbolj razširjena v industriji in sicer v procesu
upravljanja dobavne verige. Predstavlja posodobljeno nadomestilo za črtno kodo in
omogoča hitrejše ter natančnejše sledenje proizvodov v dobavni verigi. Da bodo sistemi, ki
uporabljajo tehnologije RFID, kompatibilni na globalnem nivoju, so pomembni dobro
definirani standardi. Nekaj najpomembnejših standardov bomo opisali tudi v diplomski
nalogi. Kako zagotoviti varnost informacij in uporabniško zasebnost bomo podrobneje
spoznali v poglavju o zagotavljanju varnosti tehnologije RFID. Za razvoj lastnih aplikacij
bomo pregledali značilnosti in zgradbo programskih vmesnikov Contactless
Communication API (Application Programming Interface) in SocketScan Managed API.
Prvi programski vmesnik je namenjen razvoju aplikacij na platformi Java ME, drugi pa
razvoju aplikacij na platformi .NET.
UVOD 2

Osnovni namen diplomske naloge je zasnovati in razviti primer vseprisotne


informacijske rešitve v današnjem realnem okolju. V ta namen bomo razvili aplikacijo, ki
bo tekla na dlančniku. Aplikacijo bomo uporabili za identifikacijo udeležencev nekega
dogodka. Proces identifikacije bo temeljil na tehnologiji RFID. Nato bomo preverili, ali
ima aplikacija vse značilnosti vseprisotnih informacijskih rešitev in kako smo zagotovili
ustrezen nivo varnosti.
DEFINICIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV 3

2 DEFINICIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV

Informacije so jedro današnjega medsebojno povezanega poslovnega in osebnega


sveta. Smo v informacijsko komunikacijski družbi, ki zahteva, da moramo biti sposobni
izmenjevati in sprejemati informacije hitro, učinkovito in varno kadarkoli, ne glede na to,
kje se fizično nahajamo. Elektronsko shranjevanje, prenos in dostop do informacij so
vsakodnevne aktivnosti, na katere se zanašamo in jim zaupamo. Informacije in storitve
kadarkoli, kjerkoli in za vsakogar so ključnega pomena za vseprisotne informacijske
rešitve.
V literaturi zasledimo več definicij, ki opredeljujejo vseprisotne informacijske rešitve.
Enciklopedija »Computer Desktop Encyclopedia« razlaga, da se vseprisotne informacijske
rešitve nanašajo na uporabo računalnikov v vsakdanjem življenju. Vključujejo pametne
telefone, naprave PDA (Personal Digital Assistant) in druge mobilne naprave. Računalniki
so integrirani v vsakodnevne predmete, kot so avtomobili, pri tem pa se ljudje večinoma ne
zavedajo njihove prisotnosti. Vse te naprave komunicirajo preko brezžičnih omrežij, brez
potrebe po interakciji uporabnika [1]. Podobno kot omenjena enciklopedija definira
vseprisotne informacijske rešitve tudi inštitut NIST (National Institute of Standards and
Technology) in sicer kot termin za vse bolj prisoten trend v smeri številnih, vsakodnevno
dostopnih, pogosto navideznih informacijsko komunikacijskih naprav, večinoma mobilnih
ali vgrajenih v okolje, povezano v naraščajoče vseprisotno omrežno infrastrukturo, ki je
sestavljena iz ožičenega jedra in brezžičnih koncev [7]. Prosto dostopna spletna
enciklopedija Wikipedia opisuje vseprisotne informacijske rešitve kot v okolje integrirano
informacijsko procesiranje, ki nadomešča uporabo računalnikov kot samostojnih naprav.
Okolje in vsakdanji predmeti z integrirano zmožnostjo procesiranja informacij omogočajo
uporabnikom povsem naravno in vsakdanjo interakcijo z računalniškimi napravami na
katerikoli lokaciji in v kakršnihkoli okoliščinah [60]. Za razliko od zgornjih definicij
komite »Security of Acts and Regulations Committee« poudarja povezavo vseprisotnih
informacijskih rešitev z rastjo brezžičnih tehnologij. Vseprisotne informacijske rešitve
opredeljuje kot tendenco oziroma težnjo k informacijskemu okolju, v katerem uporabniki
dostopajo do informacijsko komunikacijskih tehnologij preko okolja samega. Ta trend je
močno povezan z rastjo brezžičnih tehnologij, ki omogočajo uporabnikom oddaljen dostop
do informacij in storitev ter sinhronizacijo podatkov med raznovrstnimi računalniki [2].
DEFINICIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV 4

Organizacija V2 dodaja, da morajo biti računalniki, ki bodo vgrajeni v okolja, cenovno


ugodni, s čimer bo dosežena dostopnost vsakomur. V2 tako vseprisotne informacijske
rešitve označuje kot cenovno dostopne mikroprocesorje, vgrajene v vsakdanje predmete in
okolja. Mikroprocesorji so značilni po številnosti, vsakomur dostopni, večinoma nevidne
informacijske naprave, pogosto mobilni ali vgrajeni v okolje in povezani v naraščajoče
vseprisotno omrežno strukturo [3]. Laboratorij »International Technology Laboratory«
pravi, da bodo ljudje vsakodnevno medsebojno delovali v svojem okolju s prenosnimi ali
nevidnimi računalniki. Vsi ti računalniki bodo med seboj omreženi in povezani na internet
[5]. Tukaj gre za računalnike, ki bodo tako sestavljeni, integrirani in prilagojeni ter
naravni, da jih bomo uporabljali ne da bi se zavedali. Naslednji dve definiciji označujeta
vseprisotne informacijske rešitve z vidika poslovnega sveta. Spletni portal »RapidSpec«
tako vseprisotne informacijske rešitve označuje s pomočjo uporabe računalniške
infrastrukture, ki podpira informacijske naprave, preko katerih lahko uporabniki dostopajo
do širokopasovnih omrežnih storitev, kar vključuje na primer internetno elektronsko
trgovanje. Vseprisotne informacijske rešitve na tak način zagotavljajo uporabnikom dostop
do informacij in ustrezno ukrepanje na osnovi pridobljenih informacij [4]. Tehnološki
inštitut »Massachusetts Institute of Technology« definira vseprisotne informacijske rešitve
kot skupino medsebojno povezanih ljudi, ki bodo vsakodnevno skupaj z računalniki in
napravami kupovali, trgovali in svobodno izmenjevali informacije in informacijske storitve
[6].
Iz naštetih definicij lahko povzamemo, da za vse prisotne informacijske rešitve
potrebujemo računalniško informacijske naprave, ki so med seboj neodvisno povezane
preko dinamično prilagodljivih omrežij. Naprave so uporabniku prijazne in ne
predstavljajo ovire pri komuniciranju, temveč so integrirane v uporabniško vsakdanje
naravno okolje. Da bo vse skupaj delovalo, pa je potrebna tudi zadostna stopnja varnosti in
zasebnosti, saj bo le s tem doseženo zaupanje uporabnikov. Na podlagi tega definiramo
vseprisotne informacijske rešitve kot tehnologije, ki so razpršene in integrirane po vseh
delih uporabniškega naravnega okolja z uporabo številnih neodvisnih informacijskih
naprav. Te naprave so medsebojno povezane v brezžična ali ožičena računalniška omrežja,
ki zagotavljajo uporabniku ustrezni nabor informacijsko komunikacijskih storitev z
zadovoljivo veliko stopnjo varnosti.
DEFINICIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV 5

2.1 Značilnosti vseprisotnih informacijskih rešitev

Tehnologija se premika iz osebnih računalnikov na pametne in vsakdanje naprave z


integriranimi tehnologijami in povezljivostjo. Vseprisotne informacijske rešitve ponujajo
primeren dostop do koristnih informacij in pametnih naprav, ki imajo zmožnost delovanja
kjerkoli in kadarkoli jih potrebujemo. Tovrstne rešitve vsebujejo veliko raznovrstnih
tehnologij, ki so potrebne, da omogočimo uspešno zagotavljanje storitev vseprisotnih
informacijskih rešitev. Ena izmed večjih potreb vseprisotnih informacijskih rešitev je
integracija vseh tehnologij, da dosežemo dostavo realnih rešitev k uporabniku. Na primer
turistična agencija [39] bi lahko s svojim informacijskim sistemom nudila ne samo
direktno komunikacijo s stranko, ampak bi lahko v realnem času dodala tudi
funkcionalnost, kot je pošiljanje sporočila o prestavljenem letu, kateremu bi pripela še
seznam alternativnih potovalnih opcij. Ali pa, da bi avtomobilska industrija omogočila ne
samo voznikovo komunikacijo in navigacijo, pač pa tudi omrežno povezavo avtomobila s
proizvajalcem in serviserjem. Te vseprisotne informacijske rešitve povezujejo nekatere
skupne lastnosti. Tako smo iz definicije vseprisotnih informacijskih rešitev povzeli
značilnosti, ki jih vseprisotne informacijske rešitve morajo zagotoviti in so opisane v
nadaljevanju.

Storitve kadarkoli in kjerkoli


Omogočiti kadarkoli in kjerkoli globalen, vseprisoten dostop iz katerekoli naprave, na
primer dlančnik, žepni računalnik, pametni telefon, in do kateregakoli podatka, na primer
internet, javne storitve, elektronska pošta.

Nevidnost
Tehnologije vseprisotnih informacijskih rešitev izginejo iz zavedanja uporabnika.
Uporabnik sodeluje s tehnologijami, ki so prisotne v njegovem naravnem okolju, ne da bi
se jih sploh zavedal.

Mobilnost
Prilagajanje vseprisotnih informacijskih rešitev na spremembe in dostopnost virov.
Kadar se uporabnik preseli iz enega okolja v drugo, vseprisotne informacijske rešitve
DEFINICIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV 6

nastavijo novo okolje tako, da uporabnik lahko nemoteno nadaljuje z delom, ki ga je začel
v drugem okolju. Če pri spremembi okolja nastopi napaka, na primer v brezžičnem
omrežju, vseprisotne informacijske rešitve poskrbijo za usposobitev povezave z novo
možno storitvijo.

Zaznava konteksta
Gre za uporabo naprav, ki imajo informacije o okoliščinah, v katerih delujejo in lahko
reagirajo na morebitne spremembe ali pa kot so definirali na tehnološkem inštitutu Georgia
Institute of Technology [40]: Zaznavanje razmer je katerakoli informacija, ki jo lahko
uporabimo za označitev situacije določene entitete. Entiteta je oseba, kraj ali objekt, ki je
pomemben za medsebojno delovanje med uporabnikom in aplikacijo.
Klasifikacija vseprisotnih informacijskih rešitev 7

3 KLASIFIKACIJA VSEPRISOTNIH INFORMACIJSKIH REŠITEV

Vseprisotne informacijske rešitve razširjajo poslovni svet, omogočajo dostop do


informacij in ustvarjajo nove interakcije z novimi napravami. Prav tako ponujajo
enostavno povezovanje do kateregakoli tipa naprave, do kateregakoli tipa omrežja, do
kateregakoli tipa podatka na varen in zanesljiv način. Vseprisotne informacijske rešitve ne
opisujejo samo brezžične rešitve v smislu dlančnikov in pametnih naprav, ampak gre za
integrirano okolje, kjer bodo sodelovale mnogovrstne in številne tehnologije. Tehnologije
vseprisotnih informacijskih rešitev delimo na tri dele kot ponazarja slika 3.1.

Vseprisotne informacijske rešitve

Informacijske naprave

Vseprisotna omrežja

Programska oprema

Slika 3.1: Delitev tehnologij vseprisotnih informacijskih rešitev

Vseprisotne informacijske rešitve tako ne temeljijo na eni sami tehnologiji, temveč na


sodelovanju različnih tehnologij. Za obstoj vseprisotnih informacijskih rešitev so potrebne
informacijske naprave, vseprisotna omrežja in programska oprema [58].

3.1 Informacijske naprave

Informacijske naprave predstavljajo tehnologije, ki so najpomembnejši del vseprisotnih


informacijskih rešitev iz stališča uporabnika in uporabnikovega naravnega okolja. Njihova
Klasifikacija vseprisotnih informacijskih rešitev 8

naloga je nuditi uporabniku vrsto funkcionalnih storitev, za katere ni potrebna dodatna


uporabniška interakcija. Slika 3.2. prikazuje delitev tehnologij informacijskih naprav.

Informacijske naprave

Zaznavni vmesniki

Identifikacijske naprave

Vgradne in namenske naprave

Naprave za dostop do informacij in


storitev

Slika 3.2: Delitev tehnologij informacijskih naprav

Tehnologije, ki spadajo v skupino zaznavnih vmesnikov, omogočajo interakcijo


uporabnika z računalnikom brez uporabe standardne miške ali tipkovnice. Obnašajo se
intuitivno in naravno. V to skupino sodijo na primer tehnologije prepoznavanja govora in
tehnologije prepoznavanja gibanja, ki omogočajo posredovanje računalniških ukazov s
pomočjo govora ali gibov.
Identifikacijske naprave so namenjene ugotavljanju istovetnosti objekta, ki želi
komunicirat v sistemu vseprisotnih informacijskih rešitev. Primer teh tehnologij so razne
pametne kartice in tehnologija RFID, katero bomo v diplomski nalogi podrobneje spoznali.
Vgradne in namenske naprave so osredotočene na razvoj infrastrukture vseprisotnih
informacijskih rešitev. Gre za številne mikroprocesorje in senzorje, ki jih lahko v
vseprisotnih informacijskih rešitvah uporabljamo in nadzorujemo v realnem času. Te
tehnologije so integrirane v okolje uporabnika in omogočajo komunikacijo ter povezljivost
sistemov.
Klasifikacija vseprisotnih informacijskih rešitev 9

Primer naprav za dostop do informacij in storitev je lahko dlančnik, prenosni


računalnik in pametni telefon. Tehnologije, ki so zajete v tem delu vseprisotnih
informacijskih rešitev, ponujajo zmožnost dostopa do informacij kadarkoli in kjerkoli.

3.2 Vseprisotna omrežja

Naloga vseprisotnega omrežja je nuditi dostop do svojih storitev iz kakršnekoli naprave


(neodvisno od naprave), komurkoli, kadarkoli in kjerkoli. Za dosego vseprisotnih
komunikacij je potrebno, da se omrežja zavedajo uporabniškega konteksta in lokacije s
pomočjo vseprisotnih naprav. Slika 3.3 prikazuje delitev tehnologij vseprisotnega omrežja.

Vseprisotna omrežja

Povezljivost

Spletne storitve

Odkrivanje storitev

Spletni protokoli in aplikacije

Semantični splet

Zasebnost in varnost

Slika 3.3: Delitev tehnologij vseprisotnih omrežij


Klasifikacija vseprisotnih informacijskih rešitev 10

V vseprisotnih informacijskih rešitvah, kjer sodeluje veliko število naprav, je


pomembna nemotena povezljivost. Tehnologije, kot so na primer brezžična lokalna
omrežja in tehnologija Bluetooth, omogočajo komunikacijo med posameznimi napravami.
Spletne storitve omogočajo povezljivost in integracijo različnih platform in
neposredno komunikacijo med raznovrstnimi napravami preko omrežja. Ključne
tehnologije spletnih storitev so: protokol SOAP (Simple Object Access Object) za
komunikacijo, ki je povezan s protokolom HTTP (Hyper Text Transfer Protocol),
WSDL(Web Services Description Language) za opis vmesnikov spletnih storitev, protokol
UDDI (Universal Description, Discovery and Integration), ki aplikacijam omogoča
odkrivanje spletnih storitev.
Da se sistem vseprisotnih informacijskih rešitev prilagodi nastalim spremembam in
omogoči nemoteno nadaljevanje dela, potrebujemo odkrivanje storitev. Tehnologija Jini
[41] je ena izmed tehnologij odkrivanja storitev. Omogoča gradnjo prilagodljivih omrežnih
sistemov v dinamičnih računalniških okoljih.
Veliko vlogo v vseprisotnih informacijskih rešitvah imajo današnji spletni protokoli in
aplikacije. Na primer protokol WAP (Wireless Application Protocol) omogoča dostop do
informacij brezžičnim napravam kot so mobilni telefoni in pametni telefoni.
Semantični splet [42] predstavlja ogrodje, ki omogoča izmenjavo, iskanje in
primerjavo podatkov. Z metapodatki informacijam doda dobro definiran pomen na tak
način, da bo razumljiv tudi raznim napravam. Semantični splet sloni na podatkovnem
modelu RDF (Resource Description Framework), ki za opis spletnih virov uporablja
tehnologije XML (Extensible Markup Language).
Številne med seboj povezane in v naše okolje integrirane naprave morajo uporabnikom
zagotoviti zasebnost in varnost. Tehnologije, ki omogočajo implementacijo zasebnosti in
varnosti v vseprisotnih informacijskih rešitvah, so med drugim tudi biometrična
avtentikacija, protokol P3P (Platform for Privacy Preferences Project) za nadzor osebnih
podatkov in šifrirni algoritmi, ki porabijo malo energije.

3.3 Programska oprema

Programska oprema v vseprisotnih informacijskih rešitvah zagotavlja nemoteno


delovanje v dinamičnem in raznolikem okolju ter zastavlja minimalne zahteve uporabniku.
Klasifikacija vseprisotnih informacijskih rešitev 11

Tehnologije programske opremo smo razdelili na operacijske sisteme in okolja, sisteme za


upravljanje s podatkovnimi bazami, razvojna okolja in programske jezike, kot prikazuje
slika 3.4.

Programska oprema

Operacijski sistemi in okolja

Sistemi za upravljanje podatkovnih baz

Razvojna okolja in programski jeziki

Slika 3.4: Delitev tehnologij programske opreme

Operacijski sistemi in okolja v vseprisotnih informacijskih rešitvah morajo


zagotavljati sistemsko arhitekturo, ki bo lahko tekla na raznovrstnih napravah. Arhitektura
mora biti tako preprosta, da jo bomo lahko implementirali na raznih vrstah naprav.
Omogočati mora mobilno računalništvo in trajni pomnilnik, da bodo lahko aplikacije
zanesljivo tekle z omejeno povezljivostjo [43]. Primer operacijskega sistema je Windows
CE, ki je namenjen različnim napravam kot so žepni računalniki, igralne konzole, brezžični
in pametni telefoni. Kot primer tehnologije, ki omogoča varno okolje aplikacijam, katere
tečejo na pametnih karticah in drugih spominsko omejenih napravah z majhnimi zmožnosti
procesiranja, lahko navedemo tehnologijo Java Card.
Tudi aplikacije v vseprisotnih informacijskih rešitvah potrebujejo sistem za
upravljanje s podatkovnimi bazami na raznih napravah, ki imajo v večini primerov
omejene vire. Predvsem gre za omejen pomnilniški prostor, majhno zmogljivost
procesiranja in omejen vir energije. Rešitev najdemo na primer v relacijski podatkovni
bazi IBM DB2 Everyplace, ki jo lahko integriramo tudi v namenske naprave.
Razvojna okolja in programski jeziki omogočajo implementacijo aplikacij v
vseprisotnih informacijskih rešitvah. Na primer platforma Java ME omogoča razvoj
Klasifikacija vseprisotnih informacijskih rešitev 12

aplikacij za širok nabor mnogovrstnih mobilnih naprav. Tako lahko razvijamo uporabniške
vmesnike, upravljamo z integriranimi omrežji in protokoli ter uporabimo robusten
varnostni model.

3.4 Klasifikacija tehnologij in primeri

V prejšnjih treh poglavjih smo predstavili delitev tehnologij vseprisotnih


informacijskih rešitev in opisali posamezne dele. Slika 3.5 prikazuje to delitev s
posameznimi primeri tehnologij.

Slika 3.5: Pregled tehnologij vseprisotnih informacijskih rešitev


Klasifikacija vseprisotnih informacijskih rešitev 13

(prirejeno po [59])
Klasifikacija vseprisotnih informacijskih rešitev 14

3.5 Sorodne tehnologije

Med pregledovanjem literature smo zasledili tehnologije, ki so neposredno ali posredno


povezane s vseprisotnimi informacijskimi rešitvami.
Na primer tehnologija Wearable Computing sloni na nošenju računalniške
infrastrukture, ki omogoča vseprisoten dostop do informacij. Pri vseprisotnih
informacijskih rešitvah je ravno nasprotno. Cilj je, da s seboj ne nosimo ničesar, ker
kjerkoli se bomo nahajali bodo računalniki integrirani v naše okolje. V vseprisotnih
informacijskih rešitvah ni potrebno prenašati prenosnega računalnika, ker vemo, da bomo
lahko v drugem okolju nemoteno nadaljevali delo z integrirano računalniško
infrastrukturo.
Tehnologija Augmented Reality vključuje v resnično okolje virtualne informacije.
Podobno kot vseprisotne informacijske rešitve tudi tehnologije Augmented Reality
predstavljajo nasprotje virtualni resničnosti, ki uporabnika postavi v navidezni svet.
Tehnologije Augmented Reality in vseprisotne informacijske rešitve postavljajo virtualno
resničnost v realno okolje. Na primer uporabnik nosi posebna očala skozi katera lahko vidi
realno okolje in računalniško proizvedene informacije.
Vseprisotne informacijske rešitve in tehnologijo Information Appliances združuje to,
da obe omogočata neposredno komunikacijo med raznimi napravami. Tako bi lahko na
primer avtomobil ukazal hišnemu sistemu, da do prihoda stanovalca ogreje dnevno sobo na
primerno temperaturo, hladilnik pa bi ob nizkih zalogah mleka in jajc le-te samodejno
naročil v lokalnem supermarketu [61].
Tehnologije Roomware predstavljajo »pameten« prostor, kjer osebni računalnik v
takšni obliki kot ga poznamo danes izgine iz uporabniškega okolja. Osebni računalnik v
tehnologiji Roomware predstavljajo računalniki, ki so integrirani v stene in pohištvo v
prostoru. Podobno kot v vseprisotnih informacijskih rešitvah so tudi pri tej tehnologiji
računalniki integrirani v uporabnikovo okolje.
Preglednica 3.2 podaja kratek opis za nekatere tehnologije sorodne vseprisotnim
informacijskim rešitvam.
Klasifikacija vseprisotnih informacijskih rešitev 15

Preglednica 3.1: Sorodne tehnologije in kratek opis

Tehnologije Kratek Opis


WEARABLE Tehnologije, ki so vključene v uporabniški osebni prostor in konstruirane
COMPUTING [8.] tako, da so lahko nošene in vedno dostopne.

AUGMENTED Tehnologije, ki povečajo uporabnikovo vidno percepcijo s pomočjo


REALITY [9.] računalniško generiranih informacij.

TELEPRESENCE Upravljanje naprav na daljavo s pomočjo robotike in drugih naprav.


[10.]

TANGIBLE BITS Premosti ovire, ki se pojavljajo med digitalnim svetom in fizičnim okoljem.
[11.]

ROOMWARE [12.] Informacijske in komunikacijske tehnologije integrirane v prostor (soba).

INFORMATION Katerekoli naprave, ki lahko obdelajo podatke in jih izmenjujejo z drugimi


APPLIANCES [13.] napravami.

AUTONOMIC Razvoj računalniških sistemov, kateri bodo samostojno upravljali z


COMPUTING [14.] operacijami brez človeškega posredovanja.

PROACTIVE Povezava številnih računalniških naprav v fizični svet.


COMPUTING [15.]

AMORPHOUS Raziskave za programabilne materiale, katerih elementi bodo lahko


COMPUTING [16.] komunicirali med seboj in reagirali na okolje.

UBIQUITOUS WEB Upravljanje z napravami preko spletnih aplikacij.


[17.]

Na področju vseprisotnih informacijskih rešitev je aktivna tudi Evropska unija. Eden


izmed projektov, ki jih finančno podpira Evropska komisija, je projekt Pervasive
computing framework for modeling complex virtually-unbounded systems ali na kratko
projekt PERPLEXUS. Projekt se je začel leta 2006 v okviru Šestega okvirnega
raziskovalnega programa in je v stanju razvoja. Gre za zasnovo in razvoj nadgradljive
strojne opreme zgrajene iz poljubno nastavljivih naprav, ki imajo sposobnost zaznavanja
biometričnih podatkov. S tem bo omogočena simulacija zelo kompleksnih sistemov in
študija nepredvidljivega obnašanja procesnih modulov v virtualno brezmejnem in
brezžičnem omrežju. Takšna infrastruktura bo, v primerjavi s klasičnimi programskimi
simulacijami, omogočila številne prednosti kot so hitrost simulacije, interakcija z okoljem
v realnem času, zmožnost samostojne organizacije, simulacija z prisotnostjo negotovosti in
distribuirane več nivojske simulacije [62].
Uporabnost tehnologije RFID 16

4 UPORABNOST TEHNOLOGIJE RFID

Tehnologije RFID so vrsta elektronske identifikacije, ki z uporabo radiofrekvenčnih


valov oddajajo identiteto v obliki edinstvene serijske številke. Za uspešno komunikacijo
morata biti frekvenci radijskih valov RFID sprejemnika in oddajnika skladni. V RFID
sistemih se uporablja veliko različnih frekvenc. Najpogostejše so nizke frekvence, visoke
frekvence in ultra visoke frekvence. Preglednica 4.1 prikazuje tipične frekvence za
posamezno frekvenčno področje, njihovo uporabo ter standarde.

Preglednica 4.1: Frekvenčna področja tehnologije RFID


(prirejeno po [18, 19])

Frekvenčno Tipične Standardi in Domet Primeri uporabe


področje frekvence dogovori branja
Nizke frekvence 30 kHz do 0.5 m Nadzor dostopa,
logistika, distribucija.
125 kHz

134.2 kHz Tiris

300 kHz

Visoke frekvence 3 MHz do 1 m Pametne kartice,


letalska prtljaga,
13.56 MHz ISO 15693 logistika, upravljanje
skladišč.
30 MHz

Ultra visoke 300 MHz nad 1m Logistika, elektronsko


frekvence cestninjenje, nadzor
433 MHz 868 MHz EU, parkirnine.
915 MHz US
2.45 GHz

3 GHz

5.8 GHz

Arhitekturo RFID sistema sestavljajo čitalnik (Transceiver), značka (Transponder) in


sistem za procesiranje podatkov. RFID značka vsebuje informacije, ki omogočajo
edinstveno identifikacijo in s tem koncept avtomatičnega identificiranja. RFID čitalnik s
pomočjo antene upravlja z radio frekvenčno komunikacijo in posreduje informacije o
značkah za kasnejšo obdelavo. Sistem za procesiranje podatkov je zadolžen za obdelavo in
shranjevanje podatkov, ki jih pridobi iz RFID čitalnika, predstavlja pa tudi vmesnik med
Uporabnost tehnologije RFID 17

strojno opremo in uporabniško aplikacijo. Slika 4.1 prikazuje posamezne elemente v


arhitekturi RFID sistema.

Slika 4.1: Arhitektura RFID sistema


(prirejeno po [47])

RFID sistem deluje tako, da čitalnik oddaja elektromagnetne valove določene


frekvence. Ko RFID značka vstopi v to polje, pridobi preko svoje antene potrebno energijo
za napajanje mikročipa. Tako lahko mikročip pridobljene valove modulira in jih pošlje
nazaj k čitalniku. Čitalnik valove pretvori v digitalno obliko za nadaljnjo obdelavo in
shranjevanje v informacijskih sistemih. Opisan sistem sestoji iz pasivnih priponk, ki
nimajo lastnega sistema za napajanje. Poznamo tudi aktivne priponke, ki imajo lasten izvor
napajanja, ponavadi v obliki baterijskega vložka. Semi-pasivne priponke uporabljajo izvor
napajanja samo za delovanje mikročipa in ne za komunikacijo.
Tehnologijo RFID smo umestili v vseprisotne informacijske rešitve med informacijske
naprave. Je ena pomembnejših tehnologij vseprisotnih informacijskih rešitev, saj jo lahko
nevidno integriramo v vsakdanje predmete kot so na primer avtomobilski ključi, pametne
kartice in celo živali. Eden izmed ciljev vseprisotnih informacijskih rešitev je povečanje
prisotnosti računalnikov v okolju do te mere, da jih bomo lahko odvrgli kot na primer
odpadni papir. K temu se približuje tudi RFID tehnologija. Podjetje SmartCode je leta
2006 kot prvo na svetovnem tržišču ponudilo RFID priponke za ceno petih centov pod
pogojem, da je nakupna količina 100 milijonov RFID priponk [20]. To bi podjetjem
Uporabnost tehnologije RFID 18

omogočilo integracijo RFID priponk na embalažo. Le-te pa bi kupci lahko odvrgli skupaj z
odpadnim materialom.

4.1 Uporaba tehnologije RFID na različnih področjih

Tehnologije RFID se uporabljajo za identifikacijo predmetov in živih bitij. Njihove


prednosti so, da ne potrebujejo človeškega posredovanja, ne potrebujejo vidnega polja za
odčitavanje podatkov, informacije so posredovane v realnem času, ponujajo možnost
spreminjanja zapisanih podatkov. V večini primerov, kadar bralna naprava prebere RFID
priponko, pošlje informacijskemu sistemu identifikacijsko številko priponke,
identifikacijsko številko bralne naprave in čas, ob katerem je bila značka prebrana.
Informacijski sistem vsebuje podatke o lokaciji posamezne bralne naprave. Na podlagi teh
in prebranih podatkov lahko posreduje informacije ne samo o tipu posameznega izdelka,
pač pa tudi o tem, kje se izdelek trenutno nahaja ter zgodovino njegovih premikov.
Tehnologija RFID je v industrijskem okolju zelo razširjena. Podjetja se odločajo za
integracijo RFID sistema za avtomatsko sledenje izdelkov, ki se lahko pogostokrat
izgubijo ali pa so ukradeni, neizkoriščeni ali pa jim je težko slediti.
Tehnologijam RFID ponujajo podporo tudi današnji integralni poslovni informacijski
sistemi ERP (Enterprise Resource Planning). Sistemi ERP služijo podjetjem kot pomoč pri
aktivnostih kot so načrtovanje proizvodnje, upravljanje materiala, upravljanje financ in
upravljanje človeških virov. Cilji sistema ERP so znižanje stroškov v dobavni verigi,
skrajšanje pretočnega časa, učinkovito deljenje informacij med različnimi oddelki v
podjetju. Tako podjetje SAP (Systems, Applications and Products) v svojih rešitvah ponuja
podporo RFID sistemov za optimizacijo upravljanja dobavne verige [21]. Sistem ERP z
integrirano tehnologijo RFID ponuja sledenje izdelkom v realnem času in omogoča
dinamično spreminjanje RFID oddajnikov na izdelkih ter brezkontaktno zbiranje
informacij o posameznem produktu.
RFID se uporablja v proizvodnih obratih za sledenje delov opreme in dela v procesu.
S tem se uspešno zmanjša prisotnost napak in okvar, poveča učinek proizvodnje in
upravljanje proizvodnje različnih verzij enakega izdelka.
Eno izmed najbolj razširjenih področij uporabe tehnologije RFID predstavljajo
brezgotovinski plačilni sistemi. Eden takšnih primerov je brezkontaktna RFID kartica
Uporabnost tehnologije RFID 19

Octopus Card podjetja Sony, ki je bila sprva namenjena plačevanju vozovnic javnega
prevoza v Hong Kongu. Njena prednost je v tem, da voznino zaračunava na podlagi števila
dejansko prevoženih postaj. Informacijski sistem preko RFID kartice zabeleži vstopno in
izstopno postajo ter sorazmerno s tem obremeni uporabnikov račun. Zaradi svoje
funkcionalnosti in preprostosti je danes njena uporaba razširjena tudi na plačevanje
izdelkov v vseh vrstah trgovin in tudi prodajnih avtomatih. Prav tako pa se uporablja tudi
kot identifikacijska kartica za dostop do delovnega mesta ali parkirišča. [22, 23]
RFID tehnologija se že dolgo časa uporablja na področju varnosti in nadzora
dostopa. Primer takšne uporabe je elektronski ključ, ki po obliki spominja na kreditno
kartico. Ta ključ omogoča oziroma omejuje uporabniku dostop do poslovnih objektov.
Tam kjer obstaja potreba po izredno strogemu nadzoru, kot je na primer bančni sistem, se
lahko dodatno zahteva vnos osebne identifikacijske številke PIN (Personal Identification
Number). Elektronski ključi se uporabljajo tudi za varovanje vrednostnih predmetov.
Pojavljajo se v sodobnejših verzijah avtomobilov, ki imajo v krmilnem sistemu nameščene
RFID čitalnike. Takšne zaščite se poslužujeta tudi avtomobilska giganta Ford in Toyota, ki
v zagonski sistem avtomobila in lastnikov elektronski ključ vgrajujeta RFID mikročip.
Kadarkoli je elektronski ključ vstavljen v ključavnico, aktivira RFID čitalnik, da si
izmenjata generirano serijsko številko. Če se številki ne ujemata, se avtomobil ne zažene.
[24].
Prednosti tehnologije RFID za podjetja, ob optimalni prilagoditvi sistema, so lahko
zelo velike. Po izračunih podjetja SmartCode [25] bi naj ameriška korporacija Wal-Mart s
tehnologijo RFID letno prihranila 8,35 milijarde dolarjev. Največji, 80 % delež, bi bil
prihranek časa, ki ga sedaj uslužbenci porabijo za branje črtne kode v dobavni verigi, saj
RFID sistem omogoča hkratno branje več RFID priponk. Z nadzorovanjem izdelkov na
zalogi bi prihranili 8%, kar zanaša 600 milijonov ameriških dolarjev. Približno enak delež
bi prihranili s preprečevanjem administrativnih napak in prevar dobaviteljev ter kraj.
Približno 4 % bi bil prihranek zaradi natančnejšega nadzora nad milijardo palet in zabojev
v distribucijskih centrih. Najmanjši delež, 180 milijonov dolarjev, bi prihranili s tem, ker
bi lahko zmanjšali zaloge na podlagi informacij o posameznem produktu.
Ena izmed prvih potrošniških aplikacij tehnologije RFID je bilo avtomatsko
brezgotovinsko cestninjenje. Kot primer vpeljave avtomatskega brezgotovinskega
cestninjenja v Sloveniji je ABC sistem plačevanja cestnine avtocest [26]. Elektronska
Uporabnost tehnologije RFID 20

tablica je ponavadi pritrjena na vetrobransko steklo vozila. Ko vozilo doseže cestninsko


postajo, RFID čitalnik pošlje signal elektronski tablici. Nato elektronska tablica pošlje
identifikacijsko številko, ki je povezana z uporabniškim računom. Na ta način uporabniki
porabijo manj časa za zbiranje denarja ali pa čakanje v vrstah za plačilo cestnine.
V Združenih državah Amerike se na široko uporablja RFID sistem za avtomatsko
plačevanje goriva. Uporabniki takšnega sistema pridobijo majhen RFID oddajnik, ki ga
lahko pritrdijo na obesek avtomobilskega ključa. Plačilo za gorivo se izvede tako, da se z
RFID obeskom približajo črpalki za gorivo. RFID sprejemnik na črpalki sprejme podatke
in jih obdela. Nato se izvede transakcija iz plačilnega računa uporabnika [27].
V Evropski uniji so leta 2004 v veljavo vstopila pravila glede potovanja malih živali.
Skladno z novo zakonodajo Evropske unije morajo domače živali na območju Evropske
unije potovati s posebnimi potnimi listi. Potni list velja kot dokaz, da žival izpolnjuje
pogoje za potovanje v države članice. V prehodnem obdobju osmih let bo vpeljan tudi
RFID mikročip, ki bo omogočal povezavo potnega lista z živaljo in s tem poenostavil
identifikacijo živali. RFID mikročip vsebuje identifikacijsko številko in se implantira pod
kožo živali. [28, 29].
Tehnologija RFID ponuja neskončne razsežnosti. Samo vprašanje časa je, kdaj bo
človeška domišljija na mnogih področjih postala realnost.
Razsežnosti tehnologije RFID se kažejo tudi v raziskavah Evropske unije s katerimi
želi doseči višjo raven kompetentnosti na globalnem nivoju. Področji logistike in
komunikacije se smatrata kot glavna opora globalizacije. Ti področji igrata pomembno
vlogo v razvoju modernega ekonomskega sistema in v vzdrževanju ekonomske rasti. Radio
frekvenčna identifikacija je postala ključna tehnologija v sektorju informacijsko
komunikacijskih tehnologij. Tehnologija RFID lahko identificira posamezen proizvod v
realnem času in zmanjša razlike med fizičnim tokom predmetov in povezanim tokom
informacij v informacijskih sistemih.
Tehnologija RFID predstavlja eno izmed razvijajočih se in visoko tehnoloških tržišč na
informacijsko komunikacijskem področju. Rast tehnološkega tržišča in tehnologije RFID
koristi tako proizvajalcem tehnologije kot tudi končnim uporabnikom. Kljub močni
mednarodni konkurenci Evropo še vedno pesti pomanjkanje standardov, harmonizacija
frekvenc in prenizka podpora raziskovanju.
Uporabnost tehnologije RFID 21

Medtem ko podjetja iz področja logistike in maloprodaje že uspešno uporabljajo


tehnologijo RFID, se ostala industrijska področja, kot je avtomobilsko, aeronavtično in
farmacevtsko, ukvarjajo z integracijo tehnologije RFID v njihove procese. Glavna uporaba
bo namenjena sledenju proizvodov in preprečevanju ponarejevanja. Tudi javni sektor je
uvedel projekte, ki temeljijo na tehnologiji RFID. Primera projektov iz javnega sektorja sta
potni list ePassport in vstopnice za svetovno nogometno prvenstvo v Nemčiji 2006. [64].

4.1.1 Primerjava tehnologije RFID in črtne kode


Nekatera največja trgovska podjetja (Wal-Mart Stores, Target in Metro Group) v
Združenih državah Amerike in drugod po svetu zahtevajo od dobaviteljev uporabo
tehnologije RFID v dobavni verigi [50]. Takšne zahteve in vedno bolj cenovno dostopna
tehnologija RFID naznanjajo, da bodo črtne kode v dobavni verigi povsem nadomeščene.
Ena izmed ključnih prednosti tehnologije RFID je, da za branje RFID značke ne
potrebuje vidnega polja. Omogoča tudi branje RFID značk na razdalji od nekaj
centimetrov pa vse do sto metrov [51], medtem ko črtna koda omogoča branje zgolj do
razdalje desetih metrov [52] in potrebuje vidno polje za vsak posamezen predmet. V
nasprotju s tehnologijo črtnih kod, tehnologija RFID omogoča sočasno branje več RFID
značk. Prav tako omogoča avtomatsko branje podatkov, kar pomeni manj človeškega
posredovanja in posledično manj napak. Tudi hitrost branja je na strani tehnologije RFID.
RFID značke so lahko prebrane veliko hitreje v primerjavi s simbolom črtne kode. Hitrost
branja lahko doseže tudi do 1000 značk na sekundo [63], medtem ko je hitrost branja črtne
kode blizu 200 simbolov na sekundo [63]. Slika 4.2 prikazuje hitrost branja RFID značk v
primerjavi s simbolom črtne kode.
Uporabnost tehnologije RFID 22

Slika 4.2: Hitrost branja tehnologije RFID in črtne kode


(prirejeno po [63])

RFID značka je lahko drugačnih oblik in dimenzij, medtem ko so dimenzije simbola


črtne kode pomembne. Če je simbol črtne kode premajhen ali pa natisnjen v slabi kvaliteti,
lahko pri branju nastopijo težave [53].
Podatki, ki jih lahko shranimo na RFID značko, omogočajo identifikacijo posameznega
objekta in sledenje objekta skozi njegov življenjski cikel (od skladišča do potrošnika).
Podatki na črtnih kodah omogočajo identifikacijo tipa objekta in ne posameznega objekta.
Za razliko od tehnologije črtnih kod, tehnologija RFID omogoča tudi spreminjanje
podatkov na posamezni RFID znački. Ko simbol črtne kode enkrat natisnemo, ga ni
mogoče spreminjati.
Kljub nenehnemu zniževanju cen RFID značk je tehnologija RFID še vedno dražja od
tehnologije črtnih kod. Slabost tehnologije RFID v primerjavi s tehnologijo črtnih kod se
kaže tudi v pomanjkanju standardov. V tehnologiji črtnih kod poznamo več sprejetih
standardov kot sta na primer EAN (European Article Number) in UPC.
Elektronska koda izdelka EPC (Electronic Product Code) vključuje vse podatke
(proizvajalec, proizvod, verzija), ki jih vsebuje črtna koda EAN.UCC (Uniform Code
Council). Ločita se v serijski številki, ki omogoča sledenje posameznega proizvoda v
dobavni verigi. Osnovni format podatkov na elektronski kodi izdelka vsebuje naslednja
polja:
Uporabnost tehnologije RFID 23

− Glava: določa dolžino, tip, strukturo, verzijo in generacijo elektronske kode izdelka
EPC;
− Številka upravitelja (EPC Manager Number): podatki organizacije, kot je na primer
predpona podjetja;
− Razred objektov (Object Class): natančno določa razred objekta;
− Serijska številka: natančno določa primerek objekta.
Polje glava in številka upravitelja sta dodeljeni preko standarda EPCglobal. Organizacija
pa je odgovorna za vzdrževanje števil v poljih, razred objektov in serijska številka [57].
Preglednica 4.2 prikazuje prednosti in slabosti obeh tehnologij, ki smo jih opisali v tem
poglavju.

Preglednica 4.2: Primerjava tehnologije RFID in črtne kode

Tehnologija RFID Tehnologija črtnih kod


Branje - ne potrebuje vidnega polja - potrebuje vidno polje
- do 100 metrov - do 30 metrov
- sočasno več RFID značk - sočasno ena črtna koda
- avtomatsko - človeško posredovanje

Oblika - različne velikosti - določene dimenzije

Podatki - možna identifikacija posameznega - identifikacija tipa objekta


objekta - podatke ne moremo spreminjati
- podatke lahko dinamično spremenimo
(ponovna uporaba)

Strošek - dražja tehnologija - cenovno dostopna

Standardi - pomanjkanje standardov (nekaj - sprejeti standardi


standardov bomo opisali v nadaljevanju)

4.1.2 Podpora tehnologije RFID na mobilnih napravah

Eno izmed prvih podjetij, ki je na tržišču ponudilo mobilni telefonski aparat s podporo
tehnologije RFID, je Nokia in sicer z modeloma Nokia 5140 in Nokia 3220. Podporo
zagotavlja s pomočjo dodatnega ohišja. Prav tako pa z dodatnim razvojnim okoljem Nokia
NFC (Near Field Communication) & RFID SDK omogoča izdelovanje J2ME (Java 2
Platform Micro Edition) aplikacij.
Uporabnost tehnologije RFID 24

Dlančniki zagotavljajo podporo za branje in pisanje na RFID oddajnike v večini


primerov preko dodatnih naprav. Podjetje Sapago je izdelalo RFID čitalnik v obliki pisala,
ki komunicira z dlančnikom preko povezave Bluetooth. Uporablja se v umetnostnih
galerijah, kjer se na željo uporabnika izpišejo na dlančnik dodatne informacije o
posamezni umetnini [30]. Podjetje Socket Communications izdeluje RFID čitalnike, ki jih
lahko vstavimo v dlančnike preko CF (Compact Flash) reže [31]. Dlančnik lahko na ta
način zajema in obdeluje podatke iz RFID oddajnika, katerega frekvenčno območje je
13.56 MHz. Za razvoj lastnih aplikacij pa podjetje ponuja razvojno okolje SocketScan
SDK.

4.2 Standardi in dogovori tehnologije RFID

Standardi so ključnega pomena za veliko RFID aplikacij, kot so na primer plačilni


sistem, sledenje izdelkov, upravljanje dobavne verige. Uporaba odprtih mednarodnih
standardov je potrebna za dosego določene stopnje varnosti, kvalitete in konsistentnosti na
večini področij tehnologije RFID. Trenutno imamo na voljo obstoječe ali predlagane
standarde, ki narekujejo način komunikacije med RFID čitalnikom in RFID priponko,
strukturo podatkov, testiranja RFID izdelkov in uporabo v nekaterih aplikacijah.
Mednarodna organizacija za standardizacijo ISO (International Standards
Organization) je izdelala standard za sledenje živali s tehnologijo RFID. Standard ISO
11784 definira strukturo identifikacijske številke in vsebino informacij za žival. Standard
ISO 11785 določa kako je RFID oddajnik aktiviran in kako se shranjeni podatki prenesejo
k RFID sprejemniku [32].
Za RFID priponke, ki se uporabljajo v brezgotovinskih plačilnih sistemih, je
organizacija ISO razvila standarda ISO 14443 in ISO 15693. Oba standarda definirata
delovno frekvenco 13.56 MHz. Domet branja oziroma pisanja je v prvem standardu do 10
cm, medtem ko drugi standard opisuje večje razdalje (do 1.5 metra) [33, 34].
Za preverjanje skladnosti med RFID čitalnikom in priponko je razvit ISO 18047, za
preizkušanje delovanja RFID čitalnikov in bralcev pa ISO 18046.
Organizacija ISO je razvila RFID standarde za avtomatsko identifikacijo in za
upravljanje predmetov. Ti standardi so znani kot niz ISO 18000 standardov, ki opisujejo
protokol za komunikacijo RFID čitalnikov in oddajnikov za sisteme kot je sledenje
Uporabnost tehnologije RFID 25

izdelkov v dobavni verigi. Standardi obsegajo poglavitna frekvenčna območja na globalni


ravni. Sestavljeni so iz sedmih delov:
− ISO/IEC 18000-1:2004; Splošni parametri zračne komunikacije za globalno
sprejete frekvence.
− ISO/IEC 18000-2:2004; Parametri za zračno komunikacijo pod frekvenco 135
kHz.
− ISO/IEC 18000-3:2004; Parametri za zračno komunikacijo pri frekvenci 13,56
MHz.
− ISO/IEC 18000-4:2004; Parametri za zračno komunikacijo pri frekvenci 2,45
GHz.
− ISO/IEC 18000-6:2004; Parametri za zračno komunikacijo od frekvence 860
MHz do 960 MHz
− ISO/IEC 18000-7:2004; Parametri za zračno komunikacijo pri frekvenci 433
MHz.
EPCglobal je mednarodna neprofitna organizacija, ki sta jo ustanovili organizaciji EAN
International in Uniform Code Council z namenom standardizacije in uvajanja RFID
tehnologije na področju logistike preskrbovalnih verig. Naloga organizacije EPCglobal je
uvesti in vzdrževati omrežje EPCglobal Network kot niz standardov, ki bodo poenotili in
pocenili implementacijo RFID tehnologije v svetovne oskrbovalne verige. S tem ciljem
razvija standarde, ki urejajo delovanje tehnologije na področju strojne kot tudi programske
opreme [35]. Najbolj razširjen standard organizacije EPCglobal je standard EPC Gen 2, ki
definira UHV RFID protokol za komunikacijo v frekvenčnem območju 860 MHz – 960
MHz, zahteve za fizično komunikacijo med RFID oddajniki in sprejemniki in zahteve za
delovne postopke in ukaze med RFID oddajniki in sprejemniki. Sestavni del omrežja
EPCglobal Network je elektronska koda izdelka Electronic Product Code (EPC), ki razen
identifikacije izdelka omogoča tudi dostop do drugih informacij, kot so izvor, verzija in
serijska številka produkta.
Tehnologija NFC je razvita na osnovi standardov ISO, ECMA (European Computer
Manufacturers Association) in ETSI (European Telecommunications Standard Institute).
Omogoča varno komunikacijo na kratke razdalje med elektronskimi napravami, kot so
mobilni telefoni, dlančniki, računalniki in terminali za plačevanje. Delovno področje
tehnologije NFC je pri frekvenci 13.56 MHz in razdalji nekaj centimetrov [36].
Uporabnost tehnologije RFID 26

4.3 Zagotavljanje varnosti pri uporabi tehnologije RFID

Vseprisotne informacijske rešitve postavljajo v ospredje končnega uporabnika, od


katerega je odvisno, kako bo inovativne vseprisotne tehnologije sprejel. Eden izmed
dejavnikov, ali bo uporabnik dejansko uporabljal določeno napravo, je vsekakor
zagotavljanje varnosti in zasebnosti pri uporabi. Kljub temu, da je tehnologija relativno
mlada, so nekateri sistemi že bili uspešno ogroženi. Na univerzi Johns Hopkins University
[49] so v okviru akademskih vaj dešifrirali RFID sistem pri avtomatskem plačevanju
goriva na črpalkah, ki se že vrsto let uporablja v Združenih državah Amerike.
Za pravilno delovanje sistema je potrebno zagotoviti tri osnovna načela informacijske
varnosti [47, 48]:
- zaupnost: podatki in računalniški viri so zaupni, če ostanejo vidni samo
avtoriziranim uporabnikom;
- integriteto: podatki in računalniški viri so celoviti dokler je njihovo stanje
spremenjeno z avtoriziranimi procesi;
- dostopnost: podatki in računalniški viri so dostopni kadar lahko avtoriziran
uporabnik z njimi razpolaga v primernem formatu in znotraj razumnega časa.
Cilj napada je lahko celoten sistem ali pa katerikoli njegov sestavni del. V
informacijskih tehnologijah se zagotavljanje varnosti običajno osredotoča predvsem na
varovanje podatkov. Kadar želimo implementirati varnost v RFID sistemu, moramo biti
pozorni na sestavne dele sistema, ki imajo večjo vrednost kot dejanski podatki. Podatki v
RFID sistemu lahko ostanejo neogroženi, a kljub temu organizacija utrpi ogromno škodo.
Na primer: trgovina uporablja RFID značke za označevanje svojih izdelkov. Na teh
značkah so zapisani podatki kot je na primer cena izdelka. RFID značko nekega izdelka v
trgovini lahko prikrojimo tako, da vrednost cene izdelka zmanjšamo. S tem bo trgovina
utrpela izgubo, saj je za določen izdelek prejela manj sredstev kot bi jih morala sicer. Pri
tem podatkovna baza RFID sistema ni bila direktno ogrožena in podatki v podatkovni bazi
niso bili spremenjeni ali izbrisani. Kljub temu je bila prevara izvedena [47].
RFID sistem je sestavljen iz treh ključnih komponent: RFID čitalnika, RFID značke in
sistema za procesiranje podatkov (podatkovna baza sistema). Tako kot je RFID sistem
sestavljen iz več osnovnih komponent, tako obstaja tudi več metod za napad na sistem.
Uporabnost tehnologije RFID 27

Posamezna metoda se nanaša na določeno komponento RIFD sistema. Nekatere mogoče


metode napadov na RFID sistem so tako:
− manipuliranje radiofrekvenčnega območja:
Eden izmed najpreprostejših metod za napad na RFID sistem je preprečiti
odkrivanje in branje RFID značke. Številni kovinski predmeti so zmožni preprečiti
oddajanje radiofrekvenčnega signala. Vse kar moramo storiti je, da RFID značko
ovijemo v aluminijasto folijo in RFID čitalnik ne bo zmogel prebrati podatkov.
− manipuliranje podatkov na RFID znački:
RFID značke omogočajo branje in pisanje podatkov. Odvisno od tipa RFID značke,
lahko morebitni tat spremeni podatke posamezne RFID značke in s tem izvede
prevaro.
− manipuliranje podatkov v podatkovni bazi sistema:
V RFID sistemu je podatkovna baza najbolj oddaljena komponenta od RFID
značke. Kljub temu je potrebno zagotovit varnostne ukrepe, saj imajo podatki v
podatkovni bazi veliko vrednost. Ponavadi so v podatkovni bazi sistema shranjeni
podatki o kreditnih karticah ali pa poslovne skrivnosti, ki jih moramo obvezno
zavarovati.
V prejšnjem odstavku smo pregledali metode napadov glede na ključne komponente
RFID sistema. Napade na RFID sistemu lahko delimo tudi glede na njihov osnovni namen.
Oseba, ki napade RFID sistem lahko teži k različnim ciljem. Cilje posameznega napada je
mogoče klasificirati tako [65]:
− prikrito opazovanje: napadalec pridobi neavtoriziran dostop do informacij;
− prevara: napadalec prevara uporabnika RFID sistema s posredovanjem napačnih
informacij;
− zavrnitev storitve (DoS – Denial of Service): dostop do funkcionalnosti RFID
sistema je ogrožen;
− zaščita zasebnosti: ker napadalec verjame, da njegovo zasebnost ogroža RFID
sistem, le-tega napade.
Prvi način, s katerim sistem zagotavlja varnost, je nadzorovanje dostopa. To pomeni, da
mora sistem preveriti, kdo se lahko prijavi in ali je uporabnik veljaven. Pri poskusu prijave
sistemu povemo kdo smo, nakar sistem od nas zahteva, da to dokažemo s posredovanjem
informacij, ki se ujemajo s shranjenimi v sistemu. Ta koraka sta znana kot identifikacija in
Uporabnost tehnologije RFID 28

avtorizacija. Da sistem opravi avtentikacijo uporabniške identitete, obstajajo trije klasični


načini [48]:
- nekaj, kar uporabnik je:
to so ponavadi biometrični podatki, kot je na primer prstni odtis, uporabnikov
govor, podpis;
- nekaj, kar uporabnik ima:
primeri so ključi, značke, pametne kartice, ki jih moramo uporabiti pri vstopu v
sistem;
- nekaj, kar uporabnik ve:
najbolj znan primer je uporabniško geslo, ki pomeni zasebno informacijo, znano
samo uporabniku.
Noben izmed teh načinov ne zagotavlja najvišjega nivoja varnosti. Na primer: uporabniško
geslo lahko pozabimo ali pa ga komu posodimo. V kolikor uporabimo kombinacijo
opisanih načinov se stopnja varnosti znatno zviša. Kombinacija dveh načinov se uporablja
pri plačevanju s kreditnimi karticami. Kreditna kartica je nekaj kar uporabnik ima, medtem
ko je PIN koda nekaj kar uporabnik ve [47].
V nadaljevanju bomo opisali nekaj možnih metod kako napasti RFID sistem v želji po
nelegalni pridobitvi podatkov in kako lahko nadzorujemo dostop do takšnih sistemov.
Pregledali bomo nekaj najpogostejših napadov na RFID sistem in predstavili napotke kako
se lahko tem napadom izognemo.

Poplavljanje (Flooding)
Poplavljanje se nanaša na različne tehnike onesposobitve storitve sistema z
vstavljanjem velike količine podatkov [48]. V RFID sistemu lahko poplavljanje povzroči
večje število RFID značk postavljenih pred RFID čitalnik. Na ta način bi se generirala
velika količina podatkov na enkrat, česar sistem ne bi zmogel ali pa bi ostal dlje časa
obremenjen. Tako bi bilo mogoče odtujiti izdelke, ki so označeni z RFID značko, brez da
bi to sistem pravilno zabeležil in kakorkoli ukrepal [47, 48].
Poplavljanju se lahko izognemo tako, da ustvarimo filtriranje RFID značk z
materialom, ki ne prepušča radiofrekvenčnih valovanj. S tem dosežemo, da RFID čitalnik
ne prebere vseh značk naenkrat [47].
Uporabnost tehnologije RFID 29

Kopiranje RFID značke


Podatke iz veljavne RFID značke je mogoče prekopirati in jih nato shraniti na
ponarejeno RFID značko. Zaradi narave RFID značke lahko morebitni nepridiprav
prekopira podatke, ne da bi se tega sploh zavedali. Potrebno je imeti samo RFID čitalnik,
ki zmore prebrati RFID značko in nato zapisati prekopirane podatke na drugo RFID
značko.
Problemu kopiranja značk se lahko izognemo z natančnejšim razvojem sistema za
procesiranje podatkov. Na primer RFID značka ne more biti istočasno prisotna na polici
prodajalne in odnesena iz prodajalne [47]. To pomeni, da bi moral sistem za vsak nakup
najprej preveriti ali ta izdelek obstaja na polici in šele nato omogočiti transakcijo iz
uporabnikovega računa.

Sledenje (Tracking)
RFID čitalnik lahko na raznih položajih beleži RFID značke, ki so lahko povezane s
posameznikovo identiteto. Problem pri tem je, da so posamezniki neprostovoljno vključeni
v sistem sledenja in zbiranja podatkov. Nepridiprav, opremljen z RFID čitalnikom, lahko
na ta način ugotovi, kaj ima neka oseba oblečeno in če se jo splača ugrabiti [47].
Najbolj enostavna rešitev tega napada bi bila onesposobitev RFID značke takoj ko je
več ne potrebujemo oziroma takoj ko prodajalno zapustimo. V primeru, da kupec z
izdelkom ni zadovoljen, bi to predstavljalo težavo, saj informacij o izdelku ne moremo več
pridobiti. Standard EPCglobal določa ukaz za uničenje (“kill command”) RFID značke
[66]. Ta ukaz značko trajno deaktivira. Negova slabost je v tem, da potrošnik ne more
ugotoviti ali je njegova značka bila uničena, prav tako pa lahko neavtorizirano uničenje
povzroči za potrošnika neljube posledice.
Podjetje IBM je izdelalo RFID značko Clipped Tag, ki predstavlja rešitev za
potrošnikovo zasebnost. Značka Clipped Tag omogoča branje na razdalji do desetih
metrov in se uporablja za označevanje izdelkov. Posebnost te RFID značke je, da ji je moč
odvzeti antenski del s čimer omogočimo branje zgolj na slab centimeter. Na ta način lahko
potrošnik sam poskrbi za svojo zasebnost. Slika 4.3 prikazuje shemo RFID značke podjetja
IBM. Na shemi je prikazana zareza, ki nakazuje kje odtrgati antenski del nalepke in s tem
zaščititi zasebnost posameznega uporabnika [55].
Uporabnost tehnologije RFID 30

Slika 4.3: Shema RFID značke Clipped Tag podjetja IBM


(prirejeno po [55])

Lažni dogodki
Podatki iz RFID značke se odčitajo vsakokrat, ko značka vstopi v radiofrekvenčno
področje čitalnika. RFID sistem te podatke sprejme in jih obdela. Na primer organizacija je
dobila pošiljko izdelkov in te izdelke shranila v skladišče. Ob vhodu v skladišče je RFID
sistem odčital posamezne izdelke in podatke shranil v podatkovno bazo sistema. Naslednji
dan dobi delavec zadolžitev, da mora izdelke premestiti na novo lokacijo. Med
premeščanjem izdelkov delavec prehodi radiofrekvenčno območje RFID čitalnika na
vhodu skladišča. Tako bodo izdelki ponovno zabeleženi kar pomeni, da podatkovna baza
vsebuje lažne podatke [47].
RFID sistem mora razumeti kontekst, v katerem so bili dogodki generirani in nato
povezati posamezno RFID značko z dogodkom. Ko je to doseženo, se lahko sprejme
poslovna odločitev, kako ravnati z dogodkom [47].

Vstavljanje SQL stavkov (SQL Injection)


Ta vrsta napada je zelo dobro znana, kadar govorimo o varnosti spletnih strani. Tudi
RFID sistem ni imun na tovrstne napade. RFID značka v večini primerov vsebuje
edinstveno identifikacijsko številko in nekoliko prostora za uporabniško definirane
podatke. RFID čitalnik lahko na RFID značko vpiše in prebere podatke. Ti podatki so
potem poslani sistemu za procesiranje podatkov, ta pa jih primerno obdela. Slabo zasnovan
sistem za procesiranje podatkov in spremenjeni podatki na RFID kartici lahko RFID
sistemu povzročijo veliko škodo. Na primer prtljaga na letališču je opremljena z RFID
značko, ki vsebuje podatke o cilju potovanja. Ko RFID sistem sprejeme podatke iz značke,
Uporabnost tehnologije RFID 31

izvede naslednji povpraševalni izraz: "select * from location_table where airport


= <tag data>.". Vsiljivec lahko podatke na RFID znački spremeni iz "Maribor" na

"Maribor; shutdown". S spremenjenimi podatki na RFID znački bi povpraševalni izraz

bil takšen: "select * from location_table where airport = Maribor;

shutdown.". Ta izraz lahko vodi do ustavitve podatkovne baze in s tem onemogoči

delovanje sistema za upravljanje s prtljago na letališču [47].


V tem primeru mora RFID sistem preveriti veljavnost podatkov na RFID znački in šele
nato izvesti posamezno akcijo. Na primer pred izvajanjem povpraševalnega izraza lahko
preverimo ali so na RFID kartici vpisani samo pričakovani znaki. S tem bi lahko izločili
podpičje, ki je bilo dodano na RFID značko. Tako povpraševalni izraz ne bi ustavil
delovanja podatkovne baze.
V programskem jeziku Java lahko v ta namen uporabimo razred PreparedStatement.
Ta razred omogoča, da ločimo logiko povpraševalnega stavka in podatke, ki jih moramo
posredovat pri povpraševalnem izrazu.

Prekoračitev medpomnilnika
Zasnova RFID sistema je takšna, da sprejme iz RFID značke podatke, ki so vnaprej
definirane velikosti. Sistem za procesiranje podatkov je napisan v programskem jeziku C
ali C++ in prebere podatke iz RFID značke v naprej definirano podatkovno strukturo
določene velikosti. Če se vsiljivec približa z RFID značko, ki vsebuje večjo količino
podatkov, lahko prisili sistem za procesiranje podatkov v prekoračitev pomnilnika [47].
Sistem za procesiranje podatkov mora zagotovit zadostno količino varovalnih in
kontrolnih točk za preverjanje velikosti in pravilnosti podatkov na RFID kartici [47].

Ponavljanje sporočil
Ponavljanje sporočil se pojavi, kadar nekdo med prenosom snema veljavno sporočilo in
to sporočilo ponovno pošlje [48]. V RFID sistemu bi lahko napadalec sistema prestregel
sporočilo, ki se pošilja med čitalnikom in značko. Prestreženo sporočilo bi nato poslal
sistemu za procesiranje podatkov in s tem dosegel prevaro.
Takšnim napadom se lahko izognemo z zaščito protokola za komunikacijo med RFID
značko in RFID čitalnikom. Tukaj pridejo v poštev enkripcijski algoritmi, ki jih lahko
Uporabnost tehnologije RFID 32

namestimo na RFID značko. Ta postopek preprečuje zlorabo podatkov in omejuje dostop


do vsebine na RFID značkah. RFID značka, ki vsebuje enkripcijski algoritem, potrebuje
svoj interni procesor za izvedbo algoritma oziroma kodiranja. To pa pomeni tudi znatno
višjo ceno RFID značke.

4.4 Programski vmesniki

V nadaljevanju bomo podrobneje pregledali programska vmesnika, ki omogočata


razvoj lastnih aplikacij, za mobilne naprave. Programski vmesnik Contactless
Communication API (Application Programming Interface) je namenjen razvoju aplikacij
na platformi Java ME, programski vmesnik SocketScan Managed API pa razvoju aplikacij
na platformi .NET.

4.4.1 Značilnosti programskega vmesnika Contactless Communication API

Podjetje Sun Microsystems razvija podporo za tehnologije RFID na platformi J2ME s


pomočjo izbirnega paketa JSR 257: Contactless Communication API. Specifikacija
definira programski vmesnik, ki bo omogočal J2ME aplikacijam dostop do informacij
preko brezkontaktnih naprav, kot je na primer RFID značka in sodi v kategorijo
programske opreme v vseprisotnih informacijskih rešitvah ter predpisuje mehanizem za
odkrivanje brezkontaktnih naprav in komunikacijo med njimi. Takšna komunikacija je s
stališča vseprisotnih informacijskih rešitev pomembna, saj od uporabnika ne zahteva
posebnega napora za dosego uspešne komunikacije med napravami. Programski vmesnik
Contactless Communication API je še trenutno v razvoju in tako ni vključen v zadnji
verziji razvojnega okolja Sun Java Wireless Toolkit 2.3. Kateri izbirni paketi so vključeni
je odvisno od naprave do naprave. Tako ni mogoče uporabiti določenega izbirnega paketa,
če le ta ni nameščen kot del izvajalnega okolja v posamezni napravi. Aplikacije lahko
preverijo prisotnost programskega vmesnika Contactless Communication API na
posamezni napravi s poizvedbo vrednosti sistemske lastnosti
»microedition.contactless.version«, kot na primer:
Uporabnost tehnologije RFID 33

1: package pervasive.microedition.properties;
2:
3: import javax.microedition.lcdui.*;
4: import javax.microedition.midlet.MIDlet;
5:
6: public class PSystemProperties extends MIDlet {
7: private Form mMainForm;
8:
9: public PSystemProperties() {
10: mMainForm = new Form("PSystemProperties");
11:
12: StringItem version = new StringItem(null,
13: "Vrednosti nekaterih sistemskih lastnosti:\n");
14:
15: mMainForm.append(version);
16:
17: appendSystemProperties();
18: }
19:
20: protected void appendSystemProperties() {
21: StringItem property;
22:
23: property = new StringItem(null, "microedition.configuration = "
24: + System.getProperty("microedition.configuration"));
25: mMainForm.append(property);
26: mMainForm.append("\n");
27:
28: property = new StringItem(null, "microedition.profiles = "
29: + System.getProperty("microedition.profiles"));
30: mMainForm.append(property);
31: mMainForm.append("\n");
32:
33: property = new StringItem(null, "microedition.platform = "
34: + System.getProperty("microedition.platform"));
35: mMainForm.append(property);
36: mMainForm.append("\n");
37:
38: property = new StringItem(null, "microedition.contactless.version = "
39: + System.getProperty("microedition.contactless.version"));
40: mMainForm.append(property);
41: }
42:
43: public void startApp() {
44: Display.getDisplay(this).setCurrent(mMainForm);
45: }
46:
47: public void pauseApp() {
48: mMainForm = null;
49: }
50:
51: public void destroyApp(boolean unconditional) {
52: }
53: }

Zgoraj navedene vrstice kode predstavljajo majhno J2ME aplikacijo, s pomočjo katere
smo preverili nekatere lastnosti J2ME platforme. V vrstici 39 je ukaz za poizvedbo
sistemske lastnosti »microedition.contactless.version«. Na sliki 4.4 so prikazani
rezultati poizvedbe nekaterih sistemskih lastnosti na posnemovalniku telefonskega aparata.
Za zadnjo verzijo programskega vmesnika 0.95 Contactless Communication API mora
poizvedba vrniti vrednost »1.0«. V našem primeru je bila vrnjena vrednost enaka »null«,
kar pomeni, da programskega vmesnika Contactless Communication API ni mogoče
uporabiti.
Uporabnost tehnologije RFID 34

Slika 4.4: Vrednosti nekaterih J2ME sistemskih lastnosti

4.4.2 Zgradba programskega vmesnika Contactless Communication API

Programski vmesnik Contactless Communication API vsebuje pet Java paketov. Paket
javax.microedition.contactless omogoča odkrivanje ciljnih označevalcev in ponuja
Uporabnost tehnologije RFID 35

podporne razrede, ki so značilni za vse označevalce. Ostali paketi omogočajo


komunikacijo za posamezne naprave. Slika 4.5 prikazuje celotno zgradbo programskega
vmesnika in zveze med posameznimi paketi.

Slika 4.5: Programski vmesnik Contactless Communication API


(prirejeno po [37])

Odkrivanje naprave je začetna točka programskega vmesnika, ki poteka po


dogodkovnem modelu s pomočjo razreda DiscoveryManager. Aplikacija se mora najprej s
primerkom razreda DiscoveryManager registrirati, da bo sprejemala obvestila o odkritih
napravah. Ko je nova naprava odkrita, razred DiscoveryManager proži njegove poslušalce
Uporabnost tehnologije RFID 36

tipa TargetListener in jim poda polje objektov TargetProperty. Vsak podan objekt
predstavlja novo odkrito napravo in vsebuje naslov URL, potreben za vzpostavitev
povezave. Povezave do raznovrstnih brezkontaktnih naprav so zasnovane preko ogrodja
J2ME General Connection Framework. To ogrodje omogoča splošen pristop do
povezljivosti. Splošen je zato, ker ponuja običajne programske vmesnike za vse osnovne
tipe povezav in narekuje izbirnim paketom, da podajo implementacijo za specifične
povezave. Ogrodje J2ME General Connection Framework definira paket
javax.microedition.io [38.]. Naslednje vrstice kode so izvzete iz dokumentacije

programskega vmesnika Contactless Communication API in ponazarjajo zgoraj opisan


potek odkrivanja brezkontaktnih naprav.

1: import javax.microedition.contactless.*;
2:
3: /**
4: * Example class of how to discover targets using JSR 257 Contactless
5: * Communication API
6: */
7: public class CCAPIExample implements TargetListener {
8: private DiscoveryManager dm;
9:
10: public CCAPIExample() {
11: registerTargetToDiscovery();
12: }
13:
14: public void registerTargetToDiscovery() {
15: // Check that NDEF_TAG target is supported
16: TargetType[] targets = DiscoveryManager.getSupportedTargetTypes();
17: boolean supported = false;
18: for (int i = 0; i < targets.length; i++) {
19: if (targets[i].equals(TargetType.NDEF_TAG)) {
20: supported = true;
21: }
22: }
23: if (supported) {
24: // Get DiscoveryManager instance and
25: // set TargetListener for NDEF_TAG target
26: dm = DiscoveryManager.getInstance();
27: try {
28: dm.addTargetListener(this, TargetType.NDEF_TAG);
29: } catch (ContactlessException ce) {
30: // handle exception
31:
32: }
33: }
34: }
35:
36: public void targetDetected(TargetProperties[] prop) {
37: // handle notification
38: }
39: }

4.4.3 Značilnosti programskega vmesnika SocketScan Managed API


Uporabnost tehnologije RFID 37

Podjetje Socket Communications omogoča razvoj lastnih aplikacij v .NET


kompatibilnem programskem jeziku kot sta Visual Basic .NET in C# .NET s programskim
vmesnikom SocketScan Managed API. S tem programskim vmesnikom so podprti različni
izdelki podjetja, ki jih lahko priključimo na dlančnik oziroma žepni računalnik. Tako lahko
programsko preberemo podatke iz črtne kode, RFID značke in magnetnega traku.
Funkcionalnosti, ki so skupne vsem napravam in jih lahko dosežemo z implementacijo
programskega vmesnika, so:
- sprejem obvestila o vstavljanju in odstranjevanju naprave,
- dognanje tipa in lastnosti vstavljene bralne naprave,
- proženje in prekinitev branja na podprti napravi,
- sprejem obvestila o prebranih podatkih.
Programski vmesnik vrne podatke, prebrane s pomočjo bralne naprave, nakar lahko
aplikacija te podatke poljubno obdela pred končno uporabo. Upravljanje s podatki poteka
preko uporabe dogodkov in delegatov, v primeru ko pride do napake programski vmesnik
javi izjemo.

4.4.4 Zgradba programskega vmesnika SocketScan Managed API

Vsi definirani razredi so zbrani v imenskem prostoru SocketCommunications.Scan.


Programski vmesnik ponuja vso funkcionalnost bralne naprave preko razreda Scanner, ki
hkrati omogoča tudi registracijo poslušalcev na naslednje dogodke:
− ScannerInsertion: registrirani poslušalci dobijo obvestilo, kadar RFID čitalnik
vstavimo v dlančnik;
− ScannerRemval: registrirani poslušalci dobijo obvestilo, kadar RFID čitalnik
odstranimo iz dlančnika;
− ScannerData: registrirani poslušalci dobijo obvestila in podatke o opravljenih
operacijah (branje, pisanje, …) RFID čitalnika;
− ScannerCHS: registrirani poslušalci dobijo obvestila, specifična za brezžični
čitalnik črtnih kod.
Uporabnost tehnologije RFID 38

V diplomski nalogi smo se osredotočili na tehnologijo RFID in bomo v nadaljevanju


opisali nekaj najpogosteje uporabljenih metod, ki se nanašajo na RFID čitalnik
programskega vmesnika SocketScan Managed API.

ScanRFIDSelectTag()
Metoda aktivira RFID čitalnik za odkrivanje in izbiro RFID značk, ki se nahajajo v
radiofrekvenčnem polju čitalnika. RFID čitalnik podpira štiri načine izbiranja RFID značk,
ki jih določimo z vrednostmi argumentov metode. Načine opisuje preglednica 4.3.

Preglednica 4.3: Načini izbire RFID značk


(prirejeno po [44])

Način izbire Vrednost Vrednost Opis


RFID značke argumenta argumenta
LoopMode InventoryMode

Ena značka FALSE FALSE Izbira prve značke v radiofrekvenčnem polju


čitalnika.

Ena značka TRUE FALSE Zaporedna izbira prve značke v


zaporedoma radiofrekvenčnem polju čitalnika.

Vse prisotne FALSE TRUE Ta način vrne vse identifikacijske številke


značke značk, ki se nahajajo v radiofrekvenčnem
polju čitalnika.

Vse prisotne TRUE TRUE Ta način vrne identifikacijske številke vseh


značke značk v radiofrekvenčnem polju čitalnika. Ne
zaporedoma ponavlja identifikacijskih številk, razen če
značka zapusti in vstopi v radiofrekvenčno
polje čitalnika.

Namen te metode je, da ugotovimo, katere RFID značke se nahajajo v dosegu


radiofrekvenčnega polja čitalnika in jih nato izberemo za branje ali pisanje. S pomočjo
zadnjih dveh načinov v tabeli ugotovimo, katere značke se nahajajo v radiofrekvenčnem
polju, nato pa uporabimo enega izmed prvih dveh za izbiro značke. Ko je značka v stanju
»izbrana«, je pripravljena na klice metod za branje in pisanje na značko.

ScanRFIDReadTag()
Prebere enega ali več podatkovnih blokov RIFD značke, ki smo jo izbrali z metodo
ScanRFIDSelectTag(). Preko slednje pridobimo identifikacijsko številko in tip RFID
Uporabnost tehnologije RFID 39

značke, z metodo ScanRFIDReadTag() pa preberemo podatke iz podatkovnih blokov


značke.

ScanRFIDWriteTag()

Ta metoda omogoča pisanje na enega ali več podatkovnih blokov RFID značke.
Podobno kot pri prejšnji metodi mora tudi tukaj biti RFID značka v stanju »izbrana«, da
lahko uspešno zapišemo podatke.

ScanRFIDGetData()
Metoda vrne odgovor ukaza ali podatke iz zadnje klicane funkcije. Na primer, če smo
uporabili metodo za branje RFID značk, bomo s pomočjo metode ScanRFIDGetData()
dobili informacijo o tem, ali se je ukaz uspešno izvedel. V kolikor je bil klic metode
pozitiven, lahko pridobimo tudi podatke iz značke. Metodo ponavadi uporabimo, ko
dobimo sporočilo dogodka ScannerData.

4.4.5 Primerjava programskih vmesnikov Contactless Communication API


in SocketScan Managed API

Programski vmesnik Contactless Communication API omogoča razvoj aplikacij na


platformi Java ME, medtem ko programski vmesnik SocketScan Managed API na
platformi Microsoft Windows CE. Kljub temu, da sta programska vmesnika namenjena
razvijanju aplikacij na čisto drugačnih platformah, je mogoče najti podobnosti med njima.
Oba temeljita na dogodkovnem modelu, preko katerega dobimo sporočila o obnašanju
posamezne naprave. Prednost programskega vmesnika Contactless Communication API je
v tem, da bo omogočal komunikacijo med napravami raznih proizvajalcev. Programski
vmesnik SocketScan Managed API je produkt podjetja Socket Communications in je
namenjen samo njihovim napravam. Programskega vmesnika Contactless Communication
API nismo mogli preizkusiti na konkretnih napravah, saj je še v stanju razvoja skozi proces
Java Community Process, v katerem sodelujejo vplivna računalniška podjetja in
posamezniki.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 40

5 ZASNOVA IN RAZVOJ RFID APLIKACIJE ZA REGISTRACIJO


UDELEŽENCEV

Za praktični del diplomske naloge smo se odločili za razvoj aplikacije, ki bo tekla na


dlančniku. Aplikacijo bomo uporabili ob vstopu v dvorano za registracijo udeležencev.
Udeleženci se ob vstopu identificirajo z RFID značko. Glede na dostopnost naprav in
razvojnega okolja smo uporabili RFID čitalnik podjetja Socket Communications in
razvojno okolje SocketScan SDK.
Aplikacija omogoča kreiranje novega uporabnika, pregled vseh uporabnikov in iskanje
posameznih uporabnikov. Z aplikacijo je možno kreirati nov dogodek, na katerega lahko
registriramo določenega uporabnika. Pri kreiranju novega uporabnika aplikacija zahteva
identifikacijsko številko, ki je prisotna na uporabnikovi RFID priponki. Ta številka
enolično določa in povezuje prebrane podatke iz RFID priponke in vnesene osebne
podatke uporabnika. Z registracijo omogočimo posameznemu uporabniku dostop do
izbranega dogodka. Vsi ti postopki in zbrani podatki omogočajo identifikacijo uporabnika,
ki se želi udeležiti posameznega dogodka. Dogodek lahko predstavlja na primer
konferenco OTS'2006. V koliko se želi Janez Novak udeležiti konference, je potrebno
njegove osebne podatke (na primer ime in priimek) in identifikacijsko številko shraniti. Ko
imamo podatke shranjene, ga registriramo na dogodek konferenca OTS'2006 in mu s tem
omogočimo vstop na konferenco.
Z aplikacijo želimo ponazoriti primer vseprisotnih informacijskih rešitev v realnem
uporabniškem okolju in pokazati kakšno vlogo ima pri tem tehnologija RFID.

5.1 Opis sestavnih delov aplikacije

Za razvoj aplikacije smo potrebovali dlančnik, ki bo omogočal branje in pisanje na


RFID priponke. Na tržišču še trenutno ni dostopen dlančnik, ki bi imel integrirano podporo
za tehnologije RFID, tako kot jih ima sedaj večina podporo za tehnologije kot so WLAN,
Bluetooth in IR. Iskali smo RFID napravo, ki bi jo lahko priključili na dlančnik. Pri vsem
tem je predstavljalo veliko vlogo razvojno ogrodje, ki bi omogočilo komunikacijo med
razvito aplikacijo in prisotno RFID napravo. Za izdelavo aplikacije smo tako uporabili
naslednje komponente:
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 41

− dlančnik HP iPAQ hx2410,


− brezkontaktne kartice i-code II,
− RFID čitalnik CF RFID Reader Card,
− razvojno ogrodje .NET Compact Framework,
− podatkovno bazo Microsoft SQL Server CE in
− razvojno ogrodje SocketScan Managed API.

Dlančnik HP iPAQ hx2410


Gre za dlančnik podjetja Hewlett-Packard iz serije proizvodov z oznako hx2000. Z
vgrajeno brezžično tehnologijo ponuja izjemno uporabnost v poslovnem svetu. Za izdelavo
aplikacije je bilo pomembno, da ima vgrajen vmesnik Compact Flash, preko katerega
lahko vstavimo RFID čitalnik. Nameščen operacijski sistem Microsoft Windows Mobile
2003 je narekoval uporabo razvojnega okolja Microsoft Visual Studio .NET.

Brezkontaktna kartica i-code II


Brezkontaktna kartica i-code II podpira branje in pisanje podatkov, deluje na
frekvenčnem območju 13,56 MHz. Je popolnoma kompatibilna s standardoma ISO/IEC
15693 del -2 in ISO/IEC 15693 del -3. Slika 5.1 prikazuje strukturo pomnilnika brez-
kontaktne kartice. Pomnilnik je razdeljen na 16 blokov in predstavlja najmanjšo enoto, s
katere lahko beremo ali pišemo. Vsak blok je velik 32 bitov in ga lahko trajno zaklenemo.
Edinstvena identifikacijska številka zajema 64 bitov. Njena vrednost je določena s strani
tovarne in je programirana v procesu proizvodnje.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 42

Slika 5.1: Struktura pomnilnika brezkontaktne kartice i-code II


(prirejeno po [46])

RFID čitalnik CF RFID Reader Card


RFID čitalnik bere in piše na vse ISO 15693 brezkontaktne kartice in na nekatere druge
iz frekvenčnega območja 13.56 MHz (Tag-it HF, PicoTag, ISO 14443). V dlančnik ga
vstavimo preko vmesnika Compact Flash in deluje na operacijskem sistemu Microsoft
Windows Mobile 2003. Čitalnik se napaja preko dlančnika, zato ne potrebuje dodatnih
kablov ali pa baterijskega vložka. Njegov domet branja in pisanja na brezkontaktne kartice
je maksimalno 5 centimetrov. Prikazan je na sliki 5.2.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 43

Slika 5.2: RFID čitalnik in dlančnik Hewlett-Packard serije hx2000


(prirejeno po [44])

Razvojno ogrodje .NET Compact Framework


Razvojno ogrodje Microsoft .NET Compact Framework je namenjeno razvoju aplikacij
za pametne naprave (pametni telefoni, osebni digitalni pomočnik in dlančnik Pocket PC,
prenosni in tablični računalniki), ki imajo omejene vire v primerjavi z namiznimi
računalniki. Je okrnjena verzija razvojnega ogrodja .NET Framework in kljub temu
podpira programske vmesnike za delo z zbirkami, omrežjem, podatkovnim dostopom
ADO.NET, XML, spletnimi storitvami.

Podatkovna baza Microsoft SQL Server CE


Podatke, s katerimi upravlja aplikacija, smo shranili v relacijsko podatkovno bazo
Microsoft SQL Server CE. Podatkovno bazo lahko namestimo na različne naprave, kot je
recimo pametni telefon.

Razvojno ogrodje SocketScan Managed API


Razvojno ogrodje smo podrobno opisali v poglavju 4.4. Tukaj bi dodali samo še to, da
je razvojno ogrodje vplivalo na izbiro verzije razvojnega okolja. Namreč v najnovejši
verziji razvojnega okolja Visual Studio .NET 2005 se aplikacija ni pravilno prevedla.
Rezultat tega je bilo nestabilno obnašanje aplikacije na končni napravi.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 44

5.2 Zasnova RFID aplikacije


Na podlagi teoretičnih raziskovanj, dostopnosti posameznih naprav in razvojnih ogrodij
smo zasnovali aplikacijo, ki spada med vseprisotne informacijske rešitve. Celotno
aplikacijo smo postavili v mobilno okolje (dlančnik), za programiranje pa uporabili Visual
Studio .NET 2003 in programski jezik C#. Osnova za razvoj aplikacije je bila
identifikacija uporabnika s pomočjo tehnologije RFID. Program smo zasnovali tako, da se
lahko registriran uporabnik udeleži nekega dogodka. Dogodek lahko predstavlja na primer
konferenco OTS ali pa konferenco JavaOne. Registriran uporabnik se tako lahko udeleži
izbrane konference. Pri vstopu v konferenčno dvorano se uporabnik identificira z RFID
kartico. Identifikacija poteka tako, da se uporabnik z RFID kartico približa dlančniku z
nameščenim RFID čitalnikom. Preko RFID čitalnika aplikacija dobi sporočilo s potrebnimi
podatki za identifikacijo uporabnika. Slika 5.3. prikazuje konkreten primer identifikacije
uporabnika. Janez Novak se želi udeležiti konference OTS'2006, ob vstopu v dvorano
konference ga bomo identificirali s pomočjo dlančnika z RFID čitalnikom.

Vstop Konferenca OTS'2006

Janez Novak

Dlančnik z
RFID čitalnikom

Slika 5.3: Primer identifikacije z RFID čitalnikom

S pomočjo skice na sliki 5.3 smo poiskali primerne entitete, njihove lastnosti in
medsebojne povezave. Takoj lahko opazimo nujno potrebne entitete: uporabnik, dogodek
in RFID naprava. Ker želimo doseči, da bo aplikacija uporabna, potrebujemo poljubno
število uporabnikov, ki se bodo lahko udeležili poljubno izbranega dogodka. S tem tudi
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 45

dosežemo, da je aplikacija uporabna za identifikacijo udeležencev na različnih dogodkih.


Na podlagi tega potrebujemo sistem za upravljanje z uporabniki in sistem za upravljanje z
dogodki. Oba sistema sta povezana preko sistema identifikacije z RFID napravo.
Primer uporabe aplikacije je prijava uporabnika na posamezen dogodek. V našem
primeru je uporabnik udeleženec, kot je prikazano na sliki 5.4. Za ta primer je potrebno
najprej izbrati dogodek, na katerega ga želimo registrirati. Kar pomeni, da mora predhodno
obstajati dogodek, ki smo ga kreirali in shranili v podatkovno bazo. Prav tako potrebujemo
tudi uporabnikove osebne podatke, ki so potrebni za identifikacijo. Ko imamo vse potrebne
podatke, lahko udeleženca registriramo na izbran dogodek, kar zapišemo na podatkovno
bazo in na RFID kartico preko RFID naprave. Ves postopek nadzoruje receptor, ki
upravlja z aplikacijo, nameščeno na dlančniku.

Udeleženec Prijava na dogodek Kreiraj dogodek


<<include>>

<<include>>
Podatkovna baza
Shrani udeleženca
sistema

Registriraj udeleženca <<include>>


Receptor

Pripravi kartico
RFID Naprava

Slika 5.4: Diagram primera uporabe – Prijava na dogodek

Drugi primer uporabe aplikacije je udeležitev uporabnika na izbran dogodek, kot


prikazuje slika 5.5. Kadar se uporabnik želi udeležiti dogodka, je potrebno najprej izbrati
želen dogodek, ki ga pridobimo iz podatkovne baze. Po izbiri dogodka imamo vse
potrebne podatke za preverjanje identitete uporabnika. Zanima nas kdo je uporabnik in če
sploh ima dostop na izbran dogodek. To ugotovimo na podlagi podatkov iz RFID kartice in
podatkov v podatkovni bazi.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 46

Udeleži se dogodka Kreiraj dogodek


Udeleženec
<<include>>
Podatkovna baza
sistema
<<include>>

Identificiraj udeleženca Preveri identiteto


Receptor
RFID Naprava

Slika 5.5: Diagram primera uporabe – Udeležba dogodka

S pomočjo primerov uporabe smo prišli do potrebne funkcionalnosti, ki jo aplikacija


mora zagotavljati. Funkcionalnost aplikacije smo razdelili tako:
− Upravljanje z uporabniki
o Kreiranje uporabnika
o Shranjevanje uporabnikovih osebnih podatkov
o Pregled uporabnikov
o Iskanje uporabnikov
− Upravljanje z dogodki
o Kreiranje dogodka
o Shranjevanje podatkov o posameznem dogodku
− Postopek registracije
o Registracija uporabnika na izbran dogodek
o Identificiranje uporabnika

5.3 Razvoj RFID aplikacije

Aplikacijo smo razvili z orodjem Microsoft Visual Studio .NET 2003 in uporabili
programski jezik C#. Za komunikacijo z napravo smo potrebovali programski vmesnik
SocketScan Managed API, ki smo ga vključili preko razvojnega orodja. Prav tako je bilo
potrebno na dlančniku namestiti gonilnike za RFID napravo. Za prenos podatkov iz
delovnega računalnika na dlančnik smo uporabili program Microsoft ActiveSync. Ta
program je omogočil namestitev aplikacije na dlančniku. Fizična povezava je potekala
preko USB (Universal Serial Bus) podatkovnega kabla.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 47

5.3.1 Zgradba aplikacije

Ena izmed najpomembnejših značilnosti aplikacije, še posebej tiste, ki bo tekla na


pametni napravi, je izgled in obnašanje njenega grafičnega vmesnika. Ni pomembno kako
učinkovito je aplikacija zasnovana, če ne ponuja vmesnika, s katerim bo končni uporabnik
lahko vzajemno deloval.
Preden smo začeli z razvojem aplikacije je bilo pomembno razumeti zmožnosti,
omejitve in standarde izbrane ciljne naprave. Tako na primer nismo mogli uporabiti ukaza
(primi in spusti) za delo z miško. Grafični vmesnik aplikacije za večjo uporabnost
uporablja grafične gradnike kot so gumbi in vnosna polja. Kjerkoli je mogoče, pa ponuja
padajoči seznam, ki omogoča izbiro posameznega elementa iz seznama, namesto ročnega
vpisovanja v vnosno polje. Slika 5.6 prikazuje sestavne elemente grafičnega vmesnika
aplikacije.

Slika 5.6: Zgradba grafičnega vmesnika aplikacije

Orodna vrstica
Orodna vrstica je sestavljena iz oznake konteksta in padajočega seznama. S pomočjo
padajočega seznama lahko izberemo katero akcijo želimo opraviti na določenem
kontekstu. Na primer v kontekstu uporabniki lahko izbiramo med pregledom uporabnikov
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 48

in med vnosom posameznega uporabnika. V kontekstu dogodki pa lahko izbiramo med


pregledom dogodkov in vnosom novega dogodka. Kadar je želena akcija izbrana iz
padajočega seznama, se vsebina strani v vsebniku dinamično naloži.

Vsebnik
Vsebnik predstavlja dinamičen prostor, na katerem se, na podlagi izbrane akcije iz
orodne vrstice, izmenjujejo posamezne strani.

Zavihki
Zavihki se nahajajo tik pod elementom vsebnik. Vsak posamezen zavihek omogoča
preklop oziroma navigacijo med posameznimi konteksti.

Vrstica stanja
Vrstica stanje je področje, ki se nahaja na dnu zaslonske maske in nad glavnim
menijem. Sestavljena je iz tekstovne oznake in vrstice napredka. Vrstica stanja služi za
obveščanje uporabnika o stanju aplikacije. Na primer kadar nastopi dolgotrajna operacija
kot je inicializacija RFID naprave, se v vrstici stanja izpiše tekstovno sporočilo, ki pove
uporabniku kaj se dogaja. Vrstica napredovanja ponuja grafičen prikaz napredka
dolgotrajne operacije z leve na desno.

Glavni meni
Glavni meni vsebuje akcije, ki so potrebne za uporabo aplikacije in ne akcij, ki bi jih
uporabnik pogosto uporabljal. Pogosto uporabljene akcije so nameščene v elementu orodna
vrstica, s čimer je omogočen lažji dostop. S tem akcije med glavnim menijem in orodno
vrstico niso podvojene. Slednje je ravno v nasprotju s priporočili v razvoju namiznih
grafičnih vmesnikov, kjer je potrebno ponuditi več neenakih dostopov do iste akcije.
Edina akcija, ki je implementirana v glavnem meniju, je izhod iz aplikacije. Namreč pritisk
na gumb »X« v desnem zgornjem kotu na zaslonu dlančnika ne zapre aplikacije tako kot
smo navajeni pri namiznih aplikacijah, ampak jo samo postavi v ozadje operacijskega
sistema. Zato je bila potrebna implementacija za izhod iz aplikacije in sprostitev virov, ki
so se uporabljali za RFID čitalnik.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 49

V zasnovi aplikacije smo definirali funkcionalnosti, ki jih aplikacija mora podpirati. To


je pomagalo pri razvoju aplikacije. Tako smo grafični vmesnik razdelili na štiri kontekste:
uporabniki, dogodki, registracija in nastavitve. Na podlagi potreb aplikacije smo k
funkcionalnosti dodali kontekst nastavitve. Ta kontekst omogoča spremembo uporabniških
nastavitev, ki vplivajo na obnašanje aplikacije. Razrede aplikacije smo razvrstili na šest
imenskih prostorov:
− FERI.PervasiveComputing.RFID.Base
− FERI.PervasiveComputing.RFID.Controller
− FERI.PervasiveComputing.RFID.Forms
− FERI.PervasiveComputing.RFID.Data
− FERI.PervasiveComputing.RFID.Resources
− FERI.PervasiveComputing.RFID.Scanners
Vsak imenski prostor vsebuje razrede, ki so med seboj povezani v logično strukturo.
Imenski prostori so zelo podobni paketom v programskem jeziku Java, kjer imena paketov
definirajo strukturo imenika za izvorne datoteke. V programskem jeziku C# imenski
prostor ne narekuje fizične ureditve izvornih datotek v imeniku ampak le logično strukturo.
V nadaljevanju bomo opisali vsak posamezen imenski prostor.

Imenski prostor FERI.PervasiveComputing.RFID.Base


Ta imenski prostor vsebuje samo en razred, ki predstavlja vstopno točko celotne
aplikacije. S tem razredom aplikacijo zaženemo in tako postane vidna na zaslonu
dlančnika.

Imenski prostor FERI.PervasiveComputing.RFID.Controller


Vsebuje vmesnike in razrede, ki definirajo vzorec MVC (Model-View-Controller). V
naši aplikaciji smo ta vzorec uporabili za inicializacijo posamezne strani, ki se na zahtevo
dinamično naloži v elementu grafičnega vmesnika vsebnik. S tem smo dosegli, da je
aplikacija ob zagonu znatno bolj odzivna. Grafične komponente, ki obstajajo v aplikaciji,
se ne inicializirajo vse hkrati, ampak le tiste, ki jih na določeni strani potrebujemo. Vzorec
MVC je sestavljen iz treh razredov kot prikazuje slika 5.7.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 50

Kontrolnik

- Definira obnašanje
posamezne strani
preko modela
- Posodobi pogled

ki

Pr
at

ika
d
Po

Do

z
go
de
k
Model Pogled

- Hrani stanje Povpraševanje po stanju


- Prikazuje
posamezne strani posamezno stran
- Pošilja dogodke
upravljalcu

Slika 5.7: Zgradba vzorca MVC

Razred Model predstavlja osnovne podatke za posamezno stran. V našem primeru so to


večinoma podatki, pridobljeni iz podatkovne baze ali pa podatki iz RFID čitalnika. Razred
Pogled predstavlja element grafičnega vmesnika, ki je v aplikaciji implementiran kot

posamezna stran aplikacije. Razred Kontrolnik vzpostavlja povezavo med razredoma


Pogled in Model z uporabo direktnih klicev posameznih metod. Na ta način kontrolnik

shrani stanje v model s podatki in ta model posreduje pogledu. Nakar pogled obnovi stanje
posamezne strani s pridobljenimi podatki iz modela.
Vzorcu MVC smo dodali še vedenjski vzorec opazovalec (Observer), ki zagotavlja
pravilno medsebojno delovanje med posameznimi stranmi v aplikaciji. Na primer, če s
pomočjo aplikacije dodamo novega uporabnika, se na drugi ločeni strani samodejno
posodobi seznam vseh uporabnikov in tako ni potrebno ročno posodabljanje. Slika 5.8
prikazuje zgradbo vzorca.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 51

Slika 5.8: Zgradba vzorca Opazovalec

Vsak pogled v aplikaciji mora implementirati vmesnik Opazovalec in se


registrirati v razredu UpravljalnikOpazovalcev, če želi sprejeti obvestilo o nastali
spremembi. Pogled, na katerem nastane določena sprememba, le-to sporoči razredu
UpravljalnikOpazovalcev, ta pa obvesti vse registrirane opazovalce. Vsak konkreten

opazovalec je z implementacijo vmesnika Opazovalec definiral obnašanje, kadar dogodek


nastopi. V kolikor posamezen opazovalec ne želi več prejemati obvestil o spremembah,
razred UpravljalecOpazovalcev omogoča odstranjevanje določenega opazovalca.

Imenski prostor FERI.PervasiveComputing.RFID.Forms


V prejšnjem imenskem prostoru smo definirali, kaj vse mora stran grafičnega
vmesnika podpirati, da jo lahko vključimo v aplikacijo. Ta imenski prostor pa vsebuje vse
konkretne implementacije posameznih strani, ki so prisotne v aplikaciji. Prav tako vsebuje
tudi ostale elemente grafičnega vmesnika, kot so na primer glavno okno aplikacije, zavihki
in glavni meni.
Prvi kontekst v aplikaciji je Registracija in se bo privzeto naložil ob zagonu. Izbira
posameznega konteksta povzroči inicializacijo prve strani v kontekstu. Ostale strani se
inicializirajo, šele kadar jih izberemo iz padajočega seznama v orodni vrstici. Torej ob
zagonu aplikacije se inicializirajo vsi elementi grafičnega vmesnika in prva stran. Ostale
grafične komponente, ki so prisotne v aplikaciji, se inicializirajo šele ob nastopu zahteve.
Ta postopek je omogočil boljšo odzivnost aplikacije in s tem uporabniško prijaznost.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 52

Imenski prostor FERI.PervasiveComputing.RFID.Data


Ta imenski prostor vsebuje razrede, ki so potrebni za upravljanje s podatkovno
bazo SQL Server CE. Omogočajo dostop do podatkovne baze, shranjevanje,
poizvedovanje ter ažurnost podatkov. Na sliki 5.9 je prikazan entitetno relacijski diagram
kreiranih tabel z atributi v aplikaciji.

Slika 5.9: Entitetno relacijski diagram aplikacije

Iz slike 5.9 je razvidno, da podatkovna baza vsebuje redundantne podatke. Na primer v


tabeli Uporabniki se ponavlja naslov uporabnika. Na določen dogodek se lahko prijavi več
uporabnikov, ki stanujejo na istem naslovu. V normalizirani podatkovni bazi so
povpraševalni izrazi bolj kompleksni, kjer kot rezultat dobimo bolj natančne podatke v
primerjavi z nenormalizirano podatkovno bazo. Normalizirana podatkovna baza je
usmerjena k manjši uporabi podatkovnega prostora in prav tako zmanjšuje težave z
integriteto podatkov. Odpravljanje redundantnosti (normaliziranje) vodi do vse večjega
števila tabel. Večje število tabel v povpraševalnem izrazu pomeni počasnejše izvajanje
povpraševalnih izrazov. Izvršitev je lahko tako drastično prizadeta, da aplikacija postane
neuporabna [45]. Aplikacija, ki smo jo razvili, bo tekla na dlančniku, kjer je pomembna
tako odzivnost kot tudi podatkovni prostor. Pri normalizirani podatkovni bazi bomo
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 53

potrebovali močnejši procesor, medtem ko pri ne normalizirani podatkovni bazi večji


podatkovni prostor. Ker je podatkovni prostor cenovno ugodnejši kot procesor in odzivna
aplikacija uporabniku prijaznejša, kar je v vseprisotnih informacijskih rešitvah ključnega
pomena, smo se odločili, da podatkovno bazo ne normaliziramo.

Imenski prostor FERI.PervasiveComputing.RFID.Resources


Ta imenski prostor smo uporabili za upravljanje z lokaliziranimi nizi znakov.
Aplikacijo smo razvili tako, da podpira različne jezike in kulturne dogovore. To pomeni,
da smo morali vsak niz znakov izolirati na tak način, da so lahko zamenjani s prevedenimi
nizi znakov. Aplikacija tako omogoča izbiro jezika, v katerem bo tekel grafični vmesnik.
Sliki 5.10 in 5.11 prikazujeta aplikacijo v različnih jezikih.

Slika 5.10: Grafični vmesnik aplikacije v Slika 5.11: Grafični vmesnik aplikacije v
angleškem jeziku nemškem jeziku

V veliko pomoč je bil razred CultureInfo iz imenskega prostora


System.Globalization. Ta razred vsebuje informacije specifične, za posamezno kulturo,

kot je na primer jezik, dežela/regija, koledar, format zapisa števila in format zapisa datuma.
Slednje je vidno tudi na prejšnjih slikah, če pogledamo v tretji stolpec v tabeli, kjer so
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 54

izpisani uporabniki. V angleškem jeziku (Združene države Amerike) je format zapisa


datuma M/d/llll, med tem ko v nemškem jeziku DD.MM.llll.

Imenski prostor FERI.PervasiveComputing.RFID.Scanners


S pomočjo vzorca edinec smo implementirali upravljanje z RFID čitalnikom. S to
rešitvijo smo dosegli, da ima aplikacija samo en primerek tega razreda in tako centralno
upravljamo z RFID čitalnikom. S tem razredom se lahko vsaka stran v aplikaciji registrira
kot poslušalec na dogodke RFID čitalnika. Na primer, če na eni strani aplikacije prožimo
branje RFID kartice, se bo ta stran registrirala na poslušanje dogodkov branja in tako
dobila obvestilo ali je bila operacija uspešna ali ne.
V aplikaciji smo implementirali ročno in samodejno identifikacijo uporabnika.
Ročna identifikacija pomeni, da moramo, kadar želimo prebrati podatke iz RFID kartice,
prožiti branje s pomočjo pritiska na gumb. Samodejna identifikacija pa pomeni, da bo
aplikacija avtomatsko identificirala uporabnika takoj, ko bo RFID kartica vstopila v
radiofrekvenčno območje čitalnika. Torej, pri samodejni identifikacije je potrebno, da se
uporabnik približa RFID čitalniku. Pri ročni identifikaciji pa je potrebno za vsakega
uporabnika posebej sprožiti branje podatkov iz RFID kartice. S stališča vseprisotnih
informacijskih rešitev je vsekakor bolj primerna samodejna identifikacija, saj ne potrebuje
dodatnega uporabniškega posredovanja. Ročno identifikacijo smo implementirali, ker
lahko samo v tem načinu preberemo identifikacijo številko in uporabniške podatke iz
pomnilnika RFID kartice. V samodejnem načinu identificiranja RFID čitalnik ne omogoča
dostopa do uporabniških podatkov ampak samo branje identifikacijske številke. Sliki 5.12
in 5.13 prikazujeta oba načina identifikacije uporabnika. Samodejno identifikacijo
omogočimo z oznako prireditvenega polja.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 55

Slika 5.12: Identifikacija uporabnika Slika 5.13: Samodejna identifikacija


uporabnika

Oba načina identifikacije zagotavljata enak cilj, kljub temu da pri samodejni
identifikaciji upoštevamo samo identifikacijsko številko uporabnika. Podatke, ki smo jih
shranili na uporabniški del pomnilnika RFID kartice, predstavlja globalno edinstven
identifikator GUID (Globally Unique Identifier). Identifikator smo pridobili s pomočjo
programskega jezika C# in sistemskih knjižnic. Identifikator GUID [54] je naključno
generirano število, ki se uporablja v raznovrstnih aplikacijah. Generator identifikatorja
GUID ne zagotavlja, da bo generirano število edinstveno. Celotno število edinstvenih
identifikatorjev je tako veliko, da je verjetnost ponovitve identifikatorja zelo majhna.
Pri registraciji uporabnika smo najprej prebrali identifikacijsko številko RFID kartice
in nato generirali identifikator GUID. Vse podatke smo shranili v podatkovno bazo, hkrati
pa tudi zapisali identifikator GUID na RFID kartico. Ti podatki se uporabljajo pri
identifikaciji uporabnika. Podatke iz RFID kartice primerjamo s podatki, ki so shranjeni v
podatkovni bazi s to razliko, da pri samodejni identifikaciji ne upoštevamo identifikatorja
GUID.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 56

5.4 Aplikacija in značilnosti vseprisotnih informacijskih rešitev

V poglavju 2.1 smo definirali značilnosti vseprisotnih informacijskih rešitev: storitve


kadarkoli in kjerkoli, nevidnost, mobilnost in zaznavanje konteksta. V tem poglavju bomo
preverili ali aplikacija omogoča značilnosti vseprisotnih informacijskih rešitev.

Storitve kadarkoli in kjerkoli


Značilnost narekuje, da morajo podatki biti na voljo kadarkoli in kjerkoli iz
katerekoli naprave. Aplikacija te značilnosti ne omogoča, saj so vsi podatki shranjeni
lokalno. Dostop do podatkov, ki so shranjeni v podatkovni bazi na dlančniku ima samo
aplikacija. To slabost aplikacije smo rešili z implementacijo spletne storitve. V kontekstu
nastavitve smo dodali novo stran, kjer lahko uporabnik posreduje podatke na aplikacijski
strežnik. Spletno storitev smo razvili v programskem jeziku Java s pomočjo razvojnega
orodja NetBeans in jo namestili na aplikacijski strežnik Sun Java System Application
Server, ki v celoti temelji na platformi Java EE 5. S spletno storitvijo smo omogočili, da so
podatki dostopni kadarkoli in mnogovrstnim odjemalcem. Slika 5.14 prikazuje spletno
stran, razvito v programskem jeziku PHP. Spletna stran omogoča pregled uporabnikov, ki
so registrirani na določen dogodek. Podatke je pridobila preko spletne storitve.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 57

Slika 5.14: Spletna stran v programskem jeziku PHP

Povezljivost raznih arhitektur so omogočile tehnologije spletnih storitev. Slika 5.15


prikazuje kako so različne platforme in tehnologije med seboj povezane. Aplikacija, ki teče
na dlančniku, predstavlja odjemalca spletne storitve. Preko protokola SOAP je aplikacija,
ki je razvita v platformi .NET, posredovala podatke na aplikacijski strežnik. Na drugi
strani imamo poljubnega odjemalca v obliki spletne strani, ki prikazuje podatke, ki jih je
posredovala aplikacija na dlančniku.
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 58

Slika 5.15: Povezljivost aplikacije

Nevidnost
Tehnologija RFID omogoča, da vseprisotne informacijske rešitve izginejo iz
zavednosti uporabnika. Uporabnik, ki se želi registrirati na posamezen dogodek, uporablja
RFID kartico. Pri tem uporabnik ne potrebuje posebnega napora za uporabo, sistem ga
samodejno identificira in omogoči dostop do izbranega dogodka. V našem sistemu je RFID
kartica po obliki podobna bankomat kartici. Če privzamemo, da uporabnik »nevidno«
uporablja mobilni telefon, bi lahko dodaten predmet (RFID kartica) rešili tako, da RFID
značko integriramo v mobilni aparat. RFID čitalnik omogoča branje RFID značk v dosegu
petih centimetrov. Identifikacija uporabnika bi potekala bolj tekoče, če bi čitalnik
omogočal branje na večji razdalji. Večja razdalja bi omogočila tudi identifikacijo več
uporabnikov hkrati.

Mobilnost
Sama aplikacija je zasnovana tako, da teče na dlančniku, ki ga lahko poljubno
prenašamo. To omogoča uporabniku nemoteno delo, ki je neodvisno od lokacije dogodka.
Recimo, da je udeležba posameznega dogodka plačljiva in je aplikacija naravnana tako, da
ob vsaki aktivnosti preko spletne storitve posreduje podatke o udeležencih. Proces
kompleksne transakcije plačil se upravlja na strežniku, ki potrebuje podatke iz dlančnika.
Kadar bi opravljali identifikacijo uporabnikov na območju, kjer ni brezžičnega dostopa do
interneta, je pomembno, da aplikacija samodejno najde alternativno storitev in tako
omogoči nemoteno delo. V našem sistemu bi lahko aplikacija začasno shranjevala podatke
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 59

v lokalni podatkovni bazi in bi jih takoj, ko bi bil dostop do interneta omogočen,


posredovala strežniku.

Zaznava konteksta
Zaznavanje konteksta bi v našem sistemu rešili z namestitvijo RFID značk na vsak kraj
dogodka. Preko te RFID značke bi prišli do informacij za kateri dogodek opravljamo
identifikacijo. Ob vstopu v dvorano bi aplikacija na dlančniku prebrala podatke iz RFID
značke in samodejno pripravila nastavitve za identifikacijo uporabnika. Podobno bi lahko
napravili tudi za tistega receptorja, ki bi uporabljal dlančnik za identifikacijo udeležencev.
Pred uporabo bi se moral sam prijaviti v aplikacijo z RFID značko. Aplikacija bi na
podlagi tega zagnala grafični vmesnik s pravicami, funkcionalnostjo in osebnimi
nastavitvami receptorja. Na primer, če je receptor iz Anglije, bi grafični vmesnik tekel v
angleškem jeziku. Vsakemu branju z RFID značke lahko programsko pripišemo tudi čas
izvajanja operacije. S tem bi sistem zagotavljal tri ključne informacije zaznavanja
konteksta:
- lokacija: kje se identificiranje uporabnikov opravlja;
- uporabnik: kdo opravlja identificiranje uporabnikov;
- čas: kdaj je bilo identificiranje uporabnikov opravljeno.

5.5 Aplikacija in zagotavljanje varnosti


V poglavju 4.3 smo opisali metode napadov na RFID sistem in konkretne primere le-
teh. Za nekatere primere smo predstavili tudi napotke kako se tem napadom izogniti. V
tem poglavju bomo predstavili rešitve za zagotavljanje varnosti, ki smo jih uporabili v
aplikaciji in opisali nekaj predlogov kako izboljšati varnost s stališča vseprisotnih
informacijskih rešitev. Rešitve zagotavljanja varnosti v aplikaciji bomo opisali na
posameznih primerih napadov na RFID sistem.

Poplavljanje (Flooding)
Poplavljanje v primeru naše aplikacije lahko povzroči identifikacija velikega števila
uporabnikov. Ta scenarij je zelo malo verjeten, saj bi se morali uporabniki približati RFID
čitalniku na pet centimetrov (domet branja čitalnika). Bolj verjetno je, če bi kdo hotel
namenoma povzročiti poplavljanje z velikim številom RFID kartic. Temu se lahko
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 60

izognemo z možnostjo ročne identifikacije in s tem branja ene RFID kartice na enkrat.
Aplikacijo na RFID dlančniku uporablja receptor, ki hkrati tudi nadzoruje potek
identifikacije. Receptor bi v primeru poplavljanja ugotovil nepravilnost in uporabil
možnost ročne identifikacije.

Kopiranje RFID značke


Morebitni nepridiprav, opremljen z RFID čitalnikom, lahko prekopira podatke iz RFID
kartice posameznega udeleženca konference. S prekopiranimi podatki izdela novo kartico
in tako ukrade identiteto uporabnika. Ponarejeno kartico nato uporabi za vstop na določeno
konferenco.
V poglavju zagotavljanje varnosti tehnologije RFID smo opisali načine za
nadzorovanje dostopa do RFID sistema. Nekaj kar uporabnik ima je v našem primeru
RFID kartica. Če dodamo še nekaj kar uporabnik ve, s tem zvišamo stopnjo varnosti
dostopa. Od uporabnika bi tako ob vstopu v konferenco zahtevali še PIN kodo. V tem
primeru ima nepridiprav znatno bolj oteženo delo, saj mora zraven ponarejene kartice
pridobiti še PIN kodo uporabnika.
S PIN kodo bi sicer povečali stopnjo varnosti, aplikacije ampak bi izgubili značilnost
nevidnosti v vseprisotnih informacijskih rešitvah. Sistem ne bi več omogočal samodejne
identifikacije, saj potrebuje uporabnikove podatke (PIN kodo). Zraven tega bi se znatno
povečal čas postopka identifikacije in pred konferenco lahko nastane vrsta. Do sedaj smo
opisali uporabo nečesa, kar uporabnik ima (RFID kartica), in nečesa, kar uporabnik ve
(PIN koda). Če namesto PIN kode uvedemo nekaj, kar uporabnike je, bi s tem zagotovili
tako višjo stopnjo varnosti kot tudi značilnost nevidnosti vseprisotnih informacijskih
rešitev. Nekaj kar uporabnik je bi zagotovili z uporabo dodatnega senzorja za
prepoznavanje govora. Tako bi lahko uporabnika nemoteno in samodejno identificirali.
Vse kar bi bilo potrebno je to, da udeleženec pozdravi.
Vsekakor bi bila ustrezna tudi rešitev, ki so jo predlagali avtorji knjige RFID Security.
Preveriti bi morali ali je udeleženec konference že prisoten, s čimer bi odkrili podvojeno
oziroma ponarejeno RFID kartico. Takšno preverjanje bi lahko implementirali z
zmogljivejšim RFID čitalnikom, ki bi omogočal branje RFID kartic na večji razdalji.

Sledenje (Tracking)
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 61

Podatki na RIFD kartici v sistemu razvite aplikacije so zgolj edinstvene identifikacijske


številke in same po sebi ne vsebujejo dodatnih informacij. Informacije o posameznem
uporabniku so dostopne preko povezave identifikacijske številke in podatkov v podatkovni
bazi aplikacije. Torej, tudi če nepridiprav uspešno pridobi podatke iz RFID kartice
udeleženca, mu ti ne razkrijejo nobene vredne informacije.

Lažni dogodki
Razvita aplikacija se zaveda konteksta, v katerem se identifikacija uporabnikov
uporablja. Receptor pred postopkom identifikacije izbere za katero konferenco želi
opravljati identifikacijo udeležencev. Ko udeleženec vstopi v območje RFID čitalnika, se
pri samodejnem identificiranju venomer prožijo dogodki. Ti dogodki v aplikaciji ne
predstavljajo grožnje, ampak preprosto samo obvestijo ali uporabnik ima dostop ali ne.
Tudi sicer bi bila smiselna večkratna identifikacija uporabnika. Tako aplikacija omogoča,
da uporabnik konferenco zapusti in se po želji tudi vrne.

Vstavljanje SQL stavkov (SQL Injection)


Vstavljanje SQL stavkov lahko nepridiprav izkoristi pri postopku identifikacije
udeleženca. Podatke na RFID kartici bi bilo mogoče spremeniti tako, da poizvedba v
podatkovni bazi vedno vrne rezultat. Na primer, ko aplikacija sprejeme podatke iz RFID
kartice izvede naslednji povpraševalni izraz: "SELECT * FROM `Uporabniki` WHERE
idKartice = '<podatki iz RFID kartice>'". Ta stavek vrne podatke uporabnika pri

čemer se morata identifikacijski številki na RFID kartici in v podatkovni bazi ujemati. Če


se ujemata, je dostop omogočen. Nepridiprav lahko identifikacijsko številko RFID kartice
spremeni iz "19483128743" na "karkoli' or 1=1--". S spremenjenimi podatki na RFID
znački bi povpraševalni izraz bil takšen: "SELECT * FROM `Uporabniki` WHERE
idKartice = 'karkoli' or 1=1--'". Ta izraz bi vedno vrnil rezultat, saj je pogoj ena

je enako ena vedno pravilen in s tem omogočil dostop nepooblaščenemu uporabniku.


Vstavljanju SQL stavkov smo se izognili s parametriziranimi povpraševalnimi stavki. S
tem smo ločili logiko samega povpraševalnega stavka od podatkov iz RFID kartice, ki jih
moramo posredovati pri povpraševalnem izrazu. Prej opisan način napada tako ni več
mogoč.
Prekoračitev medpomnilnika
ZASNOVA IN RAZVOJ RFID APLIKACIJE za registracijo udeležencev 62

Prekoračitev medpomnilnika je značilna za programske jezike kot sta C in C++, ker


razkrivata nižje nivojsko predstavitev vsebnikov za podatkovne tipe. V tem primeru bi
lahko zraven preverjanja velikosti podatkov koristili tudi možnost trajnega shranjevanja
podatkov na RFID kartici. S tem bi dosegli branje točno predvidene velikosti podatkov iz
RFID kartice, saj nepridiprav ne bi mogel spremeniti podatkov. RFID čitalnik, ki smo ga
uporabili pri razvoju aplikacije, omogoča tudi branje na nivoju posameznega bloka. S tem
lahko omejimo branje na točno določene bloke RFID kartice in tako na točno odločeno
velikost podatkov.
Aplikacije, ki so v celoti razvite v programskih jezikih kot sta Java in C#, prekoračitev
pomnilnika ni mogoča. Programska jezika ne omogočata shranjevanje podatkov v
pomnilnik, ki ne bi bil primerno dodeljen [56].

Ponavljanje sporočil
V razviti aplikaciji bi lahko nepridiprav prestregel sporočilo med RFID čitalnikom in
RFID kartico pri opravljanju identifikacije posameznega udeleženca. Prestreženo sporočilo
bi nato posredoval ob udeležbi na določen dogodek.
Nepridiprav bi ob tem tipu napada imel veliko težavo, saj bi se moral približati k RFID
čitalniku na pet centimetrov. Velika verjetnost je, da bi takšno dejanje bilo receptorju
sumljivo. Recimo, da mu napad kljub temu uspe. V tem primeru bi se lahko ubranili z
uporabo RFID kartice, ki omogoča enkriptirano komunikacijo.
Sklep 63

6 SKLEP

Vseprisotne informacijske rešitve predstavljajo hitro rastoče in relativno mlado


področje, zaradi tega smo v diplomski nalogi najprej podali njihovo definicijo. Vseprisotne
informacijske rešitve smo definirali kot tehnologije, ki so razpršene in integrirane po vseh
delih uporabniškega naravnega okolja z uporabo številnih neodvisnih informacijskih
naprav. Te naprave so medsebojno povezane v brezžična ali ožičena računalniška omrežja,
ki zagotavljajo uporabniku ustrezni nabor informacijsko komunikacijskih storitev z
zadovoljivo veliko stopnjo varnosti.
Zasnovali in razvili smo aplikacijo, ki predstavlja primer vseprisotnih informacijskih
rešitev. Ali je aplikacija dejansko primerek vseprisotnih informacijskih rešitev smo
preverili s pomočjo definiranih značilnosti. Ugotovili smo, da vseprisotne informacijske
rešitve ne temeljijo na eni sami tehnologiji, temveč v sodelovanju in povezovanju
mnogovrstnih tehnologij. Tehnologije spletnih storitev so omogočile dostopnost informacij
kadarkoli in kjerkoli. Izpeljali smo tudi predloge kako aplikacijo spremeniti in izboljšati.
Sistem aplikacije bi lahko izboljšali tako, da bi dvorane konferenc označili z RFID značko
in s tem omogočili večjo uporabniško prijaznost.
Varnost aplikacije je v vseprisotnih informacijskih rešitvah velikega pomena. Za
razvito aplikacijo lahko trdimo, da zagotavlja dovolj veliko stopnjo varnosti. Po drugi
strani pa vsekakor še dopušča prostor za izboljšave, pri tem smo v veliki meri odvisni od
same tehnologije RFID. RFID značke, ki imajo svoj interni procesor omogočajo zaščiteno
komunikacijo med RFID čitalnikom in RFID značko. Nenehen razvoj in napredovanje
tehnologij bo tudi te značke napravil cenovno dostopne.
Literatura 64

7 LITERATURA

[1] Computer Desktop Encyclopedia, The Computer Language Company Inc., 2006
[2] Scrutiny of Acts and Regulations Committee Victorian Electronic Democracy, Final Report, May
2005. Pridobljeno 14. 1. 2006, iz http://www.parliament.vic.gov.au/sarc/E-
Democracy/Final_Report/Glossary.htm
[3] Open Systems - Glossary. Pridobljeno 14. 1. 2006, iz
http://framework.v2.nl/archive/archive/node/text/default.xslt/nodenr-156647
[4] Technical Information Terminology. Pridobljeno 14. 1. 2006, iz
http://www.rapidspec.com/RapidSpec%20Site/PROJECT%20ASSISSTANT%20SECTION/DOC
%20SERVICES%20SECTION/Project%20Literature/rsp-Technicalinfo_Term.htm
[5] International Technology Laboratory No. 66, 1999
[6] Laboratory for Computer Science, Massachusetts Institute of Technology, 1999
[7] National Institute of Standards and Technology, 2001
[8] What's a Wearable. Pridobljeno 28. 1. 2006, iz http://www.media.mit.edu/wearables/
[9] Augmented Reality Pag. Pridobljeno 28. 1. 2006, iz http://www.se.rit.edu/~jrv/research/ar/
[10] Telepresence. Pridobljeno 28. 1. 2006, iz http://en.wikipedia.org/wiki/Telepresence
[11] Tangible Bits. Pridobljeno 28. 1. 2006, iz http://tangible.media.mit.edu/projects/
[12] Roomware. Pridobljeno 28. 1. 2006, iz
http://www.ipsi.fraunhofer.de/ambiente/english/projekte/projekte/roomware.html
[13] Information appliance. Pridobljeno 28. 1. 2006, iz
http://en.wikipedia.org/wiki/Information_appliances
[14] Autonomic Computing. Pridobljeno 28. 1. 2006, iz
http://en.wikipedia.org/wiki/Autonomic_Computing
[15] Proactive Computing. Pridobljeno 28. 1. 2006, iz http://www.intel.com/research/proactive.htm
[16] Amorphous Computing. Pridobljeno 28. 1. 2006, iz
http://www.swiss.ai.mit.edu/projects/amorphous/
[17] W3C Workshop on the Ubiquitous Web. Pridobljeno 28. 1. 2006, iz
http://www.w3.org/2005/10/ubiweb-workshop-cfp.html
[18] RFID Basics. Pridobljeno 18. 2. 2006, iz
http://www.ready4rfid.com/rfid_index.php?menu=rfid_frequencies&spr=e
[19] RFID Frequencies. Pridobljeno 18. 2. 2006, iz
http://www.scansource.com/europe/upload/RFID_Frequencies.pdf
[20] SMARTCODE™ CORP. Announces The World's First 5 Cent RFID Tag. Pridobljeno 18. 2.
2006, iz
http://www.measurementdevices.com/modules.php?op=modload&name=News&file=article&sid=
474&mode=thread&order=0&thold=0
[21] SAP Solutions for RFID: Making Adaptive Enterprise Vision a Reality. Pridobljeno 18. 2. 2006,
iz http://www.sap.com/solutions/business-suite/scm/rfid/index.epx
[22] The "Octopus Card" in Hong Kong. Pridobljeno 18. 2. 2006, iz
http://www.sony.net/Products/felica/csy/hnk.html
[23] The future is in the palm of our hand. Pridobljeno 18. 2. 2006, iz
http://www.oreillynet.com/onjava/blog/2006/02/the_future_is_in_the_palm_of_o.html
[24] RFID: The Ultimate In Car Security. Pridobljeno 18. 2. 2006, iz
http://www.integratedsolutionsmag.com/articles/2001_07/010703.htm
Literatura 65

[25] Retail Case Study - Wal Mart Stores, Inc. Pridobljeno 18. 2. 2006, iz
http://www.smartcodecorp.com/about_us/pdf/SmartCode%20Corp.%20-
%20Wal%20Mart%20Case%20Study.pdf
[26] ABC sistem. Pridobljeno 18. 2. 2006, iz http://www.dars.si/index.php?id=100052
[27] SpeedPass. Pridobljeno 18. 2. 2006, iz
https://www.speedpass.com/forms/frmHowItWorks.aspx?pgHeader=how
[28] Movement of Pets (Dogs, Cats and Ferrets). Pridobljeno 18. 2. 2006, iz
http://ec.europa.eu/comm/food/animal/liveanimals/pets/index_en.htm
[29] About Pet-Id. Pridobljeno 18. 2. 2006, iz http://www.pet-id.net/whatispetid.htm
[30] Personal Shopping Systems. Pridobljeno 4. 3. 2006, iz http://www.sapago.com/products.html
[31] CF RFID Reader Card. Pridobljeno 4. 4. 2006, iz http://www.socketcom.com/product/RF5400-
542.asp
[32] ISO 11784 & 11785. Pridobljeno 29. 4. 2006, iz
http://en.wikipedia.org/wiki/ISO_11784_&_11785
[33] ISO 14443. Pridobljeno 29. 4. 2006, iz http://en.wikipedia.org/wiki/ISO_14443
[34] ISO 15693. Pridobljeno 29. 4. 2006, iz http://en.wikipedia.org/wiki/ISO_15693
[35] What is EPCglobal. Pridobljeno 29. 4. 2006, iz http://www.epcglobalinc.org/about/faqs.html
[36] The Near Field Communication (NFC) Forum. Pridobljeno 29. 4. 2006, iz http://www.nfc-
forum.org/home
[37] JSR 257: Contactless Communication API. Pridobljeno 29. 4. 2006, iz
http://jcp.org/aboutJava/communityprocess/pfd/jsr257/index.html
[38] The Generic Connection Framework. Pridobljeno 29. 4. 2006, iz
http://developers.sun.com/techtopics/mobility/midp/articles/genericframework/
[39] Computing Anytime, Anywhere. Pridobljeno 29. 4. 2006, iz
http://www.smartcomputing.com/editorial/article.asp?article=articles/2000/s1103/08s03/08s03.asp
[40] Towards a Better Understanding of Context and Context-Awareness. Pridobljeno 23. 9. 2006, iz
ftp://ftp.cc.gatech.edu/pub/gvu/tr/1999/99-22.pdf
[41] Introduction to Jini. Pridobljeno 23. 9. 2006, iz
http://www.jini.org/wiki/Category:Introduction_to_Jini
[42] Semantic Web. Pridobljeno 23. 9. 2006, iz http://www.w3.org/2001/sw/
[43] A System Architecture for Pervasive Computing. Pridobljeno 23. 9. 2006, iz
http://www.cs.washington.edu/homes/tom/pubs/sigops00.pdf
[44] User Guides: CF RFID Reader Card
[45] Powell, G. (2005). Beginning Database Design. Indiana: Wiley Publishing
[46] SocketScan SDK .Net User’s Guide
[47] Thornton, F., Haines, B., Das, A. M., Bhargava, H., Campbell, A. in Kleinschmidt, J. (2006).
RFID Security. Rockland: Syngress Publishing
[48] Lehtinen, R. (2006). Computer Security Basics (2nd Edition). Sebastopol: O'Reilly
[49] Analysis of the Texas Instruments DST RFID. Pridobljeno 28. 10. 2006, iz http://rfidanalysis.org/
[50] Barcode replacement comes in from cold. Pridobljeno 28. 10. 2006, iz
http://insight.zdnet.co.uk/specials/rfid/0,39026568,39154051,00.htm
[51] Typical read range for RFID devices. Pridobljeno 28. 10. 2006, iz
http://www.identecsolutions.com/intro_to_rfid.asp#Read%20Range
[52] Barcode Reader. Pridobljeno 28. 10. 2006, iz
http://whatis.techtarget.com/definition/0,,sid9_gci857995,00.html
[53] Črtna koda. Pridobljeno 28. 10. 2006, iz http://www.gs1si.org/sntportal.asp?p=42&m=40
[54] Guid Structure. Pridobljeno 28. 10. 2006, iz http://msdn2.microsoft.com/en-
us/library/system.guid.aspx
Literatura 66

[55] Privacy-Enhancing Radio Frequency Identification. Pridobljeno 28. 10. 2006, iz http://www-
03.ibm.com/solutions/businesssolutions/sensors/doc/content/bin/Clipped_Tag_White_Paper.pdf?g
_type=hpfeat
[56] Introduction to Correctness and Robustness. Pridobljeno 28. 10. 2006, iz
http://www.faqs.org/docs/javap/c9/s1.html
[57] RFID & EPC Essentials. Pridobljeno 28. 10. 2006, iz
http://www.epcglobalinc.org/what/cookbook/chapter1/
[58] The Computer for the 21st Century. Pridobljeno 28. 10. 2006, iz
http://www.ubiq.com/hypertext/weiser/SciAmDraft3.html
[59] About Pervasive Computing. Pridobljeno 5. 11. 2006, iz
http://www.nist.gov/pc2001/about_pervasive.html
[60] Ubiquitous computing. Pridobljeno 5. 11. 2006, iz
http://en.wikipedia.org/wiki/Pervasive_computing
[61] The Visible Problems of the Invisible Computer, Pridobljeno 5. 11. 2006, iz
http://www.firstmonday.org/issues/issue4_9/odlyzko/
[62] Pervasive computing framework for modelling complex virtually-unbounded systems
(PERPLEXUS), Pridobljeno 5. 11. 2006, iz
http://cordis.europa.eu/fetch?CALLER=IST_UNIFIEDSRCH&ACTION=D&DOC=92&CAT=P
ROJ&QUERY=1166358359949&RCN=79438
[63] EPC and RFID Compared to UPC and Bar Codes, Pridobljeno 5. 11. 2006, iz
http://www.rfidsb.com/index.php?page=rfidsb&c_ID=112
[64] Strategic Research Agenda of the European Technology Platform on Smart Systems Integration,
Pridobljeno 5. 11. 2006, iz http://www.smart-systems-
integration.org/public/documents/060808_EPoSS_SRA_final_v1.01.pdf
[65] Security Aspects and Prospective Applications of RFID Systems, Pridobljeno 5. 11. 2006, iz
http://www.bsi.de/fachthem/rfid/RIKCHA_englisch_Layout.pdf
[66] Privacy Enhancing Technologies for RFID, Pridobljeno 5. 11. 2006, iz
http://www.rfidconsultation.eu/?id_categoria=19&id_item=19&info=3

You might also like