Program za konverziju 'barcode-scanner-MRZ' ulaznih podataka od OCR barkod skenera.
Barkod-Skener sa OCR funkcijom
Proizvodjac 'Zebra' (Zebra Tehnologies)
ima liniju barkode skenera koji implementiraju OCR ('Optical Character Recognition')
podrsku. To znaci da osim laserskog citanja 1d i 2d barkodova ima i brzu kameru i
procesorsko analiziranje slike uz prepoznovanje procitanog teksta.
Time modeli skenera ovog tipa mogu citati
MRZ
('Machine Readable Zone' - masinski citljivu zonu) sa Licnih karti i Pasosa,
sto je definisano opste prihvacenim protokolom i pasosi i ID dokumenti
skoro svih zemalja ih se pridrzavaju.
Tako da glavna zasluga i 90% korisnog posla odradjuje sam skener.
Zebra barcode scaner model: DS-4608,
kao i model: DS-9308 su dva od modela
ovog Zebra-OCR tipa koji su testirani i rade dobro sa programom 'IDZona'.
Skeneri se mogu dobaviti direktno u Sarajevu. Cijena je uz popust bila negdje oko 400-500KM,
a moze se valjda dobaviti i iz inostranstva ili iz okolnih srbija/hrvatska
zemalja. Zebra je inace Americka firma, a meni kao programeru dodatne aplikacije
je svejedno ko je dobavljac. Nisam primjetio da negdje ima povoljnije od te cijene
uredjaja. Mogu pomoci i dati savjet, ali ne moram biti ukljucen u nabavku samog uredjaja.
Takodje ako neko ima ideju koriscenja nekog drugog i jeftinijeg modela (honeywell, datalogic,
ili nekog treceg ako postoji), teorijski bih mogao prilagoditi aplikaciju ali ako je razlika
u cijeni neznatna - Zebra je ipak valjda najbolja na poljima barcode, ocr i rfid skenera.
Dakle skener donosi najbitniju informaciju, tekst procitane 3 linije na pozadini
licne karte (ili 2 linije u slucaju pasosa) ali tekst u takvom formatu je
tesko upotrebljiv.
→
→X
Da bi se ovako dobijeni podaci od skenera ubacili u ciljnu aplikaciju tako
da pojedinacne vrijednosti (ime, prezime, JMBG, BR.LK ...) popune tacno
zeljena polja, morala bi se raditi prilagodjenja. Ciljna aplikacija morala
bi sama da cita podatke od skenera, da ih parsira i ubacuje u svoja tekst polja.
To nije bas lagan zadatak i cesto nije lako organizovati potrebnu doradu sa
programerima/autorima ciljne aplikacije.
Program 'IDZona'
Opis rada
IDZona se ne bavi direktno ciljnom aplikacijom, vec se predstavlja kao tastatura,
i moze se testirati i podesiti i u obicnom NOTEPAD programu.
Cita sve ulaze svih tastatura i barkod skenera. Svaki barcode skener se takodje
predstavlja sistemu kao obicna tastatura koja naglo u roku od 1 sekunde otkuca
procitani kod (tih 100 slova u slucaju ove tri MRZ linije iz licne karte).
Citajuci ulazne podatke kad IDZona naidje i prepozna sekvencu ID dokumenta, kad
prepozna MRZ text, parsira ga i razdvoji po zelji onako kako odgovara upotrebi.
Npr: IME |tab| Prezime |tab| Datum Rodjenja |tab| JMBG |tab|tab|.
Kako god se ponasa korisnik kad rucno kuca i prepisuje ID podatke ciljnoj aplikaciji,
'IDZona' kao virtuelna tastatura salje takav tekst na isti nacin.
Sekvence koje salje skener a ne ticu se MRZ id podataka uredno se prosljedjuju dalje,
tako da citanje 1d, 2d, QRCode ostaje funkcionalno i nepromjenjeno. Jedini izuzetak
je kad se prepozna 1-dimenzionalni barcode od JMBG cifara (onakav kakav je trenutno
na BiH licnim kartama), taj barcode IDZona takodje parsira, prilagodjava i provjerava korekcioni kod.
Sigurnosni aspekti
Program ne loguje ni ne zapisuje nista (sem u posebnim slucajevima kada se
istrazuje greska, specijalnim citanjem 2d barcode-a se ukljucuje/iskljucuje
zapisivanje samo podataka o zadnjem citanju radi dijagnostike, u kratkom %TEMP%
tekstualnom fajlu)
U standardnom radu (osim u izuzecima navedenim u donjoj 'dopuni') se ne spaja na internet,
nema komunikaciju sa vanjskim sajtovima, jer sa obzirom da se moze klasifikovati kao key-logger
program, dodatna paralelna komunikacija sa internetom bi mogla biti nezeljena kombinacija
aktivnosti za antivirus sisteme koji nadgledaju procese.
Ovakvim pristupom takodje se otklanja bilo kakva sumnja vezana za obavezu zastite
privatnosti informacija identifikacionih dokumenata.
Dopuna: U novoj verziji programa od marta2025 i novije, radi uproscavanja postupka
licenciranja i odrzavanja izmjena, program prilikom startanja i jednom dnevno
se ipak zakaci na internet time sto provjeri kratkim pingom status licence i
potrebu za update-om verzije prema linku idzona.ba/idzona. U ovom postupku ne razmjenjuju
se nikakve informacije o dogadjajima niti statisticki podaci, vec samo informacije o verziji.
Tehnicki detalji
Radi na 64-bitnim i 32-bitnim windows operativnim sistemima
(na dvije lokacije je bio stariji 32bit sistem pa provjereno funkcionise dobro i tamo)
Detaljno prati i implementira MRZ
specifikaciju, odgovarajuce checksum zastite od pogresno procitanih slova kao i
sto sam JMBG ima checksum u posljednjoj cifri.
Ciljna implementacija
Program je instaliran u vise od 70 mjenjacnica u BiH, gdje dosad fino funkcionise.
Koristan bi mogao biti tamo gdje god je ovaj vid ubrzanja bitan (brzi unos za
ime, prezime, datum rodjenja, jmbg, broj licne karte/pasosa, 3slovni kod drzave izdavanja),
To mogu biti: mjenjacnice, poste, banke, mjesta gdje se vrsi uplata s provjerom identiteta, hoteli, itd.
Instalacija je lagana i idealno bi bilo da je radi bilo ko iz IT tima ciljne firme,
svakako uz moju podrsku za eventualne probleme. Ali moze se dogovoriti i drugacije.
Odrzavanje programa s obzirom da je prilicno prost i jasan (auto-startan iz windows-start foldera)
nije potrebno. Osim ako se kasnije ne pojave neki specificni dodatni korisnicki zahtjevi.