TÉT 10-1-2011-0907 project

A projekt célja, az elkészült feladatok és elért eredmények bemutatása


A projekt keretének célja, hogy egy új technológiát és HW, SW elemeket tartalmazó csomagot fejlesszünk magas színvonalú, előrehaladott elektronikus fizetési megoldás céljából, amely mobil eszközökön keresztüli kommunikációt biztosít.

A megoldás és a technológiai elemek az alábbi technológiákra épülnek:

  • Mikroprocesszoros chipkártya, amely .net framework-kel kompatibilis, amely az egyik legelterjedtebb IT környezetet jelenti
  • A legfejlettebb aszimmetrikus és szimmetrikus kriptográfiai algoritmusok (RSA, 3DES, AES)
  • Java technológia, amely széleskörű interoperabilitást tesz lehetővé a különböző eszközök használata esetén, különösen a mobil telefonok alkalmazásakor
  • NFC (near field communication) technológia, amely a legújabb, világszerte elfogadott kontaktusnélküli kommunikációs technológia a mobiltelefonok esetén is

A projektben kifejlesztett HW és SW elemek a következőek:

  • Fejlett elektronikus fizetési alkalmazás (memo az egyszerű, és micro az összetettebb elektronikus pénztárca alkalmazásokhoz) multifunkcionális .net kártyára kialakítva
  • kontaktusos és kontaktusnélküli olvasó NFC kommunikációs interfésszel, amely kezeli a multifunkciós e-fizetési alkalmazással ellátott kártyát
  • Java applet autentikációs és tranzakció kommunikációs céllal, amelyet a mobil készülékre kell tölteni (olvasó – host kommunikáció NFC-n keresztül)
  • host alkalmazás emuláció tesztelési és értékelési célra
  • Specifikációk és dokumentációk (pl. kommunikációs protokollok)

1.1 A megoldás technológiai bemutatása


1.1.1 .net kártya memo alkalmazás


A memóriakártya alkalmazással a .net PKI kártya aláírás és titkosítás funkciói kibővíthetőek adatok tárolására és elektronikus pénztárcák kezelésével.
A memo alkalmazás a kártyán írható és olvasható memóriaterületet és elektronikus pénztárcákat tartalmaz. Az alkalmazás beépített logikával és 4 bájtos kódokkal biztosítja, hogy a szabadon írhatóság, csak a beépített logikának megfelelően a titok birtokában legyen megvalósítható. A .net kártya memo alkalmazással a memóriakártya funkciói a hagyományos plasztik kártya formátum mellett eltérő pl. USB-s formában is megjelenhetnek, a kártya kezelésében pedig a hagyományos APDU kommunikáció mellet lehetőség van a .NET remoting technológia használatára.

A memo alkalmazás technikai jellemzői:

  • 256 bájt memória
  • PC/SC és ISO 7816-3 (T=0) kompatibilis működés
  • 3 db 4 bájtos kód az adatok és az elektronikus pénztárca egyenleg védelmére
  • Automatikus számláló és zárolás funkció a sikertelen kódbemutatásokra
  • Automatikus tranzakció számláló
  • Felhasználói módban védett, csak olvasható adatmezők
  • 2 db elektronikus pénztárca
  • Tranzakció megszakítás elleni védelem
  • Kibocsátó specifikus csak olvasható azonosító
A kártya struktúráját az alábbi ábra mutatja:



A multi-alkalmazás alapú .NET okos kártya megoldás, egy olyan megoldás, ami a Gemalto .NET okos kártyákon fut. Célja, hogy kiterjessze a .NET kártyák alap funkcionalitását, lehetővé téve a többcélú felhasználást és fizetési folyamatokhoz kapcsolódó parancsok kezelését.

A kifejlesztett GemClub-Memo alkalmazásnak az alábbi tulajdonságai vannak:

  • Könnyű implementálhatóság: a kártya a T=0 protokollt használja
  • Megnövelt biztonság (három biztonsági kód, hozzáférési szintek, stb)
  • Megnövelt megbízhatóság, az érzékeny adatok automatikus mentése, megbízható protokoll

