AAMVA kørekortstregkode
2D-stregkoden på bagsiden af hvert amerikansk kørekort er et PDF417-symbol, der koder korttagerens identitetsfelter i henhold til AAMVA Card Design Standard. Oprindeligt specificeret i 2000, i øjeblikket ved version 10 (2020).
Barcode symbology: PDF417 (ISO/IEC 15438).
Prior versions: v8 (2013), v9 (2016), v10 (2020).
Hvad det er
En AAMVA-stregkode er et PDF417-symbol, hvis afkodede payload begynder med en fast header, derefter en 'underfil' pr. datadomæne. Kerne-underfilen er DL (kørekort).
Header structure:
@
ANSI <IIN><version><jurisdiction version><subfile count>DL<subfile offset><subfile length>Elementkoder
Each data element is a 3-character code followed by its value. The most common:
| Code | Meaning | Format |
|---|---|---|
DAC | First name | Text |
DCS | Last name | Text |
DBB | Date of birth | MMDDYYYY |
DBA | License expiration | MMDDYYYY |
DAQ | License number | Alphanumeric |
DAG | Street address | Text |
DAI | City | Text |
DAJ | State | 2-char |
DAK | ZIP code | 5 or 9 digits |
DCF | Document discriminator | Jurisdiction-specific |
Udsteder-identifikationsnummer (IIN)
Enhver amerikansk delstat har et 6-cifret IIN tildelt af AAMVA. Eksempler:
| State | IIN | State | IIN |
|---|---|---|---|
| California | 636014 | New York | 636001 |
| Texas | 636015 | Florida | 636010 |
| Illinois | 636035 | Pennsylvania | 636025 |
Version differences
| Version | Published | Key changes |
|---|---|---|
| v8 | 2013 | Added the compliance header. Baseline for modern parsers. |
| v9 | 2016 | Clarified DCF format. Added truncation flags. |
| v10 | 2020 | Added document-image elements; relaxed height units. |
Hvad rigtige kørekort har, som en trykt AAMVA-stregkode IKKE har
Dette er vigtigt for antisvindel-workflows: en PDF417 der parser korrekt er ikke det samme som et ægte kørekort. Fysiske kørekort er afhængige af:
- Hologrammer, statssegl, laminatmønstre, optisk variable enheder.
- UV/IR-funktioner, blæk synligt kun under 365nm UV eller IR.
- Mikrotryck, 0,2mm tekst indlejret i kortet.
- Taktile funktioner, hævede overflader på navn og fødselsdato.
- Kryptografisk attestation (Mobile DL), ISO/IEC 18013-5 mDL er det fremvoksende digitale signaturlag.
Aldersverifikationskiosker, der udelukkende er afhængige af PDF417-parsing, forfalskes rutinemæssigt. Produktionsflows skal kombinere stregkodeparse + mindst én fysisk funktionskontrol.
Kanoniske testvektorer
Brug åbenlyst syntetiske data, når du genererer testpayloads. JOHN TEST, JANE SAMPLE, fødselsdato i fremtiden eller før 1900.
| Tilfælde | Input | Forventet header substring |
|---|---|---|
| Californien v10, syntetisk | jurisdiction=CA | ANSI 636014100002DL |
| Texas v10, syntetisk | jurisdiction=TX | ANSI 636015100002DL |
| New York v9, syntetisk | jurisdiction=NY | ANSI 636001090002DL |
Almindelige faldgruber
- Manglende compliance-header. Parsere der læser fra
ANSIog springer@\x1e\r-præfikset over afviser din payload. - Forkert datoformat. AAMVA bruger
MMDDYYYY, ikkeYYYY-MM-DD. - Højdeenheder. v10 accepterer både tommer og centimeter. Ældre versioner accepterer kun tommer.
- Navnafkortningsflag.
DDE/DDF/DDGskal væreT,NellerU. - Jurisdiktionsspecifikke elementkoder. Stater tilføjer
ZA-ZZ-kodede elementer. Ukendte koder skal springes over, ikke afvises. - IIN-mismatch. Et California-kørekort med IIN 636015 (Texas) parser korrekt men mislykkes ved ethvert post-parse validitetstjek.
Scannerkompatibilitet
| Læser | Understøttelse | Bemærkninger |
|---|---|---|
| iOS Camera (iOS 17+) | Körkortsbevidst | Wallet-app genkender AAMVA-payloads. |
| Android Camera | Ikke nativt | Behandler som rå PDF417. |
| Google Lens | Kun rå PDF417 | Viser afkodet tekst uden AAMVA-parsing. |
| Kommerciel ID-verificerings-SDK (IDEMIA, Jumio, Onfido) | Fuld parse | Industristandard for aldersverifikationskiosker. |
| Industriel PDF417-scanner (Zebra, Honeywell) | Fuld parse | De fleste moderne firmware indeholder AAMVA-parsing. |