uvod - hrvatska znanstvena bibliografija · web viewovaj način rada se može koristiti radi...

12
Korištenje NFC pametnih telefona u informacijskim sustavima Ognjen Mitrović Vedran Tadić Miroslav Ivkov TEHNIČKO VELEUČILIŠTE U ZAGREBU SAŽETAK 2004. godine osnovan je forum čija je zadaća bila razviti sustav temeljen na interakciji dodirom između različitih vrsta uređaja u spektru potrošačke elektronike. Tehnologija je nazvana NFC (engl. Near field communication). 10 godina kasnije, zajedno s razvojem informacijskih sustava, ta tehnologija se budi i danas omogućuje stvari poput poništavanja voznih karti u javnom prijevozu, plaćanja u trgovinama, pristup kancelarijama u uredu, prijavu na računalo, pa čak i stvari poput ispisa zadataka na pisaču. Namjera ovog rada je prikazati rad NFC uređaja i mogućnosti NFC tehnologije, te njezino korištenje u kombinaciji s pametnim telefonima. Iako se NFC može koristiti i u obliku klasičnih beskontaktnih kartica, integracijom NFC-a u pametne telefone može se dobiti jedinstveni autorizacijski uređaj što je puno elegantnije rješenje te koje u smislu prograbilnosti pruža više mogućnosti. Obzirom da je integracija i NFC podrška u pametnim telefonima u razvoju, u ovom radu ćemo se posebno fokusirati na mogućnost korištenja softverske emulacije kartica (engl. Host Card Emulation 1 ) koja omogućuje daljnji razvoj NFC aplikacija, a samim time i područje primjene NFC-a. Ključne riječi: NFC (engl. Near field communication) tehnologija, Autentifikacija, informacijski sustavi, pametni telefoni 1 https://en.wikipedia.org/wiki/Host_card_emulation

Upload: others

Post on 19-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

Korištenje NFC pametnih telefona u informacijskim

sustavima

Ognjen Mitrović

Vedran Tadić

Miroslav Ivkov

TEHNIČKO VELEUČILIŠTE U ZAGREBU

SAŽETAK

2004. godine osnovan je forum čija je zadaća bila razviti sustav temeljen na interakciji dodirom između različitih vrsta uređaja u spektru potrošačke elektronike. Tehnologija je nazvana NFC (engl. Near field communication). 10 godina kasnije, zajedno s razvojem informacijskih sustava, ta tehnologija se budi i danas omogućuje stvari poput poništavanja voznih karti u javnom prijevozu, plaćanja u trgovinama, pristup kancelarijama u uredu, prijavu na računalo, pa čak i stvari poput ispisa zadataka na pisaču.

Namjera ovog rada je prikazati rad NFC uređaja i mogućnosti NFC tehnologije, te njezino korištenje u kombinaciji s pametnim telefonima. Iako se NFC može koristiti i u obliku klasičnih beskontaktnih kartica, integracijom NFC-a u pametne telefone može se dobiti jedinstveni autorizacijski uređaj što je puno elegantnije rješenje te koje u smislu prograbilnosti pruža više mogućnosti.

Obzirom da je integracija i NFC podrška u pametnim telefonima u razvoju, u ovom radu ćemo se posebno fokusirati na mogućnost korištenja softverske emulacije kartica (engl. Host Card Emulation1) koja omogućuje daljnji razvoj NFC aplikacija, a samim time i područje primjene NFC-a.

Ključne riječi: NFC (engl. Near field communication) tehnologija, Autentifikacija, informacijski sustavi, pametni telefoni

ABSTRACT

In year 2004., a forum was established whose task was to develop a system to provide „touch based“ interaction between different kinds of devices in range of consumer electronics. The technology is named NFC (Near Field Communication). 10 years later, along with IT evolution, that technology is awaken and today it enables things like notching the public transport tickets, paying in stores, accesing the offices, loging to computer, event things like printing tasks on printer.

