← All Articles
Technology 8 min read

Identity Verification Doesn't Have to Happen in Real Time

Issue a credential once, store it securely, and share only what's needed, when it's actually needed. The Verifiable Data Issuance Protocol (VDIP) and Verifiable Data Sharing Protocol (VDSP) enable flexible, consent-driven credential exchange across real-world workflows, with Affinidi Meeting Place as the secure messaging layer that connects all parties.

Digvijay Dhamale & Francis Pineda

Digital trust enables organisations and users to verify identities, credentials, and claims online with confidence. Yet many workflows still rely on PDFs, screenshots, scans, and manual checks. These approaches create friction for users, increase operational overhead for businesses, and leave significant room for fraud, data duplication, and unnecessary storage of sensitive information. This problem appears most clearly in onboarding, KYC, eligibility checks, access control, partner verification, and compliance.

A better model issues trusted digital credentials once and allows users to share verifiable proofs over secure, trusted communication channels. The Verifiable Data Issuance Protocol (VDIP) and the Verifiable Data Sharing Protocol (VDSP) enable this model. VDIP manages issuance from an issuer to a holder, while VDSP manages sharing and presentation from a holder to a verifier. Both protocols are open (see VDIP and VDSP docs). The Affinidi Dart libraries implement these protocols as reference implementations, allowing developers to integrate them into real applications. Together with Affinidi Meeting Place, they enable a secure flow for issuing, storing, sharing, and verifying credentials with built-in user consent and privacy by design.

Both VDIP and VDSP use DIDComm v2.1, an open standard for secure, end-to-end encrypted messaging based on Decentralised Identifiers (DIDs). Instead of relying on email addresses, phone numbers, or centralised accounts, participants communicate through DID-based channels. This approach provides a secure and privacy-preserving transport layer for credential exchanges.

Affinidi Meeting Place provides the connection and messaging layer that enables these interactions. It enables DIDComm-based discovery, connection, and communication between individuals, businesses, and AI agents. In simple terms, VDIP and VDSP define how parties issue and share trusted credentials, while Affinidi Meeting Place provides the secure rails that carry those exchanges.

To help developers implement these protocols in real applications, Affinidi includes them in the Affinidi Trust Development Kit (TDK) — the Dart libraries map protocol roles directly into usable components.

The Building Blocks Behind This Model

Three roles underpin every credential exchange:

  • An issuer creates and issues a credential.
  • A holder receives, stores, and decides when to share the credential.
  • A verifier requests information and verifies what the holder presents.

VDIP governs the issuer-to-holder flow (issuance), while VDSP governs the holder-to-verifier flow (sharing). The Dart libraries reflect these roles: VdipIssuer and VdipHolder handle issuance, while VdspHolder and VdspVerifier handle sharing. The holder participates in both protocols—first as the recipient of a credential, then as the presenter of proofs.

VDIP enables trusted organisations—such as employers, universities, government agencies, or platforms—to issue tamper-evident digital credentials that users can store and reuse. The Affinidi Dart library represents this capability through the VdipIssuer and VdipHolder classes.

VDIP supports multiple credential formats, including W3C Data Model v1 and v2, JWT VC, and SD-JWT VC. These formats define credential structure, while VDIP defines how issuers deliver them.

Unlike traditional approaches that rely on file delivery or synchronous APIs, VDIP uses a secure, message-based flow. This approach ensures that the correct holder receives credentials, enables reuse, and removes the need for centralised storage or repeated verification. It also supports holder-bound assertions, ensuring that only the intended recipient can claim a credential.

VDSP enables holders to securely and selectively share credentials with verifiers. Instead of submitting screenshots or documents, users present verifiable proofs and often disclose only the required information. The Affinidi Dart library models this interaction through VdspHolder and VdspVerifier. VDSP supports feature discovery, credential queries via Digital Credentials Query Language (DCQL), and cryptographic verification of presentations and credentials.

From Documents to Verifiable Proofs

This model replaces document uploads and manual reviews with a secure, interoperable, and user-centric approach. Businesses verify proofs cryptographically instead of relying on easily falsified files. They reduce fraud, lower data liability, and streamline verification. Users gain greater control, stronger privacy, and less repetition by reusing a credential across multiple verification steps without having to upload it repeatedly.

