Predstavljam vam slobodan čitač elektronske karte, od milja nazvan FreeSteel. Trenutno, FreeSteel je jednostavna Python skripta koji se oslanja na pyscard i PC/SC i radi na svim poznatim platformama (Linux, Windows, MacOS X). FreeSteel je potpuno sirova beta, testiran samo sa mojom ličnom kartom. Već sam pisao da nemam uvid u specifikaciju pametne kartice, tako da ne znam da li sam ispravno rastumačio granice polja. Pozivam da probate i obavezno javite da li ispravno čita podatke i sa vaše lične karte.
Kako to izgleda? Skript se poziva iz terminala, i ispisuje informacije inače vidljive kroz besplatnu aplikaciju Čitač Elektronske Lične Karte za Windows. Sledi demo programa, a ja ću iz opreza podatke za koje nisam siguran koliko su osetljivi da zamenim zvezdicama. Sa argumentom -p program čuva sliku sa lične karte u datoteku <JMBG>.jpg, moguće je i navesti posebno ime sa -p moja_slika.jpg.
$ ./freesteel.py -p
Using reader : Gemplus GemPC Twin 00 00
ATR : 3B B9 18 00 81 31 FE 9E 80 73 FF 61 40 83 00 00 00 DF
Header field : 33*60*3*6*62*26**B*F*79*77*42*3*
Printed number : *F*79*77*42*3*
eID number : 00***5*8*
Issued : *4.0*.2009
Valid : *4.0*.2014
Issuer : PU ZA GRAD BEOGRAD SRB
JMBG : 2412985******
Family name : RAKIĆ
First name : GORAN
Middle name : ******
Gender : M
Place od birth : BEOGRAD, SAVSKI VENAC, REPUBLIKA SRBIJA, SRB
Date of birth : 24.12.1985
Street address : ************, ******
City : *******, BEOGRAD, SRB
FreeSteel možete preuzeti iz Gitorious skladišta naredbom:
git clone git://gitorious.org/freesteel/freesteel.git
Gitorious nudi i pregled skladišta kroz Veb, reč je o jednoj Python skripti pa je možete i ručno iskopirati.
Potrebno je instalirati pcscd i python-pyscard paket, kao i PC/SC drajver za čitač pametnih kartica. Za većinu USB čitača koristi libccid u istoimenom paketu.
Pre nego što pokrenete FreeSteel, možete da proverite da li je pcsc-lite prepoznao čitač naredbom pcsc-scan:
$ pcsc_scan -n
PC/SC device scanner
V 1.4.16 (c) 2001-2009, Ludovic Rousseau
Compiled with PC/SC lite version: 1.5.3
Scanning present readers.
0: Gemplus GemPC Twin 00 00
Mon Aug 23 04:27:04 2010
Reader 0: Gemplus GemPC Twin 00 00
Card state: Card inserted, Shared Mode,
ATR: 3B B9 18 00 81 31 FE 9E 80 73 FF 61 40 83 00 00 00 DF
FreeSteel ima galamdžijski režim ako mu se stavi zastavica -v kada prikazuje primljene i poslate bajtove kao heksadecimalne vrednosti. Ako program kod vas ne čita ispravno podatke, a niste voljni da sami jurite grešku, postoji i dump zastavica. Pokrenite program kao ./freesteel.py -d dump i on će u direktorijum dump istovariti binarne blobove pročitane sa lične karte. Ako mi ih dostavite privatnom poštom rado ću popraviti program, a obećavam da podatke neću da prikupljam, prodajem, ili na drugi način zloupotrebim.
Na kraju, kako i piše u zaglavlju programa, FreeSteel se isporučuje bez bilo kakve garancije, čak i one implicitne. Iako program samo čita datoteke, pa ne bi trebalo da bude problema, ne mogu da prihvatim odgovornost ako vam zapadne da morate ponovo da čekate u redu sa zahtevom za reinicijalizaicju ili za izradu nove lične karte.
Više o otkrivenim detaljima o sadržaju pametne kartice pročitajte na blogu: http://blog.goranrakic.com/arc..._licne_karte_za_gnulinuks.html
Željko Stevanović je uočio grešku zbog koje nije radilo čuvanje slike, sada i ta opcija radi u programu. Pokretanje ./freesteel.py -p čuva sliku kao JMBG.jpg, ili se može navesti ime datoteke ./freesteel.py -p moja_slika.jpg
[Ovu poruku je menjao Goran Rakić dana 23.08.2010. u 19:25 GMT+1]
prezentacije, legalno bez troškova licenciranja