VerifierClient

interface VerifierClient

Reader role. Verifies a received mdoc presentation and produces the composed accept/reject verdict — signature + trust chain + validity window + revocation, combined into one AcceptanceResult.

Two entry points:

  • verify is transport-agnostic — hand it response bytes obtained over any channel (an online DC-API/OpenID4VP response, a test round-trip) and it verifies them against issuer trust.

  • startReaderSession drives a full offline ISO 18013-5 proximity read over BLE: scan the holder's engagement QR, hand it to the returned VerificationSession, and observe its state through to a verdict.

Functions

Link copied to clipboard
abstract fun startReaderSession(request: PresentationRequest = PresentationRequest(docType = "org.iso.18013.5.1.mDL")): VerificationSession

Begin an offline proximity read. Feed the scanned engagement QR to VerificationSession.connect; the session opens BLE, requests request's elements, receives the response, and verifies it. Defaults to requesting the standard mDL identity elements.

Link copied to clipboard
abstract suspend fun verify(deviceResponse: ByteArray, sessionTranscript: ByteArray): AcceptanceResult