Légyegét tekintve ez egy mikroprocesszoros kártya-alkalmazás.

A kártya-alkalmazásnál használt protokoll előnye:

  • A felhasznált eljárás jelen van a legtöbb terminálban
  • A fejlesztők jól ismerik világszerte
  • Használatával nem szükséges külön könyvtárakat vagy meghajtó programokat kifejleszteni
  • A mikroprocesszor kártyákhoz hasonlóan, APDU parancsokat használ
Ezt a fajta kártya-alkalmazást többfajta alkalmazáshoz is fel lehet használni:

  • Loyality programok
  • Privát elektronikus pénztárca
  • Mérő kártya, ami valamilyen árucikk felhasználást méri
  • Személyi azonosítás


1.1.2 .net kártya ISO-7816-4 alkalmazás


Ennek az alkalmazásnak a használatával a .net kártya alap PKI funkcionalitása kibővíthető 16 bájtos kulcsokat használó 3DES algoritmussal működő külső és belső hitelesítéssel, elektronikus pénztárca műveletekkel és a kártyát védő kódok használatával.
Az alkalmazás tartalmaz egy ISO 7816-4 szabványnak megfelelő fájlrendszert és megszólítható a szabványnak megfelelő parancsokkal, mint például az internal authenticate, external authenticate, read, write és a verify code.
A kártya tranzakciók limitált számban felhasználható időszaki kulcsokkal vannak védve. Ezek a kulcsok biztosítják a tranzakciók védelmét és a kölcsönös hitelesítést a kártya és az őt megszólító alkalmazás között.


A részlegesen támogatott parancsok:
  • Credit
  • Debit
  • VerifyCode
  • SelectFile
  • GetChallenge
  • External Authenticate
  • Internal Authenticate
  • Read data
  • Write data

A multi-alkalmazás alapú .NET okos kártya megoldás, egy olyan megoldás, ami a Gemalto .NET okos kártyákon fut. Célja, hogy kiterjessze a .NET kártyák alap funkcionalitását, lehetővé téve a többcélú felhasználást és fizetési folyamatokhoz kapcsolódó parancsok kezelését.
A kifejlesztett alkalmazás az ISO 7816-1, -2, -3 szabványokon alapul, azoknak megfelel. A szabványos parancsok, adat struktúrák (multi-alkalmazás) és a visszatérési parancsok biztosítják, hogy széles kőrben elfogadható legyen az így elkészített alkalmazás az alkalmazás fejlesztők és POS terminál gyártói által.
  • Különleges biztonsági tulajdonságok:
    - Biztonsági kód/kulcs menedzsment és ellenőrzés
    - Az érzékeny adatok védelme
    - 3DES titkosítási eljárás alkalmazása az azonosításhoz, a biztonságos üzenetküldéshez és a fizetési igazolások kiadásához.
    - Alkalmazás szintű ellenintézkedések az adatvédelem támogatásához
  • Adminisztrációs parancskészlet
    Egy fejlett adminisztrációs utasításkészlet is része a szabványnak, ami megkönnyíti a kártyák megszemélyesítését.
  • Fizetési parancskészlet
    A specifikációnak része egy olyan parancssor készlet is, ami az elektronikus pénztárca kialakítását támogatja. Ezek fizetéshez kapcsolódó parancskészlet. (p.l.: Debit, Credit, és egyenleg lekérdezés)
  • Testre szabható megoldás
    A specifikáció ezen része biztosítja, hogy rugalmas és széles kőrben használható alkalmazásokat lehessen kifejleszteni.

Adatstruktúra

Az alkalmazás rendszer alapja egy meghatározott fájl struktúra. A fájlok kétszintű hierarchiába vannak rendezve – globális szint és lokális szint. A Mester Fájlok (MF) jelentik a csúcsát (globális) ennek a hierarchiának. Az MF által az Alap Fájlokból (AF) létrehozott alárendelést globális szintnek nevezik. A Hozzárendelt Fájlok (HF) által az AF-ekkel közösen alkotott szint a helyi szint ebben a struktúrában. A HF számos AF-et tartalmazhat. Minden AF adatot tartalmaz.

