标准 · 移动驾照(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钱包和Google钱包中正式发布或试点mDL;加利福尼亚州mDL已全面开放;TSA在美国大多数主要机场安检时接受mDL;欧盟正在eIDAS 2.0框架下将其变体集成到EUDI钱包(法规于2024年底生效,钱包预计2026-2027年上线)。该标准也是ISO/IEC 23220(通用移动凭证框架,涵盖驾照以外的凭证)的基础。

QR内部究竟包含什么

mDL QR编码的是DeviceEngagement CBOR结构。CBOR(简洁二进制对象表示,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预留(欧盟使用场景)。

eDeviceKey

钱包为每个会话生成的临时EC公钥。验证方用此建立加密会话,交易结束后即销毁。我们的扫描仪只显示此字段的长度,从不输出密钥字节——它们是临时性的,仅对进行中的验证方会话有意义。

传输方式

钱包告知验证方它支持哪些实际属性传输通道:NFC(靠近)、蓝牙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等),钱包向您展示请求内容,只有您批准的属性才会被传输。传输内容还带有签发机构(您所在州的车管所)的密码学签名,验证方无需在线查询即可确认属性的真实性——离线验证可行。

这就是注重隐私的人即便面对更复杂的标准也更倾向于mDL的原因:它实现了与业务范围相匹配的信息披露。保安不需要您的地址,TSA官员不需要您的器官捐献状态,便利店店员不需要您的驾照号。

选择性披露:核心价值所在

mDL标准定义了一组派生属性,允许验证方提出是/否问题,而非获取原始值。主要属性:

为酒吧设计良好的验证方应用只请求 age_over_21。钱包显示"酒吧XYZ希望确认您是否年满21周岁。"您点击"批准",一个签名后的布尔值("true")被返回。酒吧应用根据您所在州发布的mDL信任根验证签名。完成。没有出生日期、没有姓名、没有驾照号、没有照片。与递交实体卡相比,这是巨大的隐私提升。

恶意验证方:新的威胁模型

实体卡的威胁模型很简单:遗失、被复制、被旁窥。mDL的威胁模型不同。格式本身是强健的,密码学是可靠的,风险转移到了交易对端的验证方应用上。

任何人都可以构建验证方应用,没有中央许可机构。因此,某个酒吧可能使用配置为索取完整出生日期、全名和照片的现成验证方,尽管只需要 age_over_21。租车员工可能"存档"要求全部信息。零售店员可能索取地址。这些在技术上都不违反标准——标准只要求钱包向持有人展示所请求的内容并要求明确批准。

因此,防御在于持有人一侧:阅读请求提示。如果验证方索取的信息超出业务所需,请拒绝。部分钱包会在验证方不在已知信任列表中时给出警告;ISO/IEC 18013-5通过证书支持验证方身份验证,但信任列表基础设施仍在完善中(美国各州列表;eIDAS 2.0下的欧盟信任列表)。

另需了解:验证方从QR中只能看到您的eDeviceKey、密码套件以及您支持的传输方式——仅此而已。他们无法从QR单独获取任何属性。因此,扫描贴纸或他人屏幕上的QR,攻击者得不到任何有用信息。属性只有在握手后的加密会话内才会传输。

我们的扫描仪显示的内容

将mDL DeviceEngagement QR(图像、粘贴或摄像头)拖入我们的扫描仪。判定结果显示:

我们不解码任何属性——QR中本来就没有属性,这是设计使然。实际的驾照数据将通过所选传输方式,经加密通道传输给真实验证方。

解码在您的浏览器中进行;只有结构性元数据会到达我们的服务器用于安全分类。

在批准验证方请求之前

相关内容

检测mDL设备参与QR

上传QR(图像、粘贴或摄像头)。判定结果显示版本、密码套件、传输方式以及任何可选的服务器检索URL。不包含任何属性——这些属性仅在握手后通过加密通道传输给真实验证方。

打开扫描仪 →