RFID-s kártyarendszer

Fórumok

Sziasztok!

Feladatul kaptam, hogy ki kell építeni egy dolgozói munkaidő nyilvántartási rendszert, amit ha lehet akkor már úgy csinálnám meg, hogy egy hosszútávú elképzelés első lépése legyen. A mostani kártyás nyilvántartási rendszert a következő években ezekkel bővíteném:
- beléptető rendszer ami automatikusan naplózza a kártya tulajdonosát a megfelelő helyre (diák => e-napló, dolgozó => munkaidő nyilvántartás)
- étkeztetés
- könyvtári kölcsönzési rendszer
- fénymásoló-hozzáférés
- számítógépes autentikáció
- limitált hozzáférhetőségű helységek beléptetése (irattár, stúdió, szerverterem)

Mivel sokféle rendszer és szabvány van, ezért a kártya kiválasztásánál elakadtam. Egyelőre megfogalmazott cél az lenne, hogy egy kártya ne legyen nagyon drága (500 és 1000 ft közti összeg).

Ha már ott tartana a tudomány, akkor a rfid-s személyit választanám és akkor csak olvasókat kellene telepíteni, de sajnos nem.

Tanácsot/iránymutatást kérnék a témában jártas kollégáktól.

Hozzászólások

Diákigazolványban is van ilyen fajta chip (az újban, mert a régi meg smart card)

Helló.

Ilyen rendszert fejlesztettünk mi is ;). A chip típusa: RFID - ISO 14443 Type A - NXP Mifare Plus
Most még ki tudod olvasni belőle a PAN-t, de a jövőben, ehhez tanúsítvány fog kelleni, tehát olyan olvasót vegyél, ill úgy írd meg az sw-t, hogy ezt bele tudd később integrálni. Amúgy a postán tudsz olvasót venni hozzá, ha játszadozni akarsz ;), aztán úgyis keresel/gyártatsz vmi normálisat (gyerekbiztos :P).
Egyébként ha visszafelé kompatibilis akarsz maradni, beteszel egy smartcard és/vagy vonalkód olvasót is így többféle kártyát is tudsz kezelni...

<= Powered By Ubuntu & Gentoo Linux =>

'Software is like sex: It's better when it's free!'
By Linus Torvalds

Egy kis hivatalos leírás:
http://www.diakigazolvany.hu/igenyles/kozneveles/biztonsagi_elemek/diak…

Mifare NXP chip van benne, 7 byte-os UID azonosítóval.

A kártyáknak létezik utángyártott változata 4 byte-os UID azonosítóval, itt ugyanazokkal az azonosítókkal gyártják újra és újra a chipeket. Elméletileg vehetsz két egyformát.

A gyári azonosítón túl tudsz rajta adatot is tárolni. Az eredeti talán 4K-s, az utángyártott meg 1K-s kapacitású.
Igazolvány méretű utángyártott fehér plasztiklapot legutóbb nettó 171 Ft-ért vettünk kis tételben. Csak egyszerű azonosításra használjuk fénymásolóhoz, adatot nem írunk rá.

Az S50/ISO14443A kompatibilis kártyákat ajánlom (pl.: mifare). Több előnye van:
- A kártyák olcsók (a kártya kb 150 Ft) és mivel az NFC alapja is ez, van belőle kulcstartó, matrica, etc.
- Támogat titkosítást
- NFC miatt telefonnal is olvasható :)
- Az olvasók is nagyon olcsók és van belőlük embedded verzió, így akár bármilyen rendszerhez nagyon egyszerűen illeszthető.

// Happy debugging, suckers
#define true (rand() > 10)

ha a Mifare Classichoz képest kérdezed, akkor biztonság szempontjából kb. azt, hogy nyitva van-e az ajtód vagy sem :) tud 128-bit AES-t, míg a Classic már régóta a nem megbízható a Crypto-1-ével. ha a Plus S-hez képest, akkor nem igazán tudom, mivel ott nagyon apróak lehetnek a különbségek :)

