Versio
Aina "1.0" nykyisissä käyttöönotoissa. Tulevat revisiot voivat muuttaa tätä.
Standardit · Mobiili ajokortti (mDL)
Kun baarimikko, TSA-virkailija tai autonvuokrauksen toimihenkilö skannaa QR-koodin puhelimesi ajokorttisovelluksesta, tuo QR-koodi ei ole ajokortti. Se on kättely. Varsinaiset attribuutit siirtyvät vasta sen jälkeen, kun heidän vahvistajansa pyytää tiettyjä kenttiä ja sinä hyväksyt julkistamisen puhelimessasi. Oikein tehtynä mDL paljastaa paljon vähemmän kuin fyysinen kortti. Väärin tehtynä (vihamielinen vahvistaja, kaikenkattava hyväksyntä) se paljastaa saman verran tai enemmän. Näin voit erottaa nämä toisistaan.
ISO/IEC 18013-5:2021, Henkilöllisyys, ISO-yhteensopiva ajokortti, Osa 5: Mobiili ajokortti (mDL) -sovellus. Kansainvälinen standardi, joka määrittelee, miten digitaaliset ajokortit myönnetään, tallennetaan, siirretään vahvistajalle ja vahvistetaan offline-tilassa. QR-koodipinta (osa, jonka useimmat ihmiset näkevät) on kohta 8.2 "Laitehaku, QR-koodiliitosmoduuli". Kumppanistandardi ISO/IEC 18013-7 kattaa verkkohaun (vahvistaja kysyy myöntäjältä suoraan haltijan suostumuksella).
Käyttöönotto on pitkällä: tusina Yhdysvaltain osavaltioita on tuotanto- tai pilotti-mDL:iä Apple Walletissa ja Google Walletissa; Kalifornian mDL on yleisessä saatavuudessa; TSA hyväksyy mDL:iä turvatarkastuksissa useimmilla suurimmilla Yhdysvaltain lentokentillä; EU vie varianttinsa EUDI Walletiin eIDAS 2.0:n alla (asetus astui voimaan 2024, lompakot erääntyvät 2026–2027). Standardi on myös ISO/IEC 23220:n perusta (yleinen mobiilitunnisteviitekehys, joka kattaa muutakin kuin ajokortit).
mDL-QR-koodi koodaa DeviceEngagement-CBOR-rakenteen. CBOR (Concise Binary Object Representation, RFC 8949) on kompakti binäärivaihtoehto JSON:lle. Purettu rakenne näyttää suunnilleen tältä:
{
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...}
}Avainkentät purettuna:
Aina "1.0" nykyisissä käyttöönotoissa. Tulevat revisiot voivat muuttaa tätä.
Toistaiseksi aina 1: ECDH-avainsopimus P-256:lla, AES-GCM-istuntosalaus. Cipher suite 2 on varattu brainpoolP320r1:lle (EU-käyttötapaukset).
Lompakko luo istuntokohtaisesti väliaikaisen EC-julkisen avaimen. Vahvistaja käyttää sitä salatun istunnon muodostamiseen. Poistetaan transaktion jälkeen. Skannerimme näyttää sinulle tämän kentän pituuden, mutta ei koskaan toista avaintavuja – ne ovat väliaikaisia ja merkityksellisiä vain meneillään olevan vahvistajaistunnon kannalta.
Lompakko kertoo vahvistajalle, mitkä kanavat se on valmis käyttämään varsinaiseen attribuutinsiirtoon: NFC (napauta), Bluetooth LE tai Wi-Fi Aware (vertaisverkko Wi-Fi ilman tukiasemaa). Useimmat mDL:t tarjoavat BLE:n ja NFC:n; Wi-Fi Aware on alustarajoitettu.
Jos saatavilla, lompakko tukee 18013-7-tilaa: vahvistaja voi pyytää attribuutteja myöntäjän verkko-API:sta suoraan lompakosta hakemisen sijaan. QR-koodi sisältää myöntäjän URL:n. Skannerimme poimii tämän ja näyttää, mikä taho vastaanottaisi haun.
Kyseessä on eri tunnisteluokka. AAMVA PDF417 -viivakoodi yhdysvaltalaisen fyysisen ajokortin takapuolella sisältää kaikki kortin attribuutit selkokielisenä – nimi, osoite, syntymäpäivä, korttinumero, pituus, paino, silmienväri, rajoitukset, elinluovuttajalippu. Mikä tahansa skanneri voi lukea kaiken. Kortti on "kaikki tai ei mitään" -tunniste: joko luovutat sen ja paljastat kaiken tai et.
mDL kääntää tämän. QR-koodi ei sisällä attribuutteja – vain kättelyn. Vahvistajan on pyydettävä tiettyjä attribuutteja (given_name, family_name, birth_date, age_over_21, portrait, document_number, driving_privileges jne.), lompakko näyttää sinulle pyynnön, ja vain hyväksymäsi attribuutit siirretään. Siirto on myös myöntävän viranomaisen (osavaltiosi DMV) kryptografisesti allekirjoittama, joten vahvistaja voi vahvistaa attribuuttien aitouden soittamatta kotiin – offline-vahvistus toimii.
Siksi tietosuojastaan huolta pitävät suosivat mDL:iä, vaikka standardi on monimutkaisempi: se mahdollistaa transaktion laajuisen luovuttamisen. Ovivartija ei tarvitse osoitettasi; TSA-virkailija ei tarvitse elinluovuttajastatustasi; 7-Eleven-virkailija ei tarvitse korttinumeroasi.
mDL-standardi määrittelee joukon johdettuja attribuutteja, joiden avulla vahvistaja voi esittää kyllä/ei-kysymyksen raa'an arvon sijaan. Tärkeimmät:
age_over_18, age_over_21, age_over_65 – ikärajoitetuille ostoille paljastamatta syntymäpäivää.resident_state – "oletko osavaltion asukas?" -kysymyksiin paljastamatta osoitetta.driving_privileges – ajokortin luokka ja rajoitukset; autonvuokraukseen.Hyvin suunniteltu vahvistajasovellus baariin pyytää vain age_over_21. Lompakko näyttää "Baari XYZ haluaa tietää, oletko yli 21." Napauta Hyväksy, ja yksi allekirjoitettu totuusarvo ("tosi") palautetaan. Baarin sovellus vahvistaa allekirjoituksen osavaltiosi julkaistua mDL-luottamusjuurta vasten. Valmis. Ei syntymäpäivää, ei nimeä, ei korttinumeroa, ei kuvaa. Verrattuna fyysisen kortin luovuttamiseen tämä on massiivinen tietosuojaparannus.
Fyysisen kortin uhkamalli oli yksinkertainen: hukkaa se, kopioi se, kurkistele olkapään yli. mDL-uhkamalli on erilainen. Formaatti on vahva; kryptografia on vankka; riski siirtyy transaktion toisella puolella olevaan vahvistajasovellukseen.
Kuka tahansa voi rakentaa vahvistajasovelluksen. Ei ole keskitettyä lisenssiviranomaista. Niinpä baari voi käyttää valmisvahvistajaa, joka on konfiguroitu pyytämään koko syntymäpäivä, koko nimi ja kuva, vaikka se tarvitsee vain age_over_21. Autonvuokrauksen toimihenkilö voi pyytää kaikkea "asiakirjaan". Myymälävirkailija voi pyytää osoitteen. Mikään näistä ei ole teknisesti kiellettyä standardissa – standardi vain sanoo, että lompakon on näytettävä haltijalle, mitä pyydetään, ja vaadittava nimenomainen hyväksyntä.
Puolustus on siis haltijan puolella: lue pyyntökehote. Jos vahvistaja pyytää enemmän kuin transaktio vaatii, kieltäydy. Jotkin lompakot varoittavat, kun vahvistaja ei ole tunnetulla luottamuslistalla; ISO/IEC 18013-5 tukee vahvistajan todentamista sertifikaattien kautta, mutta luottamuslistainfrastruktuuri kypsyy vielä (osavaltiokohtaiset listat Yhdysvalloissa; EU:n luottamuslista eIDAS 2.0:n alla).
Kannattaa myös tietää: vahvistaja näkee eDeviceKey:si, cipher suiten ja tuettavat siirtomenetelmäsi – siinä kaikki. He eivät saa attribuutteja pelkästä QR-koodista. Joten QR-koodin skannaaminen tarralapusta tai jonkun näytöltä ja sen kanssa lähtö ei anna hyökkääjälle mitään hyödyllistä. Attribuutit siirtyvät vain salatun istunnon sisällä kättelynjälkeen.
Pudota mDL-DeviceEngagement-QR-koodi (kuva, liitä tai kamera) skannerimme. Tulos näyttää:
Emme pura MITÄÄN attribuutteja – QR-koodissa ei ole attribuutteja, se on suunnitelmallista. Varsinaiset lisenssitiedot siirtyisivät salattuina valitun siirtomenetelmän kautta oikealle vahvistajalle.
Purku tapahtuu selaimessasi; vain rakenteelliset metatiedot lähetetään palvelimillemme turvallisuusluokittelua varten.
age_over_21:n sijaan = kieltäydy tai kysy miksi. Autonvuokrauksen virkailija, joka pyytää elinluovuttajastatusta = kieltäydy.Pudota QR-koodi (kuva, liitä tai kamera). Tulos näyttää version, cipher suiten, siirtomenetelmät ja mahdollisen valinnaisen palvelinhaku-URL:n. Ei attribuutteja – ne siirtyvät vain salatun kättelynjälkeisen istunnon sisällä oikealle vahvistajalle.