規格 · モバイル運転免許証(mDL)

モバイル運転免許証QRコード:ISO/IEC 18013-5

バーテンダー、TSA職員、またはレンタカーの担当者がスマートフォンの運転免許アプリのQRをスキャンするとき、そのQRは免許証ではありません。それはハンドシェイクです。実際の属性は、検証者が特定のフィールドを要求し、あなたがスマートフォンでリリースを承認した後にのみ転送されます。正しく行われれば、mDLはプラスチックカードよりもはるかに少ない情報を漏洩します。誤って行われれば(敵対的な検証者、包括的な承認)、同じ量か、それ以上を漏洩します。違いを見分ける方法を説明します。

mDL QRを検査する → すべての規格 →

規格とは何か

ISO/IEC 18013-5:2021、個人識別、ISO準拠運転免許証、第5部:モバイル運転免許証(mDL)アプリケーション。デジタル運転免許証の発行、保存、検証者への転送、およびオフライン検証方法を規定する国際規格です。ほとんどの人が目にするQRコード部分(セクション8.2「デバイス取得、QRコードエンゲージメント」)です。コンパニオン規格であるISO/IEC 18013-7はオンライン取得(保有者の同意を得て検証者が発行者に直接問い合わせる)をカバーしています。

採用は進んでいます:米国の十数州がApple WalletとGoogle Walletで本番発行またはパイロットmDLを展開しています。カリフォルニア州のmDLは一般提供中です。TSAはほとんどの主要米国空港でセキュリティでmDLを受け付けています。EUはeIDAS 2.0(2024年末に規制発効、ウォレットは2026〜2027年予定)のEUDIウォレットに変形版を組み込んでいます。この規格はまたISO/IEC 23220(運転免許証以外のものもカバーする一般的なモバイル認証情報フレームワーク)の基礎にもなっています。

QRの実際の中身

mDL QRはDeviceEngagement CBOR構造をエンコードしています。CBOR(Concise Binary Object Representation、RFC 8949)はJSONのコンパクトなバイナリ代替です。デコードされた構造はおおよそ次のようになります:

{
  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...}
}

主要フィールド、デコード済み:

バージョン

現在のデプロイメントでは常に「1.0」。将来の改訂でバンプされる可能性があります。

暗号スイート

現在は常に1:P-256上のECDH鍵合意、AES-GCMセッション暗号化。暗号スイート2はbrainpoolP320r1(EU用途)用に予約されています。

eDeviceKey

財布アプリによってセッションごとに生成されたエフェメラルEC公開鍵。検証者が暗号化セッションを設定するために使用します。取引後に消去されます。当スキャナーはこのフィールドの長さを表示しますが、鍵バイトは絶対にエコーしません。エフェメラルであり、進行中の検証者セッションにのみ意味があります。

転送方法

財布アプリは、実際の属性転送に使用する用意のあるチャネルを検証者に伝えます:NFC(タップ)、Bluetooth LE、またはWi-Fi Aware(アクセスポイントなしのピアツーピアWi-Fi)。ほとんどのmDLはBLEとNFCを提供しています。Wi-Fi Awareはプラットフォームによって制限されています。

サーバー取得(オプション)

存在する場合、財布アプリは18013-7モードをサポートしています:検証者は財布から直接ではなく、発行者のオンラインAPIから属性を要求できます。QRには発行者のURLが含まれています。当スキャナーはこれを抽出し、どの機関がルックアップを処理するかを表示します。

プラスチックカードのAAMVA PDF417とどう違うか?

これは異なるカテゴリの認証情報です。米国のプラスチック免許証の裏面にあるAAMVA PDF417バーコードは、カードに記載されているすべての属性(氏名、住所、生年月日、免許番号、身長、体重、瞳の色、制限事項、臓器提供フラグ)を平文で含んでいます。どんなスキャナーでもすべてを読み取れます。カードは「全か無か」の認証情報です。渡せばすべてが開示され、そうでなければ渡しません。

