Program za konverziju 'barcode-scanner-MRZ' ulaznih podataka od OCR barkod skenera.
Barkod-Skener sa OCR funkcijom
Proizvođač 'Zebra' (Zebra Tehnologies)
ima liniju barkode skenera koji implementiraju OCR ('Optical Character Recognition')
podršku. To znači da osim laserskog čitanja 1d i 2d barkodova ima i brzu kameru i
procesorsko analiziranje slike uz prepoznavanje pročitanog teksta.
Time modeli skenera ovog tipa mogu čitati
MRZ
('Machine Readable Zone' - mašinski čitljivu zonu) sa Ličnih karti i Pasoša,
što je definisano opšte prihvaćenim protokolom i pasoši i ID dokumenti
skoro svih zemalja ih se pridržavaju.
Tako da glavnu zaslugu i 90% korisnog posla odrađuje 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 oko 400-500 KM,
a može se dobaviti i iz inostranstva ili iz okolnih zemalja (Srbija, Hrvatska).
Zebra je inače američka firma, a meni kao programeru dodatne aplikacije
je svejedno ko je dobavljač. Nisam primijetio da negdje ima povoljnije od te cijene
uređaja. Mogu pomoći i dati savjet, ali ne moram biti uključen u nabavku samog uređaja.
Takođe, moguće je koristiti i druge modele skenera (Honeywell, Datalogic ili drugi proizvođači).
Program se može prilagoditi za rad sa različitim modelima, međutim Zebra je preporučena opcija
u ovom cjenovnom rangu za barcode, OCR i RFID skenere.
Dakle skener donosi najbitniju informaciju, tekst pročitane 3 linije na pozadini
lične karte (ili 2 linije u slučaju pasoša) ali tekst u takvom formatu je
teško upotrebljiv.
→
→X
Da bi se ovako dobijeni podaci od skenera ubacili u ciljnu aplikaciju tako
da pojedinačne vrijednosti (ime, prezime, JMBG, BR.LK ...) popune tačno
željena polja, morala bi se raditi prilagođenja. Ciljna aplikacija morala
bi sama čita podatke od skenera, da ih parsira i ubacuje u svoja tekst polja.
To nije baš lagan zadatak i često nije lako organizovati potrebnu doradu sa
programerima/autorima ciljne aplikacije.
Program 'IDZona'
Opis rada
IDZona se ne bavi direktno ciljnom aplikacijom, već se predstavlja kao tastatura,
i može se testirati i podesiti i u običnom NOTEPAD programu.
Čita sve ulaze svih tastatura i barkod skenera. Svaki barcode skener se takođe
predstavlja sistemu kao obična tastatura koja naglo u roku od 1 sekunde otkuca
pročitani kod (tih 100 slova u slučaju ove tri MRZ linije iz lične karte).
Čitajući ulazne podatke kad IDZona naiđe i prepozna sekvencu ID dokumenta, kad
prepozna MRZ tekst, parsira ga i razdvoji po želji onako kako odgovara upotrebi.
Npr: IME |tab| Prezime |tab| Datum Rođenja |tab| JMBG |tab|tab|.
Kako god se ponaša korisnik kad ručno kuća i prepisuje ID podatke ciljnoj aplikaciji,
'IDZona' kao virtuelna tastatura šalje takav tekst na isti način.
Sekvence koje šalje skener a ne tiču se MRZ id podataka uredno se prosleđuju dalje,
tako da čitanje 1d, 2d, QRCode ostaje funkcionalno i nepromijenjeno. Jedini izuzetak
je kad se prepozna 1-dimenzionalni barcode od JMBG cifara (onakav kakav je trenutno
na BiH ličnim kartama), taj barcode IDZona takođe parsira, prilagođava i provjerava korekcioni kod.
Sigurnosni aspekti
Program ne loguje ni ne zapisuje ništa (sem u posebnim slučajevima kada se
istražuje greška, specijalnim čitanjem 2d barcode-a se uključuje/isključuje
zapisivanje samo podataka o zadnjem čitanju radi dijagnostike, u kratkom %TEMP%
tekstualnom fajlu)
U standardnom radu (osim u izuzecima navedenim u donjoj 'dopuni') se ne spaja na internet,
nema komunikacije sa vanjskim sajtovima, jer s obzirom da se može klasifikovati kao key-logger
program, dodatna paralelna komunikacija sa internetom bi mogla biti neželjena kombinacija
aktivnosti za antivirus sisteme koji nadgledaju procese.
Ovakvim pristupom takođe se otklanja bilo kakva sumnja vezana za obavezu zaštite
privatnosti informacija identifikacionih dokumenata.
Dopuna: U novoj verziji programa od marta 2025 i novije, radi uprošćavanja postupka
licenciranja i održavanja izmjena, program prilikom startanja i jednom dnevno
se ipak zakači na internet time što 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 događajima niti statistički podaci, već samo informacije o verziji.
Tehnički 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, odgovarajuće checksum zaštite od pogrešno pročitanih slova kao i
što sam JMBG ima checksum u posljednjoj cifri.
Ciljna implementacija
Program je instaliran u više od 70 mjenjačnica u BiH, gdje dosad fino funkcioniše.
Koristan bi mogao biti tamo gdje god je ovaj vid ubrzanja bitan (brzi unos za
ime, prezime, datum rođenja, jmbg, broj lične karte/pasoša, 3-slovni kod države 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 podršku za eventualne probleme. Ali može se dogovoriti i drugačije.
Održavanje programa s obzirom da je prilično prost i jasan (auto-startan iz windows-start foldera)
nije potrebno. Osim ako se kasnije ne pojave neki specifični dodatni korisnički zahtjevi.