Стандарты · Мобильное водительское удостоверение (mDL)

QR-коды мобильного водительского удостоверения: ISO/IEC 18013-5

Когда бармен, сотрудник TSA или служащий проката автомобилей сканирует QR-код на экране вашего телефона, происходит вот что: ваш телефон устанавливает зашифрованный канал с верификатором и открывает только запрошенные данные — ничего лишнего.

Проверить QR-код mDL → Все стандарты →

Что представляет собой стандарт

ISO/IEC 18013-5:2021 — персональная идентификация, водительское удостоверение соответствия ISO, часть 5: мобильное водительское удостоверение (mDL). Он определяет формат данных, протокол передачи и криптографию для цифровых водительских удостоверений на смартфоне.

Распространение идёт активно: десятки штатов США имеют производственные или пилотные mDL-решения, поддержка встроена в iOS Wallet, Google Wallet и несколько государственных приложений.

Что находится внутри QR-кода

QR-код mDL кодирует CBOR-структуру DeviceEngagement. CBOR (Concise Binary Object Representation) — это компактный двоичный формат, аналогичный 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: согласование ключей ECDH на P-256, сессионное шифрование AES-GCM, MAC-аутентификация HMAC-SHA-256.

eDeviceKey

Эфемерный открытый ключ EC, генерируемый кошельком для каждой сессии. Не связан с ключом подписи удостоверения — не позволяет связать вас по предыдущим транзакциям.

Методы передачи данных

Кошелёк сообщает верификатору, какие каналы он готов использовать для фактической передачи данных: NFC, BLE, WiFi Aware, QR или серверная верификация.

Серверная верификация (необязательная)

При наличии кошелёк поддерживает режим 18013-7: верификатор может запрашивать атрибуты через HTTPS, а не через NFC/BLE-канал.

Чем это отличается от AAMVA PDF417 на пластиковой карте?

Это другая категория документов. Баркод AAMVA PDF417 на пластиковой карте содержит все ваши данные: полное имя, адрес, дату рождения, ограничения — в открытом тексте. Любой, кто его сканирует, получает всё.

mDL переворачивает эту схему. QR-код не содержит атрибутов — только рукопожатие. Верификатор должен запросить конкретные атрибуты (given_name, family_name, birth_date, age_over_21, portrait, document_number, driving_privileges и др.), кошелёк показывает вам этот запрос, и передаются только те атрибуты, которые вы одобрили. Передача также криптографически подписана выдающим органом (государственным DMV), поэтому верификатор может подтвердить подлинность атрибутов без обращения к серверу — офлайн-верификация работает.

Именно поэтому пользователи, заботящиеся о приватности, предпочитают mDL, несмотря на то что стандарт сложнее — для них это реальное улучшение, а не маркетинг.

Избирательное раскрытие данных: в чём суть

Стандарт mDL определяет набор производных атрибутов, позволяющих кошельку ответить на вопрос, не раскрывая исходных данных удостоверения. Три наиболее распространённых:

Хорошо спроектированное приложение-верификатор для бара запрашивает только age_over_21. Ваш кошелёк подтверждает результат без передачи самой даты рождения.

Недобросовестные верификаторы: новая модель угроз

Угрозы для пластиковых карт были простыми: потерять, скопировать, подсмотреть через плечо. Угрозы для mDL иные. Формат надёжен; криптография выверена; риск смещается в сторону приложения-верификатора на другой стороне транзакции.

Любой может создать приложение-верификатор. Центральной лицензирующей инстанции не существует. Поэтому бар, желающий получить больше, чем age_over_21, может создать верификатор, запрашивающий полное имя, дату рождения, адрес и фото.

Защита — на стороне владельца: читайте запрос. Если верификатор запрашивает больше, чем нужно для транзакции, откажитесь.

Важно знать: верификатор видит ваш eDeviceKey, набор шифров и методы передачи из QR-кода ещё до вашего одобрения. Содержимое удостоверения он получает только после подтверждения с вашей стороны.

Что показывает наш сканер

Загрузите QR-код DeviceEngagement mDL (изображение, вставка или камера) в наш сканер. Результат покажет:

Мы НЕ декодируем атрибуты — их нет в QR-коде по замыслу стандарта. Атрибуты передаются по зашифрованному каналу после сканирования QR-кода и вашего одобрения.

Декодирование происходит в вашем браузере; на наш сервер передаются только структурные метаданные.

Перед тем как одобрить запрос верификатора

По теме

Проверить QR-код DeviceEngagement mDL

Загрузите QR-код (изображение, вставка или камера). Результат покажет версию, набор шифров, методы передачи, хост серверной верификации и длину eDeviceKey.

Открыть сканер →