Adathozzáférés menedzsment
A fájlokhoz való hozzáférés jelszóhoz kötött. A jelszót egy dedikált AF fájl tartalmazza, ezt jelszó fájlnak neveik. Minden kód fájl nyolc jelszót tud tárolni. A számozás 0-tól 7-ig terjed. Az MF és minden egyes HF egy-egy jelszófájlt tartalmaz.
A hozzáférési jogosultságok határozzák meg a fájl védelmi szintjét. Ezeket két bájtos regiszterek, amelyeket az AF és HF leírások tartalmaznak.

Parancskészlet
A parancsoknak két osztálya van, adminisztratív és fizetési. Az adminisztrációs parancsok tartalmazzák a fájlok létrehozásának a függvényeit, az olvasási és írási és frissítési rekordokat. A fizetési parancsok a pénztárca funkciók megvalósítását teszik lehetővé, fizetés a pénztárcából és a pénztárca egyenlegének lekérdezésével.

NFC kompatibilis telefon biztonsági modul Java alkalmazás

A 2.2.1 Java kártya platformnak megfelelő alkalmazás NFC kompatibilis telefonra feltöltve képes .net kártya memo és ISO 7816-4 kompatibilis alkalmazások hitelesítésére. A kártyán tárolt adatok és az elektronikus pénztárca egyenlege csak akkor módosíthatóak, ha a megfelelő titok (hitelesítő kulcsok és kódok) birtokában lévő mobil telefon jelen van és hitelesíti a kártyát és a tranzakciót.
A memo alkalmazás esetén a telefon számolja ki a kártyára egyedileg jellemző kódokat, amik szükségesek a kártyaművelet végrehajtásához. ISO 7816-4 kompatibilis alkalmazás esetén a hitelesítő kulcsok ismeretében a telefon számolja ki a tranzakció sikeres végrehajtásához szükséges időszaki kulcsokat. Ezenfelül a mobil telefon alkalmazás biztosítaná a kommunikációs csatornát az olvasó és a host között.

NFC – a megoldásban használt kártya jellemzői

A kontaktus nélkül használható kártyáknál a kártya felületén nincsenek érintkező. Az adatátadásra a kártyatestben elhelyezett antennán keresztül van lehetőség. Ebben az esetben természetesen ennek megfelelő, szintén antennával rendelkező olvasó egységre van szükség. Ilyen kártyák például a Mastercard PayPass bankkártyák is. Manapság az okostelefonok nagy része rendelkezik NFC támogatással, aminek segítségével a telefonunkat használhatjuk intelligens kártyaként vagy intelligens kártyát használni tudó eszközként.

NFC-s fizetés gyakorlati folyamata – e-taxicsekk

Az e-taxicsekk kártyát a korábban ismertetett módon megkapja egy ügyfél, aki ezzel a kártyával rendezheti a fuvar díját. A fuvar megkezdésekor az utasnak fel kell mutatnia a kártyáját, mivel ez befolyásolhatja az utazás tarifáját. A fuvar végén az utas átadja a kártyát a taxisnak, aki behelyezi azt a POS terminál kártyaolvasójába. Ekkor a POS terminál megvizsgálja a kártyát, és ellenőrzi, hogy olvasható-e. Amennyiben igen, ellenőrzi, hogy van-e adatkapcsolat az Elszámoló Központtal. 

