Odczytywanie kodu kreskowego PDF417
Co faktycznie jest zakodowane na odwrocie północnoamerykańskiego prawa jazdy, jaki standard za tym stoi i jak jest to sprawdzane względem awersu.
Ten wpis jest roboczym szkicem: fakty pochodzą z naszych własnych badań, a sformułowania mogą jeszcze ulec zmianie podczas redakcji. Nie stanowi porady prawnej, finansowej ani dotyczącej zgodności.
Jeśli odwrócą Państwo niemal każde północnoamerykańskie prawo jazdy lub prowincjonalny dowód tożsamości, znajdą Państwo na odwrocie gęsty, prostokątny kod kreskowy — rzędy czarnych i białych kresek ściśle upakowanych obok siebie. To kod kreskowy PDF417 i jest jednym z najbardziej użytecznych elementów dokumentu tożsamości, ponieważ w formie czytelnej maszynowo powtarza większość informacji wydrukowanych na awersie. Ten wpis wyjaśnia, co faktycznie się w nim znajduje, jaki standard go definiuje i jak jest wykorzystywany razem ze stroną drukowaną do weryfikacji dokumentu.
Czym naprawdę jest PDF417
PDF417 to format piętrowego liniowego kodu kreskowego — „PDF” oznacza Portable Data File, a „417” odnosi się do struktury każdego zakodowanego symbolu (4 kreski i odstępy, szerokość 17 jednostek). Może pomieścić znacznie więcej danych niż prosty kod 1D, taki jak na produktach w sklepie spożywczym: imiona i nazwiska, adresy, daty, numery dokumentów, cechy fizyczne — wszystko w jednym skanie. To format stosowany w północnoamerykańskich prawach jazdy i dowodach tożsamości, ponieważ mieści sporą ilość ustrukturyzowanego tekstu na małej, drukowalnej powierzchni, którą standardowy skaner lub aparat może odczytać bez specjalnego sprzętu.
Standard AAMVA
Sposób organizacji danych wewnątrz kodu — jakie pola się pojawiają, w jakiej kolejności i z użyciem jakich kodów — określa AAMVA, czyli American Association of Motor Vehicle Administrators. Standard AAMVA pozwala skanerowi kodów odczytać prawo jazdy z Nowej Szkocji i z Kalifornii w ten sam sposób, mimo że obie karty wyglądają inaczej i są drukowane przez różne organy prowincjonalne i stanowe. Każdy wystawca wdraża strukturę AAMVA ze szczegółami właściwymi dla swojej jurysdykcji, dlatego niezawodny odczyt kodu wymaga najpierw rozpoznania wystawcy, a następnie zastosowania jego dokładnej wersji standardu.
Częścią prawidłowego dekodowania kodu kreskowego jest ustalenie, kto go wydał. Każdy kod zgodny ze standardem AAMVA zawiera IIN — Issuer Identification Number (numer identyfikacyjny wydawcy) — krótki kod numeryczny wskazujący konkretny organ wydający, który wytworzył dany dokument. Odczyt dokumentów w ShieldID rozpoznaje wszystkie 13 prowincji i terytoriów Kanady oraz zdecydowaną większość stanów, terytoriów USA i DC na podstawie identyfikacji wydawcy zawartej w kodzie kreskowym, a także, w początkowym zakresie, niektóre stany Meksyku, dzięki czemu sam kod kreskowy informuje system, jakiego układu pól danej jurysdykcji oczekiwać, jeszcze zanim odczyta dane.
Co faktycznie jest zakodowane
Typowy kod AAMVA na prawie jazdy koduje ustrukturyzowane pola, w tym pełne imię i nazwisko posiadacza zgodne z dokumentem, datę urodzenia, adres, numer dokumentu/prawa jazdy, daty wydania i wygaśnięcia, płeć, wzrost, kolor oczu oraz kategorię prawa jazdy lub ograniczenia, zależnie od wystawcy. Nic z tego nie jest zdjęciem — kod to dane tekstowe, a nie obraz — i właśnie dlatego jest użyteczny jako drugie, niezależne źródło tych samych faktów, które są wydrukowane na awersie karty.
Dlaczego porównanie kodu kreskowego z awersem ma znaczenie
Wydrukowany awers dokumentu, kod kreskowy PDF417 na rewersie oraz — w przypadku paszportów — MRZ (strefa odczytu maszynowego) u dołu strony ze zdjęciem to trzy odrębne reprezentacje w dużej mierze tych samych informacji, wytworzone w różnych procesach drukowania i kodowania. ShieldID odczytuje wszystkie z nich, a następnie oblicza sumy kontrolne i porównuje wyniki pole po polu, zamiast polegać na pojedynczym źródle. Jeżeli imię i nazwisko w kodzie kreskowym nie zgadza się z wydrukowanym na awersie albo suma kontrolna zawarta w MRZ nie przechodzi walidacji, jest to oznaczane jako odrębny sygnał — rozbieżność dotycząca konkretnego pola, a nie po cichu wtopiona w jeden ogólny wynik pozytywny lub negatywny.
Dlatego też nietypowy lub niestandardowy dokument nie jest po prostu odrzucany. Jeżeli kod kreskowy jest nieczytelny, ale wydrukowany awers i MRZ paszportu (tam, gdzie ma to zastosowanie) nadal są spójne, system raportuje, co udało się zweryfikować, a co nie, pole po polu, zamiast odrzucać cały dokument dlatego, że jedno z trzech źródeł zawiodło. Wynajmujący, kredytodawca czy osoba odpowiedzialna za zgodność widzi dokładnie, które dane mają za sobą wiarygodne potwierdzenie, a które nie — co jest bardziej użyteczną odpowiedzią niż pojedyncze, nieprzejrzyste „tak” lub „nie”.
Dlaczego ma to znaczenie dla przeciwdziałania oszustwom
Sfałszowanie kodu kreskowego, który poprawnie odpowiada fałszywemu projektowi awersu dokumentu, w dokładnym układzie AAMVA właściwym dla deklarowanego wydawcy, z sumami kontrolnymi przechodzącymi walidację, jest zadaniem znacznie trudniejszym niż zmiana samego wydrukowanego imienia i nazwiska lub zdjęcia. Wzajemne porównanie trzech niezależnych źródeł — druku, kodu kreskowego oraz, tam gdzie to możliwe, MRZ — jest jednym z skuteczniejszych, a zarazem najmniej efektownych narzędzi weryfikacji dokumentów: nie opiera się na dostrzeżeniu wizualnie zmienionego obrazu, lecz na wychwyceniu miejsc, w których poszczególne warstwy fałszerstwa są ze sobą sprzeczne.
Rozpocznij
Zobaczą Państwo, jak to działa, na własnym dokumencie tożsamości.
Proszę utworzyć bezpłatną sesję sandbox i przeprowadzić weryfikację na własnym telefonie.