OpenID Connect for Verifiable Presentations (OIDC4VP) is an extension of the widely adopted OpenID Connect (OIDC) authentication protocol, designed specifically for requesting and presenting W3C Verifiable Credentials (VCs) in a secure, privacy-preserving manner. It enables a Verifier (or Relying Party) to request specific claims from a user's digital wallet, which responds with a Verifiable Presentation (VP). This presentation is a cryptographically signed package of credentials that proves the user's attributes—such as age, membership, or accreditation—without revealing unnecessary personal data, establishing a standardized bridge between traditional web authentication and decentralized identity.
OIDC4VP
What is OIDC4VP?
OIDC4VP is a protocol for requesting and presenting cryptographically verifiable credentials.
The protocol operates through a well-defined interaction flow. A user initiates access to a service (the Verifier), which sends an authorization request containing a precise description of the required credentials. The user's wallet (the Holder) processes this request, allowing the user to review and consent to which credentials to share. The wallet then constructs a Verifiable Presentation, signing it with the user's cryptographic keys. This VP is returned to the Verifier via an ID Token or a direct response, who can then cryptographically verify its authenticity and integrity without needing to contact the original credential issuer, enabling offline verification.
OIDC4VP is foundational for user-centric identity and selective disclosure. A key feature is the ability to present cryptographic proofs (like Zero-Knowledge Proofs or ZKPs) derived from credentials, rather than the credentials themselves. For example, a user could prove they are over 21 from a government-issued ID without revealing their exact birthdate or ID number. This minimizes data exposure and enhances privacy. The protocol's reliance on the established OIDC ecosystem allows for easier integration with existing web and mobile applications, making decentralized identity practical for real-world use cases like KYC processes, access control, and age verification.
Etymology and Origin
The term OIDC4VP is a technical specification that combines two established identity protocols to create a new standard for verifiable credentials.
OIDC4VP is a compound acronym derived from OpenID Connect (OIDC) and Verifiable Presentations (VP). It represents the fusion of these two distinct but complementary identity frameworks. The name is constructed by appending the specific functional goal—4VP, meaning "for Verifiable Presentations"—to the core protocol, OIDC. This naming convention is common in technical standards, signaling an extension of a base protocol for a new purpose, similar to OAuth 2.0 for Device Authorization (OAuth 2.0 DAR).
The etymology reflects its evolutionary path from web authentication to decentralized identity. OpenID Connect, itself an identity layer on top of the OAuth 2.0 authorization framework, originated in the early 2010s to provide a standardized way for users to log into websites using accounts from other services (like Google or Facebook). Verifiable Presentations are a core concept from the W3C Verifiable Credentials Data Model, a later standard (circa 2019) enabling cryptographically secure, user-controlled digital credentials. OIDC4VP, formally known as OpenID Connect for Verifiable Presentations, was developed by the OpenID Foundation to bridge these worlds, allowing OIDC's ubiquitous authentication flows to request and receive W3C-compliant verifiable data.
The origin of the specification lies in the need for interoperability between the existing, widely deployed federated identity ecosystem (dominated by OIDC) and the emerging Self-Sovereign Identity (SSI) paradigm built on verifiable credentials. Prior to OIDC4VP, these were largely separate stacks. The work began within the OpenID Foundation's Connect Working Group, with contributions from identity and blockchain experts, culminating in the specification's formalization. Its development was driven by real-world use cases requiring both high-assurance authentication and the portability of credentials, such as in digital driver's licenses, professional attestations, and Know-Your-Customer (KYC) processes.
How OIDC4VP Works
OIDC4VP (OpenID Connect for Verifiable Presentations) is a standardized protocol that enables users to present cryptographically verifiable credentials, such as digital driver's licenses or university diplomas, to a relying party (verifier) in a secure and privacy-preserving manner.
The OIDC4VP workflow begins when a verifier (e.g., a financial service or age-gated website) requests specific user data. Instead of asking for raw credentials, it sends an authorization request specifying the required Verifiable Credential types and the claims needed using a Presentation Definition. This request is typically delivered via a QR code or a deep link, initiating an interaction between the user's wallet (the holder) and the verifier. The protocol builds upon the established OAuth 2.0 and OpenID Connect flows, treating the presentation of a Verifiable Credential as a form of identity assertion.
Upon receiving the request, the user's wallet software presents the request to the user. The user selects which credentials in their wallet satisfy the verifier's requirements and can exercise selective disclosure to share only the necessary attributes, enhancing privacy. The wallet then creates a Verifiable Presentation—a signed package containing the selected credentials or their derived claims. This presentation is cryptographically bound to a Decentralized Identifier (DID) controlled by the user, proving the origin and integrity of the data without relying on a central database.
The wallet submits this Verifiable Presentation back to the verifier as part of the OIDC token exchange. The verifier's backend performs several critical checks: it validates the cryptographic signatures on the presentation and the embedded credentials, confirms the credentials were issued by a trusted issuer (e.g., a government or university), and verifies they have not been revoked. This process ensures data minimization and user consent are central, as the user never shares their raw credentials or primary identifiers with the verifier unless absolutely required by the presentation definition.
A key innovation of OIDC4VP is its support for holder binding, which cryptographically links the presentation to the specific user session, preventing presentation replay attacks. Furthermore, the protocol can leverage DID-based authentication, where the user proves control of their DID (e.g., through a cryptographic challenge-response) as part of the flow. This creates a powerful synergy between authenticating the user and verifying their attested claims in a single, streamlined interaction, moving beyond simple federated login to rich, credential-based trust.
In practice, OIDC4VP enables diverse use cases. For instance, a user could prove they are over 21 by presenting a verifiable credential from a government issuer, revealing only their birth date and its validity—not their name or address. The protocol is foundational for implementing Self-Sovereign Identity (SSI) principles at scale, providing a standardized, interoperable bridge between the decentralized credential ecosystem and existing web infrastructure. Its design ensures that trust is established through verifiable cryptography and explicit user consent, rather than third-party intermediaries.
Key Features of OIDC4VP
OIDC4VP (OpenID Connect for Verifiable Presentations) is a standardized protocol that enables the secure and privacy-preserving exchange of verifiable credentials in web and mobile applications. Its key features define how identity data is requested, presented, and verified.
Selective Disclosure
A core privacy feature that allows a user to reveal only specific claims from a Verifiable Credential without exposing the entire document. For example, a user can prove they are over 21 from a driver's license credential without revealing their exact birth date, address, or license number. This is enabled through cryptographic techniques like BBS+ signatures.
Holder-Initiated Flow
The protocol is designed around user agency, where the Holder (user) initiates and controls the presentation of their credentials. The Verifier (relying party) sends a Presentation Request, but the Holder's wallet software evaluates this request, gathers the required credentials from their digital wallet, and decides whether and how to respond. This prevents unsolicited data requests.
Presentation Request & Definition
Verifiers structure their data requirements using a machine-readable Presentation Definition. This JSON object specifies:
- The type of credentials accepted (e.g.,
"type": ["VerifiableCredential", "DriversLicense"]). - The specific claims required (e.g.,
"family_name","birthdate"). - Optional constraints like issuer trust lists or status check requirements. The Holder's wallet uses this definition to find matching credentials.
Verifiable Presentation
The cryptographically secured package created by the Holder in response to a Presentation Request. A Verifiable Presentation bundles one or more Verifiable Credentials (or selective disclosures from them) and is signed by the Holder's wallet. This signature provides proof that the Holder is the legitimate owner of the credentials and consented to their presentation, ensuring non-repudiation.
Decentralized Identifiers (DIDs)
OIDC4VP leverages Decentralized Identifiers (DIDs) as the foundational identifier for all parties. The Holder, Issuer, and Verifier each use a DID, which resolves to a DID Document containing public keys and service endpoints. This removes dependency on centralized identity providers and allows for interoperable, self-sovereign identity interactions across different systems.
JSON Web Token (JWT) & SD-JWT Formats
Credentials and presentations are encoded in standardized, interoperable formats. JWT-based Verifiable Credentials are common for simplicity. For advanced selective disclosure, the SD-JWT (Selective Disclosure JWT) format is used, which allows a Holder to disclose only specific JSON object properties from a signed JWT. This ensures the protocol works with existing OAuth 2.0 and OpenID Connect infrastructure.
Core Components and Roles
OpenID Connect for Verifiable Presentations (OIDC4VP) is a protocol that extends the OAuth 2.0 and OpenID Connect frameworks to enable the secure, standardized exchange of Verifiable Credentials and Verifiable Presentations over the web.
Holder
The entity (user or organization) that possesses one or more Verifiable Credentials and creates a Verifiable Presentation to share with a Relying Party. The Holder controls which credentials are shared and manages their private keys for signing presentations.
- Role: End-user, data owner.
- Key Action: Selects credentials, creates and signs presentations.
- Example: A user proving their age to a website using a digital driver's license.
Issuer
The authoritative entity that creates and cryptographically signs Verifiable Credentials for a Holder. The Issuer's signature provides the credential's authenticity and integrity.
- Role: Trusted authority, credential source.
- Key Action: Issues signed credentials to Holders.
- Example: A government agency issuing a digital passport credential or a university issuing a digital diploma.
Relying Party (Verifier)
The service or application that requests and verifies a Verifiable Presentation from a Holder. It validates the presentation's signature and the credentials within it to grant access or services.
- Role: Service provider, verifier.
- Key Action: Requests presentations, validates signatures and claims.
- Example: A financial service requiring proof of accredited investor status before allowing investment.
Authorization Server
The OAuth 2.0 component that authenticates the Holder and issues an Access Token. In OIDC4VP, this server is extended to understand requests for verifiable presentations and to facilitate the presentation exchange flow.
- Role: Authentication and token issuance.
- Key Action: Authenticates user, processes presentation requests, issues tokens.
- Protocol Extension: Implements the
presentation_definitionparameter.
Verifiable Presentation
A cryptographically verifiable data format, created by the Holder, that packages one or more Verifiable Credentials to satisfy a Relying Party's request. It is signed by the Holder to prove control over the credentials.
- Format: Typically a JWT or JSON-LD with Linked Data Proofs.
- Contents: Selected credentials, Holder's signature, proof of linkage.
- Purpose: Selective disclosure of verified attributes.
Presentation Definition
A machine-readable specification, defined by the Relying Party, that details the required credentials and claims it needs from the Holder. It is passed to the Authorization Server as part of the authorization request.
- Standard: Defined by the Presentation Exchange (DIF PE) specification.
- Content: Specifies credential types, required fields, and constraints.
- Function: Enables interoperability by standardizing request formats.
OIDC4VP vs. Traditional OpenID Connect
A technical comparison of the Verifiable Presentation extension against the core OpenID Connect standard for identity.
| Core Feature / Mechanism | OIDC4VP (OpenID for Verifiable Presentations) | Traditional OpenID Connect |
|---|---|---|
Primary Credential Type | W3C Verifiable Credentials (VCs) | OIDC ID Tokens (JWTs) |
Credential Issuer | Decentralized (e.g., Issuer DID) | Centralized Identity Provider (IdP) |
Holder Role | Active (Selects & Presents VCs) | Passive (Receives ID Token) |
Presentation Format | Verifiable Presentation (VP) | ID Token JWT |
Trust Anchor | Decentralized Identifier (DID) & Verifiable Data Registry | Pre-configured Trust in IdP (OAuth 2.0) |
Selective Disclosure | ||
Cryptographic Proof | Linked Data Proofs (e.g., EdDSA, BBS+) | JWT Signature (e.g., RS256, ES256) |
Primary Use Case | User-Centric Data Sharing & Portability | Federated Authentication & SSO |
Common Use Cases and Examples
OpenID Connect for Verifiable Presentations (OIDC4VP) enables secure, standardized identity verification across web and mobile applications. These examples illustrate its practical implementation for user-centric data sharing.
Decentralized Identity Wallets
OIDC4VP is the core protocol enabling user-controlled identity wallets (e.g., digital driver's licenses) to share Verifiable Credentials. Users can present cryptographically signed proofs of attributes (like age or residency) to a Relying Party without revealing their entire identity or using a central database.
- Example: A user proves they are over 21 to access a service by sharing a verifiable credential from their wallet, without showing their birthdate.
Passwordless & Phishing-Resistant Login
OIDC4VP enables strong authentication by replacing passwords with cryptographic proofs from a user's identity wallet. This creates a phishing-resistant login flow where the user proves control of a Decentralized Identifier (DID) and presents required credentials.
- Example: Logging into a financial service by scanning a QR code with a wallet app, which signs a challenge and presents a verified 'KYC Complete' credential.
Selective Disclosure & Data Minimization
A key feature of OIDC4VP is supporting selective disclosure, allowing users to share only the specific claims needed. This enforces the data minimization principle of GDPR and similar regulations.
- Example: Proving you are a resident of a specific country for tax purposes by presenting a credential containing only that claim, rather than a full passport document with extraneous personal data.
Enterprise Customer Onboarding (KYC)
Financial institutions and regulated platforms use OIDC4VP to streamline Know Your Customer (KYC) and onboarding. Customers can present reusable, verified credentials from trusted issuers, eliminating repetitive document submission.
- Process: A bank issues a Verifiable Credential after initial KYC. The customer can then present this credential via OIDC4VP to instantly onboard with partner fintech apps, with the bank's attestation.
Verifiable Academic & Professional Credentials
Educational institutions and certification bodies issue diplomas, degrees, and professional licenses as Verifiable Credentials. OIDC4VP allows graduates to present these directly to employers or other schools in a tamper-evident format.
- Example: A job applicant shares a verifiable university degree and professional certification from their digital wallet during an application, with the employer instantly verifying the issuer's signature and status.
Security and Privacy Considerations
OpenID Connect for Verifiable Presentations (OIDC4VP) extends the OAuth 2.0 and OpenID Connect framework to support the presentation of cryptographically verifiable credentials. This section details the core security and privacy mechanisms that define the protocol.
Selective Disclosure
A core privacy feature allowing a user to reveal only specific claims from a Verifiable Credential without exposing the entire document. This minimizes data exposure and supports data minimization principles. For example, a user can prove they are over 21 from a driver's license credential without revealing their exact birth date, address, or license number.
Holder Binding & Proof of Possession
Ensures that the presenter of a credential is its legitimate holder. OIDC4VP uses cryptographic proofs (like JSON Web Tokens with digital signatures) to bind the presentation to a key controlled by the user's wallet. This prevents credential theft and replay attacks, as the verifier can cryptographically confirm the presenter possesses the private key associated with the credential.
Presentation Definition & Authorization
The Relying Party (verifier) sends a machine-readable Presentation Definition specifying exactly which credentials and claims are required. This occurs during the OAuth authorization flow, ensuring the user consents to a specific, scoped request. This prevents scope creep and gives users clear context for what they are sharing, enhancing informed consent.
Decentralized Identifiers (DIDs)
OIDC4VP commonly uses Decentralized Identifiers as the user's identifier, replacing traditional centralized identifiers (like emails). DIDs are controlled by the user via their wallet, enabling self-sovereign identity. This architecture reduces dependency on central identity providers and limits correlation across different services, enhancing user privacy.
Verifier Authentication & Trust
The protocol requires the Relying Party to authenticate itself to the user's wallet, typically using its own DID or a pre-registered client ID. This allows the user's wallet to evaluate the verifier's trustworthiness before releasing any data. It prevents phishing by ensuring credentials are only presented to legitimate, authenticated verifiers.
Audit Trail & Non-Repudiation
Every Verifiable Presentation contains immutable cryptographic signatures from both the credential issuer and the holder. This creates a verifiable audit trail. The verifier can independently prove the authenticity and provenance of the data, providing non-repudiation. This is critical for regulatory compliance, KYC processes, and legal evidence.
Common Misconceptions About OIDC4VP
OpenID Connect for Verifiable Presentations (OIDC4VP) is a critical standard for decentralized identity, but its technical nature leads to widespread misunderstandings. This section clarifies the most frequent points of confusion.
OIDC4VP is not a blockchain protocol; it is an identity and authentication protocol built as an extension of the widely-used OAuth 2.0 and OpenID Connect (OIDC) standards. It defines how a Verifier can request and a Wallet can present cryptographically signed Verifiable Credentials (VCs) over standard HTTPS. While VCs can be issued based on blockchain-based Decentralized Identifiers (DIDs) and their proofs can be verified against a blockchain, the OIDC4VP flow itself operates at the application layer, independent of any specific ledger. Its primary role is to standardize the presentation layer for verifiable data, making it interoperable across different Trust Frameworks and underlying technologies.
Frequently Asked Questions (FAQ)
OpenID Connect for Verifiable Presentations (OIDC4VP) is a key standard for decentralized identity. These FAQs clarify its core concepts, use cases, and implementation details for developers and architects.
OIDC4VP (OpenID Connect for Verifiable Presentations) is a protocol specification that extends the widely-used OAuth 2.0 and OpenID Connect frameworks to enable the request and presentation of cryptographically verifiable credentials. It works by allowing a Relying Party (RP) to request specific claims from a user's Wallet, which responds with a Verifiable Presentation—a digitally signed package containing one or more Verifiable Credentials. This process uses standard OAuth flows, where the presentation acts as the ID Token, ensuring interoperability with existing web infrastructure while adding strong cryptographic proof and user control over data sharing.
Further Reading and Resources
OpenID Connect for Verifiable Presentations (OIDC4VP) is a specification that enables users to present cryptographically verifiable credentials using the familiar OAuth 2.0/OpenID Connect framework. Explore its core components and related standards below.
Get In Touch
today.
Our experts will offer a free quote and a 30min call to discuss your project.