Ha nem lenne adatkapcsolat, akkor a szűkített feketelistát ellenőrzi a terminál – megvizsgálja, hogy volt-e már a kártya jogosulatlan használatban. Ha igen hibaüzenetet ír ki a kijelzőre és leállítja az aktuális tranzakciót. Ha nincs a feketelistán a kártya, akkor egy ún. offline tranzakciót könyvel le a POS terminál, azaz minden olyan adatot bekér, ami a tranzakcióhoz szükséges: viteldíj, egyéb díjak, költséghely – majd ezt követően a kész tranzakciós csomagot eltárolja saját memóriájában. (amikor a kapcsolat helyreáll természetesen továbbítja a csomagot.) Ha a kártya ellenőrzésekor van adatkapcsolat, akkor a POS bekéri a tranzakció indításához szükséges összes adatot (viteldíj, extra díjak, költséghely), elkészíti a tranzakciós csomagot és továbbítja azt az Elszámoló Központba. Amennyiben a fuvar a Diszpécser Központból érkezett cím alapján történt, akkor a fuvar adatai is bekerülnek a tranzakciós csomagba.

Az EK a beérkezett tranzakciós csomagot megvizsgálja. Először a kártya érvényességét nézi meg, hiszen ha a kártya azonosítója szerepel a lejárt, vagy tiltott kártyák listáján, akkor további feldolgozás nélkül eldobja a tranzakciót (bejegyzés kerül a sikertelen tranzakciók közé) és visszaküld egy hibaüzenetet a POS terminálnak. Amennyiben érvényes a kártya, akkor a tranzakciós csomagban található adatokból elkészíti a megfelelő bejegyzést az adatbázisba és generálja a számlát.

A POS terminál mindkét esetben (sikeres és sikertelen tranzakció) kap egy visszaigazolást az EK-tól, ami alapján egy tranzakciós nyugtát (slip) nyomtat.


1.1.3 Eszközfejlesztés

A fejlesztési tevékenység alapvető célja volt, olyan biztonságos mikrokontrollerek kifejlesztése, amik szükségesek az alkalmazások hatékony működéséhez. A jelenlegi érintkezésmentes kommunikációra használt ISO/IEC 14443 szabvány az azonosításhoz (ID)) 848 kbit/s maximális kommunikációs sebességet ír elő. Mindezek mellett igény mutatkozik a szabvány továbbfejlesztésére is, ami visszamenőleg garantálja majd a kompatibilitást és az adatátviteli teljesítmény tekintetében 5 - 10Mb/s-ot is elérhet. A kártya oldaláról megközelítve a fejlesztés irányvonalát, a biztonságos mikrokontrollerek kifejlesztése elengedhetetlen. Ezeket a mikrokontrollereket úgy kellett elkészíteni, hogy bizonyos opciókkal személyre szabhatók legyenek, és nemzetközi egyedi igényeihez is igazíthatóak legyenek, valamint az elkövetkezendő évek fejlesztéseinek alapvető építőelemeivé válhassanak. Ilyenek például az érintkezésmentes (VHDR, NFC…) illetve nagysebességű (USB,…) felületek. Jövőbeli feladat továbbá a biometrikus adatok kártyán történő feldolgozása vagy azok optimalizálása hardver alapú támogatással. Középpontba került a feldolgozási teljesítmény növelése - 32bites energiatakarékos, mindamellett a megvalósított funkciók tekintetében biztonságos processzorok alkalmazásával. A kártya elfogadó eszközök (olvasók) oldaláról megközelítve a fejlesztés irányvonalát, megvalósult a kiterjesztett kommunikációs protokoll támogatása, ill. olyan komponensek kifejlesztése, amelyek a biometrikus adatokat előkészítik a „match on card” műveletet végrehajtása előtt.


NFC olvasó beépíthető deszkamodellje – olvasó oldali nézet


NFC olvasó beépíthető deszkamodellje – bontott beszerelési nézet


NFC olvasó beépíthető deszkamodellje – biometrikus interfésszel

NFC kártyaolvasó

Az olvasó képes a NFC kártyaolvasóként működni.
Az olvasó NXP PN 532 microcontroller segítségével képes NFC kompatibilis kártyákat érzékelni, bekapcsolni és kártyákra és eszközökre ISO 7816-4 kompatibilis kártya parancsokat kiküldeni és a kártyáról érkező válaszok továbbítani.

Biometrikus olvasó

