Skip to main content
green gradient background, "The Future of Application Security Is Already Here." and a read the report button.
ISO 18013-5 vs. 18013-7: Field GuideFederation & SSO
5 min readFor IAM Architects

ISO 18013-5 vs. 18013-7: Field Guide

Scope

This guide explores the technical requirements and implementation considerations for mobile driver's license (mDL) presentation under ISO/IEC 18013-5 (in-person) and ISO/IEC 18013-7 (remote). You'll find protocol breakdowns, interoperability requirements, and practical guidance for IAM architects building or integrating mDL verification systems.

Key Concepts and Definitions

mDL (Mobile Driver's License): An ISO-defined credential stored in a digital wallet and presented cryptographically to verifiers.

Holder: The individual whose identity attributes are encoded in the mDL. The holder's device stores the credential and responds to presentation requests.

Verifier: The system or device that requests and validates mDL attributes. It bears the risk of accepting invalid or revoked credentials.

Relying Party: The organization or service that depends on the verifier's assessment. It may be the same entity as the verifier or a separate service consumer.

Device Retrieval: The mechanism by which a verifier's device establishes a secure channel with the holder's device to request credential attributes.

OpenID for Verifiable Presentation (OID4VP): A protocol that enables credential presentation over HTTP, supporting multiple formats including mDOC.

W3C Digital Credentials API (DC API): A browser-based API that mediates VDC presentation, currently supported by Chrome and Safari with Firefox support planned.

Requirements Breakdown

ISO/IEC 18013-5: In-Person Presentation

Transport layer requirements:

  • Near Field Communication (NFC)
  • Bluetooth Low Energy (BLE)
  • Wi-Fi Aware

Connection establishment:

  • Device-to-device secure channel required before attribute transfer
  • QR code initiation supported for BLE and Wi-Fi Aware sessions
  • Physical proximity enforced by transport layer constraints

Use case profile:

  • Attended transactions where verifier device is physically present
  • Examples: TSA checkpoint readers, point-of-sale age verification terminals
  • Latency-sensitive scenarios requiring immediate response

ISO/IEC 18013-7: Remote Presentation

Protocol options:

Annex B (OID4VP via HTTP redirects):

  • Uses HTTP redirects including custom schemes
  • References OpenID Foundation specifications
  • Supports multiple credential formats

Annex C (Device retrieval via DC API):

  • Builds on 18013-5 presentation framework
  • Currently supports mDOC format only
  • Work ongoing to add Selective Disclosure JSON Web Tokens (SD-JWT) support

Annex D (OID4VP via DC API - draft):

  • Uses W3C Digital Credentials API for credential transfer
  • Aligns to High Assurance Interoperability Profile (HAIP) for OID4VP
  • Enhanced security properties over Annex B

Cross-device flow requirements:

  • User initiates on one device (laptop) but credential resides on another (phone)
  • Session continuity across device handoff
  • User consent mechanisms for attribute disclosure

Implementation Guidance

Building a Verifier System

Step 1: Define your presentation context

Determine whether you're building for in-person, remote, or both. Users expect to pre-verify identity before arriving at your location.

Step 2: Maintain trusted issuer key sets

Your verifier must hold current public keys and metadata for all issuers you'll accept. Refresh these periodically or implement batch distribution. You own the risk if you accept a credential signed by a compromised or outdated key.

Step 3: Choose your remote protocol path

If implementing 18013-7:

  • Annex B offers broader wallet compatibility today but requires managing HTTP redirect flows.
  • Annex C limits you to mDOC format but leverages the DC API's phishing resistance.
  • Annex D offers the strongest security profile but is still in draft.

You'll likely need to support multiple paths during the transition period. Plan for protocol negotiation in your verifier logic.

Step 4: Handle credential status

Don't rely solely on signature validation. Issuers refresh credentials frequently, but latency exists between revocation and your knowledge of it. For higher-risk transactions, query issuer status services or check Token Status Lists (IETF active draft, referenced in upcoming 18013-5 revision).

Step 5: Implement selective disclosure

Request only the attributes you need. If you're verifying age for restricted content, request "over 18" rather than full date of birth. This isn't just privacy hygiene; it trains users to recognize appropriate requests and resist over-disclosure to malicious verifiers.

Wallet Selection Strategy

If you're building a holder-side wallet:

Support both 18013-5 and 18013-7 from day one. Users will encounter both in-person readers and remote verifiers. A wallet that only handles one context will fail in the field.

Implement DC API integration. Chrome and Safari support is live. Firefox support is planned. This API standardizes cross-device flows and reduces the risk of training users to accept phishing-style redirect patterns.

Plan for multi-credential scenarios. Users may need to present multiple credentials in a single session (e.g., mDL plus professional license). Your UX must make clear which credential is being requested and allow selective presentation.

Common Pitfalls

Assuming protocol convergence has already happened. Two presentation protocols exist in 18013-7 (Annex B/D and Annex C). An OIDF working group is now being chartered to harmonize them, but you're implementing during the transition. Build for both or accept that you'll exclude wallet implementations that chose the other path.

Treating revocation as someone else's problem. Verifiers bear the risk of accepting invalid credentials. If your system relies on batch key updates with 24-hour refresh cycles, you're exposed to credentials revoked in that window. Document your risk tolerance and implement status checks that match it.

Over-requesting attributes. Asking for full date of birth when you need age verification signals to users that your system isn't privacy-respecting. Worse, it trains them to accept over-disclosure from less trustworthy verifiers.

Ignoring cross-device complexity. Remote presentation often means the user is on a laptop but the credential is on their phone. If your flow assumes same-device operation, you'll create friction that drives users back to uploading photos of physical IDs.

Building only for in-person or only for remote. Users don't segment their lives this way. They'll expect to pre-verify online before showing up in person, or to fall back to in-person if remote verification fails.

Quick Reference Table

Requirement ISO/IEC 18013-5 ISO/IEC 18013-7 Annex B/D ISO/IEC 18013-7 Annex C
Context In-person (attended) Remote (unattended) Remote (unattended)
Transport NFC, BLE, Wi-Fi Aware HTTP (redirects or DC API) DC API + device retrieval
Protocol Device-to-device retrieval OID4VP 18013-5 framework via DC API
Format support mDOC Multiple (including mDOC) mDOC (SD-JWT work ongoing)
Security profile Physical proximity enforced Standard (Annex B) or HAIP (Annex D) Phishing-resistant via DC API
Use case TSA checkpoints, POS age verification Online account opening, remote KYC Browser-based verification
Cross-device Not applicable Supported Supported
Current status Mature, widely implemented Annex B mature, Annex D draft Emerging, DC API adoption growing

Revocation check methods:

  • Issuer public key validation (minimum baseline)
  • Periodic issuer metadata refresh (batch distribution)
  • Token Status List queries (IETF draft, coming in next 18013-5 version)
  • Issuer-provided status services (transaction-time queries)

DC API browser support:

  • Chrome: Supported
  • Safari: Supported
  • Firefox: Planned
Promotional banner for the Penetration Report Template Kit

You Might Also Like