edit: ennyit találtam hirtelen: "NXP MIFARE Plus is based on open global standards both for air interface and cryptographic methods. It is available in two versions: MIFARE Plus S, the Slim version, for straightforward migration of MIFARE Classic systems, and MIFARE Plus X, the eXpert version, which offers more flexibility to optimize the command flow for speed, privacy and confidentiality. MIFARE Plus X offers a rich feature set, including proximity checks against relay attacks"

igazából, ahogy nézem a Mifare Plusok közül mind tudja az "AES"-t, szóval szerintem itt már nincs nagy különbség. itt van egy táblázat alul, ami megmutatja a Plusok közötti minimális eltérést: http://www.nxp.com/documents/leaflet/75016722.pdf
ahogy nézem, csak eeprom méret, kártya parancslista és proxymity check a különbség.

A MIFARE Classic-okat lehet másolni. A Plus-t ha rendesen ellenőrzöd akkor nem.

Ha egy sima sorszám stimmel-e ellenőrzés elég, akkor filléres NFC-n ellenőrzöd a sorszámot és jó vagy, még mifare sem kell. De a sorszámot kb annyi lemásolni mint egy kulcsot, ha nem gyorsabb.

Ha valaki komolyan gondolja a betörést, akkor van rfid szimulátor, amivel az azonosító részt is lehet írni (amit egyébként nem lehetne).

Ez ellen egy dolog véd: ha nem csak simán az azonosítót olvasod ki, hanem digitálisan aláírt egyszeri kódot tárolsz el benne, és biztosítod hogy a beléptető rendszer minden kódot legfeljebb egyszer engedjen meg fölhasználni. Ilyenkor ha valaki klónozza az rfid-t, akkor a legelső használatkor vagy az eredeti vagy a klón érvénytelenné válik. Nem sok ilyen beléptető rendszer van.

Az aláírás/kódolás saját kód kell hogy legyen (a mifare-nek is van beépített, de azt már réges régen feltörték).

Normál biztonsági szinthez bőven elég a mifare classic. Ha ennél nagyobb biztonságot akarsz, akkor a következő lépésben én ezt kombinálnám valamilyen titkos jelszóval vagy pin kóddal. És ha ennél is nagyobbat akarsz, akkor lehet gondolkodni olyanokban hogy rfid + rfid-n tárolt HOTP + titkos jelszó + challenge response jelszó. De szerintem ilyen szintet az NSA se használ.

Egyébként a sima smartcard ilyen szempontból biztonságosabb mint az rfid, mert abban hw digitális aláíró van, és azt házilag nem lehet másolni. (Titkosszolgálati módszerekkel azt is lehet.)

Már az rfid+titkos jelszó két faktoros is annyira nehezen törhető, hogy a hekker akkor már inkább nem a technika hanem az ember felől közelíti meg a kérdést. (Nem ellopja, hanem elfogja/kikérdezi/megzsarolja stb.)

A "jól megcsinálás" alatt kifejezetten arra gondoltam hogy nem a kártya azonosítója alapján ellenőriz, azzal pedig szeretnék vitatkozni hogy normál biztonsági szinthez a classic elég lenne: csak a nagykörúton 2 olyan helyet tudok ahova bemész és másolják is az ID-t. Ennél a MIFARE gyári (régen feltört) titkosítása jóval biztonságosabb, mert ahhoz legalább alapos utánajárás kell, nem lehet készen másolót venni, és a másoláshoz is több időre van szükség. (Egy ID-t melletted elsétálva le lehet koppintani)

Amit írsz az lényegében egy one-time-pad-es megoldás, de ennek van egy nagy problémája: csak akkor működik ha minden olvasó a te kezelésedben van és össze is vannak kötve folyamatosan egy adatbázissal. Ez azért elég szigorú követelmény - egy épületes megoldásoknál jó lehet, de nagyon rosszul skálázódik.

