Kormányablak, Ügyfélkapu, magyarorszag.hu, kormany.hu
KORMÁNYABLAK, ÜGYFÉLKAPU - A ZÁRT AJTÓK MÖGÖTT...
(nem hivatalos e-kormányzati témájú oldal)
  
BEMUTATKOZÁS 
E-KÖZIGAZGATÁS 
IT BIZTONSÁG 
  
































  Mottó:
A szabályos közlekedés
és az utópia szinonimák.
/Vavyan Fable/
2012. szeptember 29.  
 MIFARE-play II. 
   
Figyelem! Az alábbi bejegyzésben kizárólag olyan adatok szerepelnek, amelyek nyilvános forrásokból is megismerhetők, azaz üzleti titkot nem sértenek!

A Nemzeti Egységes Kártyarendszer (NEK) keretében különböző MIFARE (NXP/Philips) kártyák kerülnek bevezetésre 2012-2014 során. A BKK megvalósíthatósági tanulmányából tudjuk, hogy a tömegközlekedésben a MIFARE UltraLight C és MIFARE DESFire EV1 kártyákat vezetnék be (erről részleteket ld. az "All In" bejegyzésemben).

A MIFARE UltraLight C egy egyszerűbb, eldobható eszköznek szánt kártya, azonban a régebbi MIFARE UltraLight kártyával szemben itt már szükséges egy 3DES algoritmuson alapuló hitelesítés (authentication).

A MIFARE eszközöknél fejlesztői szemszögből nézve a legfontosabb az első lépés, azaz hogy lehet megszerezni a szükséges jogosultságokat pl. a kártya írásához. A többi már csak néhány írás-olvasás parancs kiadása...

A jelen bejegyzés a MIFARE UltraLight C modell dokumentációján (illetve egyéb nyilvános információkon) alapul.
A memória (EEPROM) felosztása:





A "lock bytes", illetve "OTP" bitek beállításainak leírása nyilvánosan nem, csak a 137631 azonosítójú "CONFIDENTIAL" dokumentumban érhető el. A hozzáférési jogosultságok megszerzését 2-kulcsos 3DES (CBC-módú) rejtjelezésen alapuló protokoll biztosítja. A különböző, publikus anyagokhoz (pl. "IEEE konferenciaanyag") egy megadott kulcskészletet lehet használni, amely a "libfreefare" forráskódjából is kiolvasható:





A hitelesítési protokoll a mifare_ultralightc_authenticate() függvényben követhető nyomon. A "libfreefare" forráskódja, illetve az "IEEE konferenciaanyag" és "ACR122 NFC olvasó" teszt vektorai segítségével a protokoll visszafejthető.





A pseudo-APDU utasítások az ACS saját, "ACR122U PC/SC Scripting Tool" segédalkalmazásával kezelhetők.

Az alábbi példában a pseudo-APDU utasítások leállítják az automatikus kártyakeresést (disable automatic polling), kezdeményezik a hitelesítési "handshake"-et a kártyánál, a megkapott "challenge" adatok alapján kiszámolt "response" értékét visszaküldik és várják a kártya jóváhagyását.





A példában szereplő pseudo-APDU utasítások értelmezése az alábbiakban olvasható.

  1. pseudo-APDU: FF 00 51 00 00


  2. pseudo-APDU: FF 00 00 00 04 D4 42 1A 00


  3. pseudo-APDU: FF 00 00 00 13 D4 42 AF 89 81 7F E2 A8 D7 18 08 F7 03 D9 1B DC 40 01 6F


Kapcsolódó anyagok:
 vissza 
   
  info@kormanyablak.org
info@ugyfelkapu.info