Standarder · Mobilt körkort (mDL)

Mobila körkortsQR-koder: ISO/IEC 18013-5

När en bartender, en TSA-tjänsteman eller en buthyrningsagent skannar QR-koden i din telefons körkortsapp, är den QR-koden inte körkortet. Det är en håndskak. De faktiska attributen överförs först efter att deras verifierare begär specifika fält och du godkänner utlämnandet på din telefon. Gjort rätt läcker ett mDL mycket mindre än ett fysiskt kort. Gjort fel (fientlig verifierare, bredbasebd godkännande) läcker det lika mycket eller mer. Så här känner du igen skillnaden.

Inspektera en mDL-QR → Alla standarder →

Vad är standarden

ISO/IEC 18013-5:2021, Personidentifiering, ISO-kompatibelt körkort, Del 5: Mobilt körkortsapplikation (mDL). Den internationella standarden som specificerar hur digitala körkort utfärdas, lagras, överförs till en verifierare och verifieras offline. QR-kodsgränssnittet (den del de flesta ser) är avsnitt 8.2 ”Device retrieval, QR code engagement”. En komplementärstandard, ISO/IEC 18013-7, täcker onlinehämtning (verifieraren frågar utfärdaren direkt med kortinnehavarens samtycke).

Antagandet pågår: ett tiotal US-delstater har produktions- eller pilot-mDL:er i Apple Wallet och Google Wallet; Kaliforniens mDL är allmänt tillgänglig; TSA accepterar mDL:er vid säkerhetskontrollen på de flesta stora amerikanska flygplatser; EU rullar sin variant in i EUDI Wallet under eIDAS 2.0 (förordning som träder i kraft i slutet av 2024, plånboköverenskomst 2026–2027). Standarden är också grunden för ISO/IEC 23220 (allmänt ramverk för mobila legitimationer, som täcker mer än körkort).

Vad som faktiskt finns inne i QR-koden

mDL-QR-koden kodar en DeviceEngagement-CBOR-struktur. CBOR (Concise Binary Object Representation, RFC 8949) är ett kompakt binärt alternativ till JSON. Den avkodade strukturen ser ungefär ut så här:

{
  0: "1.0",                         // version
  1: [1, 2, [eDeviceKey bytes]],    // security: cipher suite 1, EC P-256 key
  2: [                              // device retrieval methods
    [1, 1, {...NFC options...}],
    [2, 1, {...BLE options...}],
    [3, 1, {...Wi-Fi Aware options...}]
  ],
  3: {...optional server retrieval...}
}

Nyckelfält, avkodade:

Version

Alltid ”1.0” för nuvarande distributioner. Framtida revisioner kan höja versionen.

Chiffersmång

För närvarande alltid 1: ECDH-nyckelöverenskommelse på P-256, AES-GCM-sessionskryptering. Chiffrersäll 2 är reserverat för brainpoolP320r1 (EU-användningsfall).

eDeviceKey

En tillfällig EC-publik nyckel genereras per session av plånbok. Används av verifieraren för att uppfyra en krypterad session. Förstörs efter transaktionen. Vår skanner visar längden på detta fält men upprepade aldrig nyckelbytes — de är tillfälliga och enbart meningsfulla för den pågående verifieringssessionen.

Överföringsmetoder

Plånbok berättar för verifieraren vilka kanaler den är beredd att använda för den faktiska attributöverföringen: NFC (tappning), Bluetooth LE eller Wi-Fi Aware (peer-to-peer Wi-Fi utan åtkoppling). De flesta mDL:er erbjuder BLE och NFC; Wi-Fi Aware är plattforms-begränsat.

Serverhent (valfri)

Om det finns stöd har plånbok 18013-7-läget: verifieraren kan begära attribut från utfärdarens online-API istället för direkt från plånbok. QR-koden innehåller utfärdarens URL. Vår skanner extraherar detta och visar vilken myndighet som skulle ta emot frågan.

Hur skiljer sig detta från AAMVA PDF417 på det fysiska kortet?

Det är en annan kategori av identitetshandling. AAMVA PDF417-streckkoden på baksidan av ett amerikanskt plastkort innehåller alla attribut på kortet i klartext – namn, adress, födelsedatum, körkortsnummer, längd, vikt, ögonfärg, begränsningar och organdonatorflagga. Vilken skanner som helst kan läsa alltihop. Kortet är en “allt eller inget”-handling: antingen lämnar du över det och avslöjar allt, eller så gör du det inte.