The intention of this paper is to show the work of NFC devices and features of NFC technology, as well as it's use in combination with smartphones. Although NFC can be used in form of classical contactless cards, by integrating NFC with smartphones a unique authorization device can be

1 https://en.wikipedia.org/wiki/Host_card_emulation

Page 2: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

achieved, which is much more elegant solution that provides more in a way of multiple programability.

Regarding the fact that integration and NFC support in smartphones is in developing, in this paper we will focus in particular on the possibility of using software emulation card (Host Card Emulation), which allows further development of NFC applications and therefore the scope of NFC 's usage.

Key words: Near Field Communication (NFC), Authentification, Information systems, Smartphones

1 UvodNFC tehnologija je nastala na temeljima Radio-Frequency Identification (RFID) tehnologije koja datira još od sredine 80-tih godina prošlog stoljeća kao odgovor na zahtjev povećanja sigurnosti prijenosa podataka2. Pravi razvoj NFC-a započinje 2004. godine kada su Nokia, Sony i Philips osnovali NFC forum, a njegove prve praktične primjene se pojavljuju od 2006. godine nakon objave inicijalne specifikacije NFC oznaka (eng Tag)3. Prve primjene NFC-a su se koristile za jednostavan prijenos podataka u smislu izmjene elektroničkih posjetnica ili za pristup online digitalnim sadržajima putem očitavanja NFC tagova (pametni plakati4). Nakon toga uslijedila je integracija NFC-a u sustave kontrole pristupa, poput pristupa prostorijama, nadzorima prisutnosti, te pristupa javnom transportu. Ovi sustavi se nisu previše razlikovali od klasičnih RFID sustava, odnosno koristili su NFC beskontaktne kartice zajedno s NFC i RFID čitačima koji su u pozadini komunicirali s autentifikacijskim i autorizacijskim sustavima.

Prava revolucija NFC tehnologije dogodila se razvojem pametnih telefona i njihovom integracijom s NFC čipovima. Od pukih uređaja za glasovnu komunikaciju i slanja tekstualnih poruka, mobilni telefoni su tijekom godina postali pametna prijenosna računala koja omogućuju konstantnu povezanost s Internetom te integraciju sa širokim spektrom tehnoloških uređaja poput kamere, GPS, žiroskopa i sličnog hardvera. Funkcionalnost NFC-a omogućuju pametnim telefonima dodatni iskorak u području upotrebe, pretvarajući ih u centraliziranu platformu za autentifikaciju pristupa raznim javnim i privatnim informacijskim servisima i uslugama. Od 2012. kada je ova integracija započela svoj proces, popularnost NFC usluga, te broj korisnika se znatno povećava, a beskontaktne kartice za autorizaciju sve više zamjenjuju pametni telefoni. Trenutno najinteresantnija tema u području NFC-a je korištenje NFC-a u uslugama on-line plaćanja. Obzirom na potencijal i tržište, svi vodeći proizvođači pametnih telefona (Apple, Google, Microsoft) u svojim najnovijim modelima nude podršku za NFC, te u suradnji s mobilnim operaterima i bankama nude usluge on-line plaćanja. Ove usluge omogućuju korisnicima beskontaktno plaćanje na različitim Point of Sales (POS) uređajima bilo pomoću beskontaktnih kartica bilo pomoću mobilnih aplikacija digitalnih novčanika (Google Wallet, Microsoft Wallet) kroz servise kao što su Visa PayWave, MasterCard PayPass, AmericanExpress ExpressPay, i ostali.

2 NFC tehnologijaNear Field Communication (NFC) je bežična tehnologija kratkog dometa koja je promovirana od strane NFC Foruma oformljenog 2004. godine. Zadaća Foruma bila je omogućiti interakciju između

2 http://www.nearfieldcommunication.org/history-nfc.html3 http://www.nfc-forum.org/news/pr/view?item_key=0b210bbd23e9c1a07cb3d975e6317d1d650ed51f4 Konferencija Tiskarstvo i Dizajn 2013, Marincel, Prlić str. 17-35