Az olvasó képes ujjlenyomat hitelesítő eszközként működni.
Az olvasó ID3 biomodule segítségével képes ujjlenyomatok leolvasására, leolvasott ujjlenyomatból template készítésére és annak továbbítására a PC-re. Az eszköz továbbá képes PC felől ujjlenyomat template fogadására és annak eldöntésére, hogy a template és az aktuálisan érzékelt ujjlenyomat azonos ujjról származik vagy nem.

1.2 A projektben megvalósított K+F tevékenység újdonságtartalma


A jelenlegi elektronikus fizetési eljárások alulfejlettek és korlátozott funkcionalitásúak annak ellenére, hogy erre a megoldásra folyamatosan nő az igény.
Javaslatunk új technológiákat kínál, amely elősegíti ezen előnyős fizetési mód használatának elterjedését a jelenlegi korlátozásokat megszüntetve, és ezen alkalmazásokat a legnépszerűbb ITC környezetbe helyezve.

A legfontosabb elemei a megoldásnak:


1. Az új kártyaalkalmazás akár több millió már kiadott azonosító kártyára lesz letölthető és olyan IT környezetben lesz használható (.net), amely napjainkban a legelterjedtebbnek számít és elég új ahhoz, hogy a következő években is megmaradjon és továbbfejlesztésre kerüljön

2. A .net technológián alapuló azonosító kártya lehetővé teszi, hogy ezen kártyákat nagyon egyszerű módon a legtöbb számítógépen és IT rendszerben lehessen használni, mivel nem igényel plusz drivert vagy kiegészítő szoftvert, ezért ezen típusú kártyák lesznek a leggyakrabban bevezetett kártyák, így érdemes ezen kártyákra fejleszteni.

3. a jelenlegi elektronikus fizetési rendszerek jellemzően egy funkciós megoldások, más funkcióktól külön működtetve és egy külön fizetési elektronikus eszközt igényelnek (hitelkártya, e-utalvány , e-pénztárca kártya vagy token, vásárlói kártya), amely nehézkessé és kényelmetlenné teszi az elektronikus fizetést nagyon sok esetben. Megoldásunk egy kiegészítő appletet kínál, amelyet egy azonosító célú, elektronikus eszközre lehet tölteni, amely eszköz már ki lett eleve bocsátva, és amely így elérhetővé teszi az elektronikus fizetést is.

4. Vannak kezdeményezések az elektronikus fizetésre mobiltelefonokon keresztül, amelyeket kártya elfogadó eszközként használnak, de ezek a megoldások csak speciális, kifejezetten e célból kibocsátott kártyákkal használhatóak, amelyek rádiófrekvenciás kommunikációt is igényelnek. Mindazonáltal a mobil telefonok nagyon jó eszközök és megfelelő kommunikációs csatornaként szolgálnak, beszerzésük nem igényel nagy beruházását (mint pl. a POS termináloké), ezért mi is alkalmazni akarjuk. De a mi fejlesztéseink egy olyan olvasót céloznak meg, amely eléggé egyszerű, de eléggé fejlett ahhoz, hogy kezelje a már említett fizetési kártyákat (esetleg később más típusú kártyákat is) és kommunikáljon valamely fizetési host szerverrel (gateway, switch, tranzakció begyűjtő vagy klíring szerver) egy mobil telefonon keresztül.

5. Másik előnye a javasolt kommunikációnak az NFC technológia alkalmazása, amely biztonságos, fejlett módja az eszközök közötti kommunikációnak és a kezelő, elfogadó autentikációjának.

6. A jelenlegi fizetési alkalmazások korlátozódnak bizonyos fizetési módokra és sok kereskedelmi szegmens ki van zárva ebből a lehetőségből, pl. a mikro fizetések, nagyon kis árusok, kezelő nélküli értékesítési pontok (pl. vendingek), és számos utalvánnyal fizethető vagy célzott szolgáltatás. A javasolt technológia költséghatékony megoldást nyújt ezen szegmensek számára és egy jelentős piaci niche-t tud lefedni.

7. A növekvő elektronikus fizetés csökkenti a papíralapú tranzakciók számát (bankjegy, papír utalványok), csökkenti a fizetés költségét, és a nem egyenlően fejlett régiók közötti különbséget, segíti a kormányzat és a kereskedelem számos szegmensének modernizációját.