mDLはそれを逆転させます。QRに属性は含まれておらず、ハンドシェイクだけです。検証者は特定の属性(given_namefamily_namebirth_dateage_over_21portraitdocument_numberdriving_privilegesなど)を要求する必要があり、財布アプリはリクエストを表示し、承認した属性のみが転送されます。転送は発行機関(州DMV)によって暗号的に署名されているため、検証者はオフラインで属性が本物であることを確認できます。

これがプライバシーを気にする人が規格がより複雑であってもmDLを好む理由です:取引にスコープを絞った開示が可能です。バウンサーはあなたの住所を必要としません。TSA職員はあなたの臓器提供ステータスを必要としません。コンビニの店員はあなたの免許番号を必要としません。

選択的開示:実際の意義

mDL規格は、検証者が生の値ではなくyes/noの質問ができる派生属性のセットを定義しています。主要なものは:

バーに適切に設計された検証者アプリはage_over_21だけを尋ねます。財布アプリには「バーXYZはあなたが21歳以上かどうかを確認したい」と表示されます。承認をタップすると、単一の署名済みブール値(「true」)が返されます。バーのアプリは州の公開mDLトラストルートに対して署名を検証します。完了。生年月日なし、氏名なし、免許番号なし、写真なし。プラスチックカードを渡すことと比較して、これは大幅なプライバシーの改善です。

敵対的な検証者:新しい脅威モデル

プラスチックカードの脅威モデルはシンプルでした:紛失、コピー、のぞき見。mDLの脅威モデルは異なります。フォーマットは強力で、暗号学は堅固ですが、リスクは取引の反対側にある検証者アプリに移行します。

誰でも検証者アプリを構築できます。中央のライセンス機関はありません。つまり、バーはage_over_21だけが必要なのに、完全な生年月日、氏名、写真を要求するように設定された既製の検証者を使用するかもしれません。レンタカーの担当者は「ファイルのために」すべてを求めるかもしれません。小売店員は住所を求めるかもしれません。これらはどれも規格によって技術的に禁止されているわけではありません。規格はただ、財布アプリが何が要求されているかを保有者に示し、明示的な承認を求めることを要求しているだけです。

したがって、防衛は保有者側にあります:リクエストプロンプトを読む。検証者が取引に必要な以上のものを要求している場合は断ってください。一部の財布アプリは検証者が既知のトラストリストにない場合に警告します。ISO/IEC 18013-5は証明書を介した検証者認証をサポートしていますが、トラストリストのインフラはまだ成熟しています(米国では州ごとのリスト、eIDAS 2.0下のEUトラストリスト)。

また、知っておく価値があること:検証者はあなたのeDeviceKey、暗号スイート、およびサポートする転送方法を見ます。それだけです。QRだけから属性を取得することはありません。つまり、ステッカーや誰かの画面からQRをスキャンして持ち去っても、攻撃者には何も役立つものが得られません。属性はハンドシェイク後の暗号化セッション内でのみ転送されます。

当スキャナーが表示する情報

mDL DeviceEngagement QR(画像、貼り付け、またはカメラ)を当スキャナーにドロップしてください。判定に表示されます:

属性はデコードしません。設計上、QRに属性はありません。実際のライセンスデータは選択した転送方法を通じて暗号化されて実際の検証者に送られます。

デコードはブラウザで行われます。構造メタデータのみが安全性分類のためにサーバーに送信されます。

検証者リクエストを承認する前に

関連情報

mDL DeviceEngagement QRを検査する

QR(画像、貼り付け、またはカメラ)をドロップしてください。判定にはバージョン、暗号スイート、転送方法、およびオプションのサーバー取得URLが表示されます。属性は表示されません。属性は実際の検証者へのハンドシェイク後の暗号化セッション内でのみ転送されます。

スキャナーを開く →