Page 3: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

različitih uređaja u potrošačkoj elektronici (mobilni uređaji, PC računala i pametni uređaji) pomoću dodira, te koristiti tu interakciju za prijenos informacija u svrhu autorizacije i plaćanja. NFC je tehnologija kratkog dometa (prijenos sa maksimalnih 4 cm udaljenosti) što osigurava veću razinu sigurnosti i otpornost na različite vrste napada, putem metoda kao što su prisluškivanje ili čovjek u sredini, engl. Man in The Middle.

Proces komunikacije između NFC uređaja zasniva se na ulogama aktivnog i pasivnog elementa, odnosno predajnika i prijemnika. Sam prijenos se zasniva na principu magnetske indukcije koja stvara indukcijsko polje između antena oba uređaja. Generiranjem kontinuiranog signala predajnik inducira polje između antena, putem kojeg se mogu slati električni impulsi odnosno podaci. Predajnik koji šalje signal, zapravo ima ulogu NFC čitača koji očitava informacije i podatke koje su pohranjene u pasivnom elementu. Zbog potreba generiranja signala predajnik mora imati vlastiti izvor napajanja i od tuda proizlazi naziv aktivni element. S druge strane, prijamnik je uređaj koji se sastoji od tanke antene bez aktivnog napajanja zbog čega prijamnici mogu biti izvedeni kao naljepnice ili tanki sloj plastike što ih čini iznimno fleksibilnim za ugradnju u razne uređaje. Prijamnici u NFC terminologiji se nazivaju NFC oznake (engl. NFC tag). Obzirom na vrstu izvedbe postoje nekoliko različitih vrsta NFC oznaka koje se osim po izvedbi razlikuju i u kapacitetu pohrane podataka i brzinama. U sljedećoj tablici5 prikazane su sve vrste NFC oznaka kao i njihove specifikacije.

Tablica 1 Popis i specifikacije NFC oznaka

Vrsta oznake Kompatibilnost Memorija Brzina Način zapisa (čitaj – piši)Tip 1 ISO/IEC 14443 A 96 Byte – 2

KByte 106 kbit/sec Promjenjivo

Tip 2 ISO/IEC 14443 A 48 Byte – 2 KByte

106 kbit/sec Promjenjivo

Tip 3 (JIS) X 6319-4 Do 1 Mbyte 212 kbit/sec PromjenjivoTip 4 ISO/IEC 14443 A/B Do 32 KByte 106 kbit/sec Ne promjenjivo

Kao što se iz tablice može vidjeti količina podataka koje možemo pohraniti u jedan tag je prilično mala, no ipak dovoljna za spremanje informacija kao što su: tekst, web adrese, telefonski brojevi. U slučaju većih oznaka to mogu biti: telefonski kontakti, autorizacijski podaci ili automatizirane akcije za pametne telefone koje se po očitavanju automatski primjenjuju na uređaj. Upravo mogućnost pohrane automatiziranih akcija stvara maksimalnu kreativnost u upotrebi NFC-a u svakodnevnom životu. Neki od kreativnijih primjera upotrebe NFC tag-ova je NFC pametna perilica za rublje koja „zna“ koje ste rublje stavili u perilicu te na temelju toga optimizira proces pranja i potrošnje energenata6. Ostale „svakodnevne – uradi sam“ primjene možete potražiti na Internetu kroz blog-ove7 koji korisnici ove tehnologije objavljuju.

Fizički sloj NFC-a, koji se zove NFCIP-1, standardiziran je 2004. godine unutar ISO 18092. Novi standard je kompatibilan i nastavlja se na prethodni beskontaktni RFID standard, definiran u ISO 14443. Kasnije je definiran NFCIP-28 koji je standardiziran unutar ISO 21481. Kako RFID i NFC komuniciraju na istom frekvencijskom području od 13,56 MHz ovaj standard definira mehanizam odabira komunikacije između ovih tehnologija. Povrh NFCIP, NFC Forum je objavio tehničke specifikacije za viši (aplikativni) sloj komunikacije između NFC uređaja i oblik strukture paketa