8. Szintén egyedi megoldás, hogy az alkalmazott mobiltelefon technológia nem csak a kommunikációra, hanem a kezelő (pénztáros, illetve a kereskedő) valamint a tranzakciók autentikációjára is alkalmazható.

Támogatás ösztönző hatásainak bemutatása

A támogatás ösztönző hatásai legteljesebb formában a projekt lezárását követően és az eredmények további hasznosításakor fognak megmutatkozni. Ugyanakkor számos pozitívum már jelenleg is látszik, mivel a CompuWorx Zrt egy olyan projektet tudott a támogatás segítségével előkészíteni, amelyben nagy és neves nemzetközi partnerekkel tud a későbbiekben együttműködni egy nagyon aktuális, az informatikai, azon belül a biztonsági és kártya (biometrikus elektronikus azonosító) piac fellendülésben levő területén. Ez önmagában nagyon sok tapasztalatot és tanulási lehetőséget biztosított Társaságunk számára mind a konkrét szakmai illetve műszaki területen. Ezeket az ismereteket későbbiekben is (de már most is) jól tudjuk hasznosítani, így saját versenyképességünket is növeljük, illetve a végfelhasználóknak is az európai és nemzetközi trendeknek megfelelő, magas színvonalú terméket tudunk biztosítani.

Társaságunknak, mint hazai KKV-nak kiemelkedően fontos, hogy releváns értéknövelt termékekkel és szolgáltatásokkal tudjon hazai (illetve regionális) projektekben megjelenni, a magyarországi rendszerekben (különösen az államigazgatásban és más költségvetési forrásból is finanszírozott területen) saját fejlesztésű megoldásokat tudjon szállítani, és ne csupán egy nemzetközi cég viszonteladójaként vagy alacsonyabb hozzáadott értékű alvállalkozójaként működhessen. Ez azért is különösen fontos, mert így hazai szakemberek tudnak részt venni ilyen kiemelt projektek megvalósításában.

A kutatási és fejlesztési tevékenységbe történő invesztíciót – különösen a jelen gazdasági körülmények között – önállóan a Társaságunk nem tudta volna megtenni. Ugyanakkor az NKTH pályázatán elnyert támogatással kiegészítve ezt a projektet meg tudtuk valósítani. A projektből származó kutatási eredmények a CompuWorx értéknövelt termék és szolgáltatás portfólióját növelhetik, amely a cég versenyképességét, bővülését, újabb munkahelyek teremtését jelentheti. Fontos eredményként vehetjük számba azt a hatást is, amely a nemzetközi kutatási és fejlesztési együttműködésben való tapasztalatbővítést eredményez. Mivel egy nemzeti kártyaprojektben is több céggel, szervezettel kell a későbbiekben együttműködni (chipgyártás hiányában nemzetközi nagyvállalatokkal is), ez a K+F projekt komoly tapasztalatok megszerzését biztosította a CompuWorxnek, mint magyar KKV-nak. A projekt jelentős tapasztalatbővülést eredményezett Társaságunk számára, így innovációs tevékenységét hatékonyabban tudja szervezni, illetve még több energiát és erőforrást tud a kutatás-fejlesztés területre fordítani.

A projektben megvalósított „.net kártya memo alkalmazást” integrálni tudtuk a kínai partnerük (PAX Technology Limited) által gyártott POS terminálokba. Ezzel a megoldással lehetővé vált, hogy jelenlegi és jövőbeli ügyfeleink a vállalati személyi azonosításra szolgáló megfelelő intelligens chip kártyáikat akár e-taxicsekként is használhassák. Az e-taxicsek megoldás kibővítésével, a személy-fuvarozással foglalkozó ügyfeleink új szolgáltatást tudnak nyújtani az utazó közönségnek, hiszen a bankkártyás fizetés mellett elektronikus taxi-csekket tudnak biztosítani, ami csökkenti az adminisztrációs terheket.