Ett mDL vänder på det. QR-koden innehåller inga attribut, bara en håndskak. Verifieraren måste begära specifika attribut (given_name, family_name, birth_date, age_over_21, portrait, document_number, driving_privileges, osv.), plånbok visar dig begäran, och bara de attribut du godkänner överförs. Överföringen är dessutom kryptografiskt signerad av den utfärdande myndigheten (din stats körkortsmyndighet), så verifieraren kan bekräfta att attributen är äkta utan att ringa hem — offline-verifiering fungerar.

Det är därför integritetsmissäna föredrar mDL:er trots att standarden är mer komplex: den möjliggör avslöjande anpassat till transaktionen. En dörrvakt behöver inte din adress; en TSA-tjänsteman behöver inte din organdonatorstatus; en butiksanställd behöver inte ditt körkortsnummer.

Selektiv avtäckning: den faktiska pokulstersättningen

mDL-standarden definierar en uppsättning härledda attribut som låter verifieraren ställa en ja/nej-fråga istället för att få ett råvärde. De viktigaste:

En väldesignad verifierarapp för en bar begär bara age_over_21. Plånbok visar ”Bar XYZ vill veta om du är över 21.” Du trycker Godkänn, ett enda signerat booleskt värde (”sant”) skickas tillbaka. Barens app verifierar signaturen mot din stats publicerade mDL-förtroendekvot. Klart. Inget födelsedatum, inget namn, inget körkortsnummer, inget foto. Jämfört med att lämna över det fysiska kortet är detta en enorm integritetsförbättring.

Fientliga verifierare: den nya hotmodellen

Hotmodellen för det fysiska kortet var enkel: tappa bort det, få det kopierat, få det skådat över axeln. Hotmodellen för mDL är annorlunda. Formatet är starkt; kryptografin är solid; risken förflyttes till verifierarens app på den andra sidan av transaktionen.

Vem som helst kan bygga en verifierarapp. Det finns ingen central licensierande myndighet. Så en bar kan köra en färdigbyggd verifierare konfigurerad för att begära fullständigt födelsedatum, fullständigt namn och foto även om den bara behöver age_over_21. En buthyrningsagent kanske begär allt ”för filen.” En butiksanställd kanske begär adress. Inget av detta är tekniskt förbjudet enligt standarden — standarden säger bara att plånbok måste visa kortinnehavaren vad som begärs och kräva uttryckligt godkännande.

Så försvaret ligger på kortinnehavarens sida: läs begäranuppmaningen. Om verifieraren begär mer än transaktionen behöver, avvisa. Vissa plånbok varnar när verifieraren inte finns på en känd förtroendelista; ISO/IEC 18013-5 stödjer verifierarautentisering via certifikat, men förtroendeliste-infrastrukturen mognar fortfarande (per-delstatslösningar i USA; EU-förtroendelistan under eIDAS 2.0).

Värt att veta: verifieraren ser din eDeviceKey, chiffersmången och vilka överföringsmetoder du stödjer — och inget mer. De får inga attribut från QR-koden enbart. Så att skanna en QR-kod från en klistermärke eller någons skärm och gå därifrån ger en angripare ingenting användbart. Attributen överförs bara inne i den krypterade sessionen efter håndskak.

Vad vår skanner visar dig

Släpp in en mDL DeviceEngagement-QR (bild, klistra in eller kamera) i vår skanner. Utslåget visar:

Vi avkodar INGA attribut — QR-koden innehåller inga attribut, av design. Den faktiska licensdatan skulle överföras krypterat via vald överföringsmetod till en verklig verifierare.

Avkodning sker i din webbläsare; bara strukturella metadata når vår server för säkerhetsklassificeringen.

Innan du godkänner en verifieringsbegäran

Relaterat

Inspektera en mDL DeviceEngagement-QR

Släpp in QR-koden (bild, klistra in eller kamera). Utslåget visar version, chiffersmång, överföringsmetoder och eventuell URL för serverhentning. Inga attribut — de överförs bara inne i den krypterade posthåndskakningssessionen till en verklig verifierare.

Öppna skannern →