5 http://www.nfc.cc/technology/nfc-tag-types/ 6 http://www.nfcworld.com/2012/03/05/314143/nxp-demonstrates-nfc-washing-machine/ 7 http://trendblog.net/creative-and-useful-ways-to-use-nfc-tags-with-your-smartphone/ 8 http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-352.pdf

Page 4: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

(NDEF - NFC data exchange format) kako bi se osigurala kompatibilnost i jedinstveni način komunikacije.

Upravo zato što NFC ne zahtjeva nikakvu konfiguraciju, kao što je slučaj s drugim bežičnim komunikacijskim tehnologijama poput WiFi i Bluetooth, NFC pruža korisnicima jednostavan i intuitivan prijenos podataka i korištenje.

Kako je NFC kompatibilan s RFID ISO 14443 standardom, veliki broj postojećih sustava mogu koristiti NFC omogućene uređaje. NFC podržava tri načina komunikacije Čitač/Pisač, Emulacija kartice, i partner-partner koji će biti dalje opisani.

Čitač/Pisač način rada : U ovom načinu NFC uređaj preuzima ulogu aktivnog elementa odnosno RFID čitača. Ovaj način rada omogućuje NFC uređajima komunikaciju s pasivnim RFID i NFC tagovima, koji napajaju svoje čipove pomoću indukcije struje putem dobivenog signala. Osim što je moguće čitati uređaj u ovom načinu rada mogu se i zapisivati informacije na Tag-ove, ukoliko je zapis informacija dozvoljen.

Emulacija kartice : Ovaj način rada omogućuje aktivnom NFC uređaju emuliranje pasivnog elementa, te samim time omogućavanje komunikacije s drugim čitačem. Ovaj način rada se može koristiti za autentifikaciju u različite sustave koji se baziraju na ISO 14443 standardu, bez potrebe za striktnim postojanjem pasivnog elementa. Komunikacija u ovom načinu rada također se odvija putem čitaj/piši tehnike koja je prethodno opisana, gdje uređaj koji se nalazi u emulacijskom modu postaje pasivni element odnosno predajnik.

Partner-partner način rada: Ovaj način rada podržava komunikaciju samo između NFC uređaja, te komunikacija nije kompatibilna s RFID ISO 14443 sustavima. Specifično za ovaj način rada je da NFC uređaj tijekom prijenosa može poprimiti ulogu prijemnika i predajnika. Tijek prijenosa se odvija naizmjeničnim slanjem informacije s jednog na drugi uređaj i to na način da uređaj koji šalje informacije aktivira NFC signal, a onaj koji prima gasi signal i obrnuto. Suprotno od čitaj/piši načina komunikacije u partner-partner načinu pasivni element (predajnik) ne šalje informacije aktivnom putem magnetske indukcije već koristi svoj vlastiti signal kao metodu prijenosa. Uloga prijamnika i predajnika se određuje pri uspostavi komunikacije, odnosno uređaj koji prvi aktivira antenu postaje prijemnik. Na temelju uloga koje se odrede, definira se i tijek komunikacije između uređaja. Prijamnik mora prvi započeti komunikaciju, a predajnik može komunicirati samo po primitku poruke prijamnika. Informacije koje se izmjenjuju između uređaja definirane su u NFC Data Exchange Formatu (NDEF) koji osigurava kompatibilnost između različitih vrsta uređaja. Ovaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu Bluetooth ili Wi-Fi veze.