Credential issuance, requests, and sharing with consent

Credential Portability in Practice

Consider employee credential portability. A previous employer issues a verifiable credential to an employee using VDIP. The employee stores it securely and chooses when to share it. When a new employer requires proof of past employment, the employee shares selective, verifiable information via VDSP rather than uploading documents. The new employer verifies the proof cryptographically.

You can think of this system like a subway network. Issuers, holders, and verifiers act as stations. VDIP and VDSP serve as tunnels through which data travels, while Affinidi Meeting Place acts as the secure tracks and infrastructure that ensure safe transit and access. With DIDComm-based connections, messaging, and optional storage, the system keeps interactions private, consent-driven, and trustworthy.

OutcomeEnabled byWhy
Lower fraudVDSP + Meeting PlaceVerified proofs + secure channel
Faster onboardingVDIP/VDSP + Meeting PlaceAsync request and response
Less document handlingVDIP + VDSPCredentials replace files
Less sensitive dataDCQL + VDSP + Meeting PlaceAsk less, encrypt transit
Defined rolesVDIP + VDSPClear issuer/holder/verifier
Standard flowsVDIP/VDSP + Meeting PlaceMessage choreography + rails
Faster buildTDK (Dart) + Meeting PlaceSDK roles + secure transport

The real breakthrough of VDIP (Verifiable Data Issuance Protocol) and VDSP (Verifiable Data Sharing Protocol) is that they remove one of the biggest limitations of OID4VCI and OID4VP: the assumption that trust interactions must happen synchronously, in real time, with the user actively present. Real-world trust workflows rarely operate that way. Hiring approvals, background screening, financial onboarding, healthcare claims, and cross-border compliance processes often span days or weeks across multiple organisations and systems.

By combining asynchronous credential exchange with secure DIDComm v2.1-based messaging via Affinidi Meeting Place, VDIP and VDSP enable trusted data, consent, and communication to move securely over time, rather than forcing users through repetitive live verification sessions.

The result is fewer redundant document submissions, fewer repeated identity checks, less manual coordination, and a dramatically smoother user experience. Credentials can be issued once, securely stored, and selectively shared when needed, while secure messaging provides the private, consent-driven communication layer that keeps interactions trusted end-to-end. VDIP and VDSP replace the need to repeatedly prove your identity across disconnected systems by enabling you to securely establish trust once, reuse it with consent, and carry it efficiently across interactions.

References

VDIPVDSPDIDComm v2.1Decentralised IdentityDCQL

Build with Affinidi

Start building trust infrastructure with our open-source tools and developer-friendly APIs.

Cookie Preferences

We use cookies to enhance your experience. You can manage your preferences below. For more information, read our Cookie Policy.

Strictly Necessary Always Active

These cookies are essential for core website functions such as security, session integrity, and cookie preference storage. They cannot be disabled.

  • _cf_bm: Distinguishes humans from bots (Cloudflare) · 30m
  • _cfuvid: Ensures secure browsing (Cloudflare) · Session
  • __hs_initial_opt_in: Prevents HubSpot's banner · 7 days
  • _gtm_debug: GTM debug mode (testing only) · Session
Analytics

These cookies help us understand how visitors interact with the site so we can improve content and performance. All data is aggregated and anonymous.

  • _ga, _gid, _gat: Google Analytics · Session – 2 years
  • __hstc, hubspotutk, __hssrc: HubSpot visitor tracking · 13 months
  • __hs_opt_out: HubSpot opt-out preference · 6 months
Marketing & Targeting

These cookies allow us and our partners to serve personalised ads and measure campaign performance.

  • _gcl_au, _gcl_dc: Google Ads conversion tracking · 90 days
  • IDE: Google Display Network personalisation · 1 year
  • _fbp: Meta / Facebook remarketing · 90 days
  • li_gc, _li_fat_id, bcookie: LinkedIn tracking · 1–24 months
  • guest_id, personalization_id: Twitter/X analytics · 2 years