A kártyán az infókat halmozni felesleges, ha komoly biztonságra van szükség akkor NFC-képes smartcard-ban gondolkodj. (Nem tudom titkosszolgálati módszerek alatt mit értesz, de nagyon meglepődnék ha pl. egy RSA-s smartcardot az ellopása nélkül képesek lemásolni.) RSA képeset NFC-sből még nem találtam a piacon, de AES-képes van. Ha te kezeled az összes olvasót és feltételezhető hogy azokat senki nem szedheti darabokra, akkor az AES titkosítással kommunikáló kártya is bőven megteszi.

Viszont a kérdezőnek reagálva: Ha játékhoz használod egy asztalnál, és nem kaszinózol, akkor valószínűleg egy MIFARE classic, vagy még olcsóbb kínai másolat és a sorszámok leolvasása, ellenőrzése bőven elég lesz.

> Amit írsz az lényegében egy one-time-pad-es megoldás, de ennek van egy nagy problémája: csak akkor működik ha minden olvasó a te kezelésedben van és össze is vannak kötve folyamatosan egy adatbázissal. Ez azért elég szigorú követelmény - egy épületes megoldásoknál jó lehet, de nagyon rosszul skálázódik.

Ez így igaz. Egyetlen csocsó asztal esetében valószínűleg ez a helyzet. Ha egy egész játékteremről van szó, az már más, de még akkor is egy épületen belül vagyunk.

> Nem tudom titkosszolgálati módszerek alatt mit értesz, de nagyon meglepődnék ha pl. egy RSA-s smartcardot az ellopása nélkül képesek lemásolni.

Hát igen, például. Utána meg visszalopják és észre se veszed.

Rengeteg megoldáson gondolkoztam, hogy lehetne a gólokat közvetlen játékoshoz rendelni, de nem találtam jó/olcsó megoldást rá (bár egy ötletet nem próbáltam ki megfelelő optika hiányában, de boncasztalon az infrared laser + line ccd -vel elég közel jutottam a megfejtéshez, ez kellően olcsó és jó is lett volna erre), de ez a része kimaradt így.
Az oldalak értelemszerűen a csapatokat azonosították, az hogy pedig elöl vagy hátul volt a játékos, csak a statisztikai helyezést befolyásolta (kapott gólok / védés erőssége, lőtt gólok / támadási erőssége) és ez a csapatot megfelelő arányban pontozta (ezt meg szép csilli-villi webfelületen lehet követni :D).
Sajnos voltam olyan hülye hogy a beépített cuccról nem készítettem képeket, de asztalon kiterítve így nézett ki;)

// Happy debugging, suckers
#define true (rand() > 10)

"Ha már ott tartana a tudomány, akkor a rfid-s személyit választanám és akkor csak olvasókat kellene telepíteni, de sajnos nem."

Attól még tervezhetsz előre, de én a személyi igazolvány meg a kártya mellett a mobiltelefon felé is tapogatóznék, most már szinte az összes kapható típus NFC-s, pár éven belül kihalnak a régebbiek... mobiltelefont az ember nem ad csak úgy oda, mint egy kártyát (akár személyit), kevesebb a visszaélés.

A népesség kb. 1 százaléka különböző mértékben skizofrén, ennek a fele paranoid skizofrén... az csak Magyarországon kb. 50 ezer ember... így olvasd, hallgasd vagy nézd ezeket az elméleteket, egy másik világban élnek, amiben minden apróságban összefüggést keresnek és találnak, nem lehet arról meggyőzni őket, hogy nincs összefüggés, illetve egy egészséges óvodás által is megértett összefüggést képtelenek beleilleszteni a világukba, ezért figyelmen kívül hagyják. Jah: és nincsenek tudatában annak, hogy betegek és torz valóságot élnek meg, enyhébb esetben felfogják, hogy gyógyszerekkel normálisan látja a világot, összetettebb esetben a gyógyszer mögött is összeesküvést látnak.