Nažalost nisu svi načini komunikacije uvijek dostupni u aplikacijama koje se oslanjaju na NFC tehnologiju što zbog tehničkih karakteristika NFC čipa ugrađenog u uređaj, što zbog različitih proizvođača NFC uređaja. Ovo se najbolje može vidjeti na primjeru Google-ovi Android pametnih telefona koji ne podržavaju partnerski način komunikacije, već umjesto njega koriste Android Beam sučelje. Android Beam9 je skraćena verzija partnerskog protokola koja ograničava samo jednu izmjenu podataka po uspostavi konekcije. Ukoliko se aplikacija bazira na višestrukoj razmjeni podataka, onda je potrebno uspostaviti nove sesije odmičući uređaje iz raspona djelovanja. Jedan od zaobilaznih načina za rješenje ovog problema je da u prvoj izmjeni NFC aktivira uspostavu Bluetooth konekcije između uređaja nakon koje se po novoj konekciji ostvaruje ostali tijek razmjene podataka.

9 https://en.wikipedia.org/wiki/Android_Beam

Page 5: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

3 Autentifikacija pomoću NFC pametnih telefonaKako je danas NFC prisutan u svakom novom pametnom telefonu10 pojavljuje se sve više i više NFC aplikacija na tržištu (Microsoft, Google, Apple). Međutim puni potencijal NFC-a još uvijek nije dostupan svim programerima radi razvoja aplikacija. Ovo se specifično odnosi na pristup sigurnom elementu (Secure Element SE), mikročipu koji se u telefonu koristi za emulaciju pametnih kartica. Taj mikročip se čuva pod strogim nadzorom proizvođača uređaja i mobilnog operatera. Bez obzira na to, emulacija je potrebna radi interakcije s većinom postojećih RDIF baziranih sustava koji se koriste radi kontrole pristupa prostorijama, kontrola karata u sustavu prijevoza i naplate. Na NFC uređaju sigurni element u sebi čuva kritične sigurnosne podatke poput bankovnih kartica kojima se vrši naplata, pristupnih šifri za ulazak u prostorije i karata za javni prijevoz. Putem NFC kontrolora u pametnom telefonu, sigurni element može biti dohvaćen kao da je riječ o standardnoj beskontaktnoj pametnoj kartici.

Naročito u sektoru razvoja naplate – dio NFC-a koji generira najveće zarade – posebno se fokusiraju na korištenju sigurnog elementa za izradu aplikacija naplate. Iz tog razloga veliki broj kompanija želi imati pristup sigurnom elementu kako bi ugrabili dio tog profitabilnog kolača.

Na slici 111 prikazani su različiti tokovi NFC podataka kroz chipset NFC pametnog telefona. Aplikacijski procesor predstavlja glavnu procesorsku jedinicu telefona. NFC kontrolor je glavna komponenta koja upravlja NFC mogućnostima u telefonu, a sastoji se od NFC modema i izvršava pred obradu komandi i podataka. Sigurni element, kao što je već prije rečeno predstavlja mikročip u telefonu koji je sposoban emulirati beskontaktne pametne kartice. Putanja 1 označava tijek prijenosa komandi i podataka između aplikacijskog procesora i NFC sučelja. Ova putanja se koristi u partner-partner načinu rada, čitaj/piši načinu rada i kod softverske emulacije beskontaktnih pametnih kartica. Putanja 2 označava tijek prijenosa komandi i podataka između sigurnog elementa i NFC sučelja. Ova putanja se koristi pri emulaciji korištenje sigurnog elementa. Osim što je spojen na vanjsko sučelje, sigurni element je povezan i na aplikacijski procesor. Na ovaj način sadržaj sigurnog elementa može biti upravljan putem pametnog telefona i kroz mrežu mobilnog operatera. Pristup aplikacijskom procesu može biti direktan (putanja 4) ili preko NFC kontrolora (putanja 3). Putanja 2 i 3 su isključive i ne mogu obje biti istovremeno aktivne.

Postoji nekoliko mogućih opcija za ostvarivanje NFC emulacije. Ona se može razlikovati na temelju korištenog komunikacijskog standarda, ovisno o vrsti podržanih komandi i protokola, te na temelju dijela uređaja koji ostvaruje emulaciju.

