A Verifiable Presentation (VP) is a cryptographically secured package of one or more Verifiable Credentials issued to a holder, which is presented to a verifier to prove specific claims. It is a core data structure in the W3C Verifiable Credentials Data Model and enables selective disclosure, where the holder can choose which credentials and which specific attributes within them to reveal. The presentation itself is signed by the holder, providing cryptographic proof of its origin and integrity, ensuring the data has not been altered since it was issued or presented.
Verifiable Presentation
What is a Verifiable Presentation?
A Verifiable Presentation is a tamper-evident data format used in decentralized identity systems to share and prove claims about an entity.
The primary purpose of a Verifiable Presentation is to facilitate trust in a decentralized manner. Instead of relying on a central database, a verifier can trust the claims because they are cryptographically linked to the issuer's Decentralized Identifier (DID) and the holder's proof. Common use cases include proving age without revealing a full birth date, demonstrating professional qualifications for employment, or providing KYC information to a financial service. The presentation acts as a secure, portable container for credentials, separate from the issuing authority.
Technically, a VP is a JSON-LD or JWT-formatted object containing metadata, the presented credentials (or proofs of their possession), and the holder's digital signature. It includes a proof section that specifies the cryptographic suite used (e.g., Ed25519Signature2020) and links to the holder's public key. This allows the verifier to check the signature against the holder's DID Document, confirming the presentation was genuinely created by the claimed holder and that the contained credentials are valid and unrevoked.
A key innovation of Verifiable Presentations is Selective Disclosure. Using techniques like BBS+ signatures or zero-knowledge proofs (ZKPs), a holder can prove a statement derived from a credential (e.g., "I am over 21") without revealing the underlying credential data (the exact birth date) or other unrelated attributes. This enhances privacy and minimizes data exposure, adhering to the principle of data minimization. The presentation can also include credentials from multiple, unrelated issuers, aggregated into a single, verifiable package.
In the broader architecture of Self-Sovereign Identity (SSI), the Verifiable Presentation is the final step in the credential lifecycle—issuance, holding, and presentation. It enables peer-to-peer, cryptographically verifiable interactions without intermediaries. When a verifier receives a VP, their system performs several checks: verifying the holder's signature, checking each credential's issuer signature and status (e.g., against a revocation registry), and ensuring the credentials satisfy the requested policy. This creates a robust, interoperable framework for trusted digital interactions across the web.
Key Features of a Verifiable Presentation
A Verifiable Presentation is a cryptographically secured data structure that bundles and presents one or more Verifiable Credentials from a holder to a verifier. Its core features ensure the authenticity, integrity, and selective disclosure of the presented claims.
Cryptographic Proof
The presentation is secured by a digital signature or zero-knowledge proof created by the holder. This proof verifies that:
- The holder legitimately possesses the credentials.
- The presentation has not been tampered with.
- The credentials were issued by the stated issuer.
Selective Disclosure
A holder can reveal only specific claims from a credential without exposing the entire document. This is achieved through techniques like:
- BBS+ Signatures: Prove individual attributes from a signed credential.
- Zero-Knowledge Proofs (ZKPs): Prove a statement (e.g., 'I am over 21') without revealing the underlying data (your birth date).
Holder Binding
The presentation cryptographically binds the credentials to the specific holder (subject) who is presenting them. This prevents credential theft and replay attacks, ensuring that only the rightful owner can generate a valid presentation. Binding is typically achieved by having the holder sign the presentation with their Decentralized Identifier (DID).
Presentation Request & Policy
Presentations are often created in response to a Presentation Request from a verifier. This request defines a presentation policy, specifying:
- Which credential types are required.
- What specific claims must be disclosed.
- Any constraints on the issuing DID or issuance date.
Tamper-Evident Structure
The data structure itself is designed to be tamper-evident. Any unauthorized modification to the presentation or its embedded credentials will invalidate the cryptographic proof. This ensures the verifier can trust the data's integrity from issuance to presentation.
Interoperability (W3C Standard)
Standardized formats like the W3C Verifiable Presentation data model ensure interoperability across different systems, issuers, and verifiers. This allows credentials from one ecosystem (e.g., educational) to be verified in another (e.g., employment) without custom integration.
How a Verifiable Presentation Works
A technical breakdown of the process for creating, sharing, and verifying a Verifiable Presentation (VP) in a decentralized identity system.
A Verifiable Presentation is a cryptographically secure package, typically in JSON-LD or JWT format, that a holder (user) presents to a verifier (relying party) to prove certain claims about themselves. It works by combining one or more Verifiable Credentials (VCs) with a proof of control, demonstrating the holder possesses the associated Decentralized Identifiers (DIDs). The core mechanism involves the holder creating a presentation object, selectively disclosing credentials, and signing the entire package with their private key, which corresponds to the public key listed in their DID document.
The workflow follows a specific sequence: first, an issuer (like a government or university) creates and signs a Verifiable Credential for the holder. When needed, the holder retrieves these VCs from their digital wallet. To create a VP, the holder constructs a new data structure that includes the relevant VCs (or selective, zero-knowledge proofs derived from them), a specification of the presentation's purpose (the challenge), and a cryptographic signature. This signature is the critical element that proves the presenter is the legitimate subject of the credentials and is acting in this specific interaction.
Upon receiving the VP, the verifier performs a multi-step verification process. This includes: (1) checking the VP's cryptographic signature against the holder's DID document, (2) verifying the signatures on each embedded VC against the respective issuer's DID document, (3) validating that all credentials are unexpired and not revoked (often by checking a status registry or revocation list), and (4) ensuring the credentials satisfy the requested policy. Only if all checks pass is the presentation considered valid and the claims accepted.
Advanced presentations can use zero-knowledge proofs (ZKPs) and selective disclosure to enhance privacy. Instead of presenting an entire credential, a holder can generate a cryptographic proof that they possess a credential meeting specific criteria (e.g., "is over 21") without revealing the credential's full contents or its unique identifier. This is often implemented using BBS+ signatures or similar ZKP schemes, allowing for minimal and targeted data sharing, which is a foundational principle of Self-Sovereign Identity (SSI).
In practice, this process is orchestrated by protocols like OpenID for Verifiable Credentials (OIDC4VC) or W3C Verifiable Credentials API, which standardize the message flows between wallets and verifiers. For example, a verifier might send a Presentation Request specifying required credential types and fields. The user's wallet then complies, creates the signed VP, and returns it, enabling seamless yet secure interactions for scenarios like age verification, professional licensing checks, or access to gated services without relying on a central authority.
Verifiable Presentation
A standardized format for packaging and sharing one or more Verifiable Credentials with a verifier.
A Verifiable Presentation (VP) is a cryptographically secure data structure, defined by the W3C Verifiable Credentials Data Model, that allows a holder (e.g., a user) to present one or more Verifiable Credentials (VCs) to a verifier. It serves as a tamper-evident container, providing proof of the holder's control over the presented credentials and, optionally, proof of the holder's identity. The presentation itself is digitally signed, typically using a Decentralized Identifier (DID) and associated cryptographic keys, ensuring the data's integrity and origin.
The core components of a Verifiable Presentation include the @context and type fields for semantic definition, a verifiableCredential array containing the actual credentials (which may be embedded or referenced by URL), and a proof section containing the cryptographic signature. A key function of the VP is selective disclosure, where the holder can choose to reveal only specific claims from a credential or prove statements about the data (e.g., proving one is over 21 without revealing their exact birthdate) using techniques like zero-knowledge proofs or BBS+ signatures.
Verifiable Presentations are fundamental to user-centric identity and privacy-preserving interactions. They enable scenarios like logging into a website with a credential from a government issuer, proving professional accreditation for a job application, or verifying age for a purchase—all without relying on a central authority. The verifier can cryptographically validate the signatures on both the presentation and the enclosed credentials, establishing trust in the data's authenticity without needing to contact the original issuer for each transaction.
Common Use Cases and Examples
A Verifiable Presentation is a cryptographically signed package of Verifiable Credentials presented by a holder to a verifier. It proves ownership and control of the credentials without revealing unnecessary data.
Selective Disclosure & Privacy
A holder can create a presentation that reveals only specific claims from a credential. For example, to prove you are over 21, you can present a credential from a driver's license but only disclose the birth date claim, not your name or address. This is enabled by zero-knowledge proofs (ZKPs) or BBS+ signatures, minimizing data exposure.
Portable Professional Credentials
A developer can hold a Verifiable Credential for a programming certification. When applying for a job, they present it to a potential employer. The employer's system verifies the issuer's DID, the credential's integrity, and that it hasn't been revoked (e.g., by checking a revocation registry), creating a trustless, portable resume.
Know Your Customer (KYC) & Compliance
After completing KYC with a bank, a user receives a Verifiable Credential. They can then present this credential to other regulated services (like a crypto exchange) to satisfy KYC requirements without repeating the process. The presentation proves the original verification is valid and current, streamlining compliance across platforms.
Physical Access & Event Ticketing
An event ticket issued as a Verifiable Credential can be presented at the venue via a QR code. The gate scanner (verifier) validates the presentation's signature, checks the issuer's public key, and confirms the ticket hasn't been used (via a nonce or revocation check). This prevents forgery and enables secure transfer of digital tickets.
Cross-Border Travel & Digital Passports
A travel authorization or vaccination record issued by a government can be presented at border control. The border agent's system verifies the presentation, confirming the credential was issued by a trusted authority and that the data (e.g., passport number, vaccination status) is authentic and unaltered, facilitating faster, more secure border processes.
Security and Privacy Considerations
A Verifiable Presentation (VP) is a cryptographically secure wrapper for one or more Verifiable Credentials, enabling selective disclosure and proof of holder control. This section details the core security properties and privacy-enhancing features of VPs.
Holder Binding & Proof of Possession
A Verifiable Presentation must cryptographically prove it was created by the legitimate holder of the credentials. This is achieved through a Holder Binding mechanism, where the presenter signs the VP with a private key they control. This Proof of Possession prevents credential theft and replay attacks, as a stolen credential cannot be presented without the holder's key.
Selective Disclosure & Data Minimization
VPs enable Selective Disclosure, a critical privacy principle. The holder can reveal only specific claims from a credential without exposing the entire document. Techniques include:
- Zero-Knowledge Proofs (ZKPs): Proving a claim (e.g., age > 21) without revealing the exact birth date.
- Predicate Proofs: Demonstrating a credential satisfies a condition.
- Derived Presentations: Creating a new VP with a subset of attributes. This minimizes data exposure and limits correlation.
Presentation Nonce & Replay Protection
To prevent attackers from recording and reusing a VP, verifiers include a unique, time-bound nonce (number used once) in their presentation request. The holder must incorporate this nonce into their VP signature. This ensures the presentation is fresh and created specifically for that interaction, thwarting replay attacks where a valid VP is submitted multiple times.
Credential Integrity & Revocation Checks
The verifier must validate the integrity and status of all credentials within a VP. This involves:
- Verifying the cryptographic signatures of the issuing authorities on each Verifiable Credential.
- Checking the credential's revocation status via a registry, status list, or accumulator to ensure it hasn't been revoked.
- Validating the VP's own signature from the holder. Failure at any step invalidates the entire presentation.
Verifier Authentication & Trust Frameworks
Privacy is bidirectional. Before presenting sensitive data, the holder should authenticate the verifier. This occurs within a Trust Framework that defines the rules for issuance, presentation, and verification. The holder's wallet or agent checks the verifier's DID and may require the verifier to present its own credentials, ensuring data is only shared with authorized and legitimate parties.
Correlation Resistance & Unlinkability
A key privacy goal is preventing different presentations from being linked to the same holder. Correlation-resistant VPs use techniques like:
- Unique, ephemeral identifiers (DIDs) for each interaction.
- ZKPs that reveal only the necessary predicate.
- Avoiding the consistent use of public keys or identifiers across sessions. This protects user anonymity across different verifiers and services.
Verifiable Credential vs. Presentation
A comparison of the core components and functions of a Verifiable Credential (VC) and a Verifiable Presentation (VP).
| Feature | Verifiable Credential (VC) | Verifiable Presentation (VP) |
|---|---|---|
Primary Function | A digital, cryptographically signed attestation of claims about a subject (e.g., a person). | A wrapper package used to present one or more VCs to a verifier. |
Core Components | Issuer DID, Subject DID, Claims, Issuer signature, Metadata. | Holder DID, Verifiable Credential(s), Holder signature (optional), Presentation metadata. |
Data Provenance | Signed by the credential issuer (e.g., a university). | Can be signed by the holder to prove control and consent. |
Selective Disclosure | Supports it via cryptographic proofs (e.g., BBS+ signatures). | The mechanism for revealing specific claims from a VC without showing the entire credential. |
Holder's Role | Subject and recipient of the credential. | Controller who presents the credential(s) to a verifier. |
Verifier's Action | Validates the issuer's signature and credential status. | Validates the VP structure, all contained VC signatures, and the holder's signature if present. |
Example | A digital driver's license issued by the DMV. | Showing your driver's license (VC) to a bartender, optionally hiding your address. |
Frequently Asked Questions (FAQ)
A Verifiable Presentation (VP) is a crucial component of decentralized identity systems, allowing users to share verified claims with verifiers. These FAQs address common questions about its structure, security, and use cases.
A Verifiable Presentation (VP) is a cryptographically signed data format that packages one or more Verifiable Credentials for presentation to a verifier. It works by allowing a holder (the user) to selectively disclose credentials from an issuer, proving their authenticity without revealing unnecessary personal data. The presentation itself is signed by the holder, providing cryptographic proof that they consented to share the data. This mechanism is fundamental to Self-Sovereign Identity (SSI) and Decentralized Identity (DID) architectures, enabling privacy-preserving verification in applications like KYC, access control, and credential verification.
Get In Touch
today.
Our experts will offer a free quote and a 30min call to discuss your project.