Python skript i Java app. za čtanje lične karte
Posted: 24 August 2010 11:22 AM
Sr. Member
Avatar
RankRankRankRank
Total Posts:  7586
Joined  2005-04-28

Goran Rakić je na Fejsbuku (i po nekim forumima) ostavio belešku i link ka skriptu koji, navodno, a nema razloga da sumnjamo, radi i na Mac OS X-u. Reč je o Python skriptu koji komunicira sa čtačem kartica i ume da pročta podatke sa čpa u ličnoj karti.

http://www.facebook.com/notes/goran-rakic/objava-citac-elektronske-licne-karte-za-gnulinuks/420568727902

Ja skinuo, probao, ali očgledno ne ume da se snađe sa onim čtačem koji sam dobio za eBanking (OmniCard CardMan). Verovatno nemam drajver, šta li.

Elem, nisam znao gde, pa postavih u ‘Domaće autore’, a možda nekom zatreba, ja već razmišljam da, kada dođem do malo vremena, napravim komponentu za 4D koju ću posle moći da ugrađujem u ostale aplikacije po potrebi.

Post edited by: madamov, at: 2010/08/24 11:26

Post edited by: madamov, at: 2011/01/10 10:27

 Signature 

ACSP 10.10 - ACSP 10.9 - ACA 10.8 Mac Management - ACSP 10.8 -  ACSP 10.7 - ACSA 10.6

Profile
 
Posted: 26 August 2010 12:20 AM   [ # 1 ]
Jr. Member
RankRank
Total Posts:  32
Joined  2005-05-07

Pokušao sam i da napravim skript za promenu PIN-a, ali tu sam već naleteo na problem da ne znam da rastumačm kako se PIN beleži u 45 bajtova koji se upisuju u jednu EF na kartici.

http://blog.goranrakic.com/archives/2010/08/jos_po_neko_zapazanje.html

Pisao sam na <ca@mup.gov.rs> i <support@scsquare.com>, tražio PKCS#15 profil za OpenSC i/ili tehničku specifikaciju instrukcija pa sada čekam odgovore.

Želja mi je da omogućim puno korišćenje kartice, uključujući i elektronsko potpisivanje.

——————————

Da biste probali ovu malu skripticu na Macu treba vam čtač koji ima drajvere. Najbolje je kupiti CCID čtač koji radi bez bilo kakve dodatne instalacije. Ja imam Gemplus/Gemalto PC Twin i pod GNU/Linuksom radi sa libccid i pcsc-lite koji se koriste i na MacOS X, i podrazumevano su uključeni.

Da testirate da li sistem vidi čtač u terminalu pokrenite program pcsctest.

Treba vam i pyscard biblioteka za Python koja se preuzima odavde. Vidim da postoji mpkg, a ako to možda ne radi, za instalaciju iz izvornog koda (tar.gz) dovoljno je raspakovati i ukucati python setup.py install u terminalu sa administratorskim ovlašćenjima.

Sada preuzmite FreeSteel skriptu sa Gitoriousa (desno u koloni ima opcija download master as tar.gz).

Raspakujte, otvorite terminal, pređite sa cd /putanja u taj direktorijum i nakon što u čtač ubacite karticu pokrenite freesteel.py skriptu: ./freesteel.py. Za listu dostupnih opcija pokrenite ./freesteel.py—help.

Sugestije, primedbe, i ispravke koda su dobro došle. Već ima interesovanja od Linuksaša da se deo koda izdvoji u pravu biblioteku, da se doda grafičko okruženje, implementira opcija za izradu izveštaja u PDF formatu. Ja trenutno time ne mogu da se bavim i pokušavam da implementiram nove mogućnosti za rad sa samom pametnom karticom, ali svakako ću ubaciti sve što drugi pošalju.

Post edited by: Goran, at: 2010/08/26 00:25

Profile
 
Posted: 10 January 2011 10:20 AM   [ # 2 ]
Sr. Member
Avatar
RankRankRankRank
Total Posts:  7586
Joined  2005-04-28

Evo i Java aplikacije za ovo, pročtajte Goranovu poruku na Elite Security forumu:

http://www.elitesecurity.org/t419380-0#2781176

a ja ću probati da je ovde prenesem:

Biblioteka JFreesteel je slobodan softver otvorenog koda, omogućava čtanje javnih podataka sa čpa nove lične karte, objavljena pod GNU LGPLv3 licencom koja dozvoljava korišćenje kako u slobodnim tako i u vlasničkim komercijalnim aplikacijama. Koristi javax.smartcardio i sistemsku podršku za komunikaciju sa čtačem (PC/SC, pcsc-lite na GNU/Linuksu i MacOS X) i nema dodatne zavisnosti.

Kod u Git skladištu je podeljen na JFreesteel biblioteku (u direktorijumu /lib) i GUI aplikaciju SerbianEidViewer koja koristi biblioteku (u direktorijumu /viewer).  Aplikacija je objavljena pod GNU Affero GPLv3 licencom.

Svoju kopiju koda pravite naredbom: git clone .(JavaScript must be enabled to view this email address):freesteel/jfreesteel.git. Naredbom mvn install uz instalirane JDT i Maven u novom target/ direktorijumu ćete dobiti jfreesteel jar paket biblioteke, serbianeidviewer aplikaciju, a u direktorijumu serbianeidviewer-lib sve biblioteke koje aplikacija koristi. Pokretanje aplikacije moguće je na dvoklik ili naredbom java -jar target/serbianeidviewer*.jar.

Sastavio sam viki stranicu sa predlozima za zakrpe, ali ako se sa Javom družite više nego ja koji sam početnik u ovom delu foruma, sigurno ćete čtajući kod naleteti na delove koji su mogli da budu bolje napisani.

Zakpre možete poslati na e-adresu .(JavaScript must be enabled to view this email address) ili kao merge request kroz Gitorious.

Hvala kolegama sa foruma, Branku, Željku (pomoć oko ranije Python skripte); Aleksandru i Igoru na zakrpama i sugestijama.

 Signature 

ACSP 10.10 - ACSP 10.9 - ACA 10.8 Mac Management - ACSP 10.8 -  ACSP 10.7 - ACSA 10.6

Profile