Obzirom na komunikacijski standard postoje 3 mogućnosti : ISO/IEC 14443 Tip A, ISO/IEC 14443 Tip B i FeliCa (JIS X 6391-4). Podrška za svaki od ovih mogućnosti ovisi o NFC čipu, sigurnom elementu i vrlo često geografskoj regiji. Primjerice ISO/IEC 14443 Tip A i B su najzastupljenije u Europi, dok je FeliCa najraširenija u Japanu.

Osim ove, još jedna bitna razlika je dio uređaja koji izvršava emulaciju. Kao što smo već vidjeli iz slike 1 emulacija se može ostvarivati pomoću mikročipa – sigurni elementi, a osim ovoga u najnovijim verzijama pametnih telefona postoji mogućnost emulacije u softveru (na aplikacijskom procesoru).10 http://www.nfcworld.com/nfc-phones-list/11 Modificirano iz M. Reveilhac, M. Pasquet “Promising Secure Element Alternatives for NFC Technology".

Slika 1: Dijelovi NFC sučelja

Page 6: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

3.1 Autetnifikacija korištenjem sigurnog elementaReveilhac i Pasquet definirali su siguran element u svom radu12 kao: “The secure element (SE) is a combination of hardware, software, interfaces and protocols embedded in a mobile handset, which enable secure storage and provides a secure area for the execution of applications and protection of assets such as payment data and keys”.

Sigurni element može biti zaseban mikročip koji je ugrađen u NFC uređaj. Alternativno, takav čip također može biti ukomponiran u sklopu NFC kontrolora. Treća opcija je integracija sigurnog elementa u drugu pametnu karticu ili sličan sigurnosni uređaj koji se koristi unutar NFC uređaja (ovakve primjere možemo naći u specijaliziranim Subscriber Identity Module SIM karticama ili kao secure digital SD memorijskim karticama). Velika većina dostupnih sigurnih elementa su zapravo standardne pametne kartice te s njima dijele istu hardversku i softversku platformu, a jedina razlika između njih je što sigurni element ima direktno sučelje za komunikaciju s NFC kontrolorom. Razlog postojanja ovog sučelja je sprječavanje prijenosa podataka putem „nesigurnog“ aplikacijskog procesora. Iz sigurnosnog aspekta ovdje je prisutan visoki stupanj sigurnosti te kao i sve pametne kartice zaštićeni su od različitih napada koji se baziraju na dohvatu i manipulaciji pohranjenih podataka. Zaštita od manipulacije znači da SE pruža mehanizam koji čini jako teškim ali ne i nemogućim za napadača da kompromitira podatke i sigurnosne ključeve u SE. Analiza SE sigurnosti i primjeri mogućih napada na NFC omogućene uređaje s ugrađenim sigurnosni elementom mogu se pronaći u radu „Practical attack scenarios on secure element enabled mobile devices“.13

Upravo iz ovog visokog stupnja sigurnosti, kao i činjenice da prava pisanja po sigurnom elementu su ograničena na proizvođača uređaja i mobilnog operatera, korištenje sigurnog elementa za emulaciju nije pogodno za veliku većinu programera koji teže napraviti aplikacije za autorizaciju na NFC ili RFID sustave. Na slici 2 može se vidjeti arhitektura uređaja sa SE emulacijskim čipom

1. Preko NFC čipa SE komunicira s NFC kontrolorom, i kroz njega s beskontaktnim POS uređajem ili RFID čitačem kako bi se izvršila transakcija

2. SE komunicira s korisničkom aplikacijom koja se prezentira na korisničko sučelje poput Mobile Wallet-a

3. SE komunicira putem mreže mobilnog operatera s davateljem sigurnih podataka Trusted Service Manager (TSM). Pohrana podataka u SE.

12 M. Reveilhac, M. Pasquet “Promising Secure Element Alternatives for NFC Technology".13 Roland, M., Langer, J., & Scharinger, J. (2012). Practical attack scenarios on secure elementenabled mobile devices. Near Field Communication (NFC), 2012 4th International Workshop on, 19-24

Slika 2 SE bazirana NFC emulacija

Page 7: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

