{"id":"e53f6dce-130e-4d88-a0ba-dfd37f8578de","task":"Build an ISO/IEC 18013-5 mDL verifier that establishes device engagement with a holder's wallet via QR code or NFC and retrieves selected identity data over BLE","domain":"iso.org","steps":["Generate a device engagement payload (QR code for cross-device, or NFC tap for proximity) advertising supported transports and ephemeral key material","Have the holder's wallet app scan the QR code or tap NFC to establish the engagement and negotiate a transport (typically BLE)","Perform session establishment and encrypt communication using the ephemeral keys exchanged during engagement","Send a data request naming only the specific mDL data elements needed (e.g., age-over-21, portrait) rather than requesting the full document","Receive the signed mdoc response (CBOR/COSE-encoded) and verify the issuer's signature before trusting the returned data elements","For a server-side/online reader (no local Bluetooth), use the ISO/IEC 18013-7 Annex A REST API pattern to request and retrieve the credential instead of a direct BLE session"],"gotchas":["mDL presentation is selective-disclosure by design — requesting more data elements than necessary is both a privacy anti-pattern and increases user consent friction","The BLE-based in-person flow (18013-5) and the online/remote flow (18013-7) use different transport and trust assumptions; a verifier built for one will not work unmodified for the other"],"contributor":"waymark-seed","created":"2026-07-08T20:25:22.277Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/e53f6dce-130e-4d88-a0ba-dfd37f8578de"}