3.2 Autentifikacija korištenjem softverske emulacije karticaSoftverska emulacija kartica (engl. Host Card Emulation HCE) omogućuje NFC kontroloru dodatno usmjeravanje komunikacije s beskontaktnih POS uređaja na HCE servis koji se nalazi u aplikacijskom procesoru pametnog telefona. HCE servis se može implementirati na nekoliko načina, a najčešće je dio mobilne aplikacije s prezentiranim korisničkim sučeljem, kao što je Mobile Wallet za plaćanje. Sigurnosni podaci koje koristi HCE servis mogu biti pohranjeni u samoj aplikaciji, ili mogu biti pohranjeni na nekoj drugoj sigurnoj lokaciji kao što je memorijska kartica ili u konačnici sigurni element. Alternativno HCE servis se može u realnom vremenu spajati na udaljeni server kako bi dohvatio potrebne sigurne podatke pomoću kojih bi realizirao transakciju s POS uređajem. Dohvaćanje podataka u realnom vremenu je trenutno pod velikim upitnikom zbog mogućih mrežnih latencija što može doprinijeti lošem korisničkom iskustvu. Na slici 3 i 4 može se vidjeti HCE struktura aplikacije kao i model rada s dohvaćanjem podataka s udaljenog poslužitelja.

Sam proces autentifikacije jednak je onom koji se koristi pri upotrebi sigurnog elementa, a sastoji se od sljedećih koraka :

1. Korisnik otvara mobilnu aplikaciju koja je konfigurirana za rad s SE ili HCE servisom2. Odabire uslugu koju želi koristiti (plaćanje, prijevoz, pristup)3. Aktivira transakciju dodirom na POS ili RFID čitač4. Upisuje PIN ili alternativnu metodu identifikacije, ovisno o samoj aplikaciji5. NFC čip prosljeđuje informacije iz HCE ili SE elementa čitaču ili POS uređaju

3.2.1 Izrada NFC pametne kartice za prijavu na računaloOsim pametnih telefona, drugi uređaji kao pojedini NFC čitači također mogu biti upotrebljeni za izvršavanje softverske emulacije kartica bez postojanja sigurnog elementa. Primjer takvog čitača je model ACS ACR 122U NFC pomoću kojeg su autori ovog članka napravili NFC pametnu karticu za prijavu na računalo. U ovom eksperimentu korišten je navedeni čitač NFC kartica, NFC oznaka RapidNFC, te besplatni softver NFC Connector Lite14. Od infrastrukturnih servisa korišten je interni Certification Authority (CA) poslužitelj u svrhu izdavanja certifikata za prijavu na računalo pomoću pametnih kartica. Postupak izrade pametne NFC kartice sastoji se od sljedećih koraka:

1. Na stolno računalo instaliramo NFC čitač zajedno s upravljačkim programima

14 https://www.mysmartlogon.com/products/nfccsp.html

Slika 3 HCE aplikacija s lokalnim podacima Slika 4HCE aplikacija s udaljenim podacima

Page 8: Uvod - Hrvatska znanstvena bibliografija · Web viewOvaj način rada se može koristiti radi razmjene kontakata iz imenika telefona, ili za razmjenu podataka potrebnih za uspostavu

2. Na stolno računalo instaliramo NFC Connector Lite aplikaciju 3. Na CA poslužitelju kreiramo predložak certifikata za prijavu s pametnim karticama4. Na CA poslužitelju omogućimo izdavanje certifikata na temelju kreiranog predloška5. Kroz NFC Connector Lite zatražimo izdavanje certifikata i cerifikat pohranimo na NFC karticu

Iako je u ovom eksperimentu korištena fizička pametna kartica, na stranici prozivođača NFC Connector Lite aplikacije navedeno je da aplikacija radi i s pametnim telefonima koji imaju omogućenu NFC softversku emulaciju. Ovaj proces nije testiran i u sklopu eksperimenta, ali postoji niz smjernica koje opisuju kako razviti mobilnu aplikaciju za pohranu sigurnih podataka u NFC uređaj korištenjem softverske emulacije kartica. Trenutno Google Android15 i Microsoft Windows Phone16 operacijski sustavi nude podršku i smjernice za razvoj aplikacija na navedenim platformama, dok Apple IOS na Iphone 6 uređajima nudi NFC samo uz korištenje sigurnog elementa.

4 ZaključakKorištenjem HCE metode za pohranu autentifikacijskih podataka dobiva se potrebna sloboda za izradu novih mobilnih aplikacija koje koriste NFC interakciju bez potrebe da se oslanjamo na usluge mobilnih operatera i izdavača sigurnih elemenata. Kako su razvojne platforme standardizirane i većina ih ima Application Programming Interface (API) ugrađenu podršku za beskontaktne kartice izrada samih aplikacija je puno jednostavnija, obzirom da se aplikacija može bazirati na jednostavnom Čitaj/Piši načinu rada. Bez korištenja sigurnog elementa, aplikacije imaju ograničene opcije za sigurnu pohranu osjetljivih podataka poput kriptografskih ključeva. Kao što je prethodno analizirano, najjednostavniji način za pohranu sigurnih podataka bi bio pisanje direktno u aplikacijski kod, međutim ova tehnika je jako osjetljiva zbog raščlanjivanja koda koje omogućava napadaču pristup osjetljivim podacima koji su pohranjeni u aplikaciji. Još teža posljedica bi nastala kloniranjem aplikacije i prebacivanjem na drugi uređaj, čime bi osjetljivi podaci koji se nalaze u kodu postali dostupni na drugom uređaju. Alternativni način, koji je također prikazan, oslanjanja se na udaljenu lokaciju i postojanje sigurnog komunikacijskog kanala za prijenos i dohvat osjetljivih podataka. Iako ovaj pristup ima preduvjete za stvaranje sigurnog okruženja, realizacija može biti skupa i kompleksna, a samim time može ograničiti upotrebu aplikacije zahtijevanjem konstantno dostupne sigurne on-line veze. Osim sigurnosnog aspekta, trenutno postoji i ograničenje u smislu pametnih telefona koji podržavaju implementaciju HCE. Kroz vrijeme ovaj problem bi trebao biti uklonjen, no trenutno samo najnoviji pametni telefoni imaju podršku za HCE, što ograničava mogućnost upotrebe aplikacija. Po našem mišljenju, glavni nedostatak HCE-a je sigurnost osjetljivih podataka, što uvelike ograničava upotrebu NFC-a u platežnim aplikacijama. Međutim, korištenje HCE-a za NFC aplikacije koje imaju manju vrijednost, a samim time i manju vjerojatnost da će biti izložene napadima su prave platforme na kojima se ova funkcionalnost treba iskoristiti. Primjeri upotrebe mogli bi biti različiti Loyality programi, interaktivne promocije, oglašavanja, kuponi koji korisnici skupljaju putem svojih mobilnih telefona te na taj način ostvaruju pogodnosti. Također, primjena ovakvih aplikacija u javnom prijevozu isto ima ograničenja zbog specifičnih AID oznaka koje su implementirane u većini sustava koje se koriste NFC-om u javnom prijevozu, ali ovisno o vrijednosti osjetljivih podataka možda se isplati preuzeti rizik (jedna vožnja u zabavnom parku, ili autobusu). Ista je stvar s kontrolom pristupa, ukoliko postojeća infrastruktura se bazira na MIFARE standardu, onda ona predstavlja značajne probleme s kompatibilnošću (o čemu se govorilo u sekciji 5.3 smart card alliance 2014 dokumenta). S druge strane ako je sustav baziran na novim NFC čitačima i podložan je ISO/IEC 14443 standardu, implementacija ne bi trebala biti problem.15 http://developer.android.com/guide/topics/connectivity/nfc/hce.html 16 http://blogs.msdn.com/b/nfc/archive/2015/05/01/how-to-write-an-nfc-host-card-emulation-hce-app-with-windows-10-for-mobile.aspx