Skip to content

DIF Presentation Exchange

Presentation Exchange is a specification developed by the Decentralized Identity Foundation (DIF) that standardizes how verifiers request verified data from holders and how holders respond with proofs. It creates a common language for credential exchange, solving critical interoperability challenges in the verifiable credentials ecosystem.

Without standardization, each verifier would create custom protocols for requesting information from holders. Presentation Exchange addresses this by providing:

  1. A standard request format (Presentation Definition)
  2. A standard response format (Presentation Submission)
  3. Complex requirement expressions (Submission Requirements)
  4. Precise field identification (Input Descriptors)

This creates consistent user experiences across wallets and verifiers while reducing implementation complexity.

Presentation Exchange consists of four main components:

Presentation Definition is the request format specifying what proofs a verifier needs. It defines required credential types, fields, formats, and logical combinations.

Presentation Submission is the response format mapping provided credentials to requirements, clearly indicating how credentials satisfy the verifier’s request.

Input Descriptors define specific credential requirements within a Presentation Definition, using JSONPath expressions to precisely target fields for selective disclosure.

Submission Requirements provide logical operators for combining Input Descriptors, enabling complex credential combinations like “government ID OR (university ID AND address proof).”

  • Format Agnostic: Works with Verifiable Credentials, JWT, and other formats
  • Protocol Independent: Compatible with OpenID Connect, DIDComm, CHAPI, and more
  • Privacy-Preserving: Enables selective disclosure of specific fields
  • Flexible: Allows holders to choose from multiple acceptable credentials
  • Interoperable: Reduces custom protocols and facilitates system compatibility

Credential exchange using Presentation Exchange:

  1. Verifier creates a Presentation Definition
  2. Definition is sent to the holder
  3. Holder’s wallet processes requirements
  4. Holder selects satisfying credentials
  5. Holder creates a Presentation Submission
  6. Verifier validates the submission
sequenceDiagram
    participant Verifier
    participant Holder

    Verifier->>Holder: Presentation Definition
    Note over Holder: Selects credentials
    Holder->>Verifier: Presentation Submission
    Note over Verifier: Validates submission

Presentation Exchange is foundational to Vidos verification:

  • Authorizer: Generates Presentation Definitions based on policies and delivers them through OpenID4VP
  • Validator: Validates Presentation Submissions against Definitions, checking field requirements and logical combinations
  • Verifier: Processes submissions and performs cryptographic verification

This integration enables standardized, privacy-preserving verification workflows compatible with the broader verifiable credentials ecosystem.

Presentation Exchange integrates with:

  • OpenID4VP: Core component for expressing credential requirements
  • W3C Verifiable Credentials: Supports the VC data model
  • DIDs: Works with DID-based authentication
  • DIDComm: Definitions and submissions transport via DIDComm protocols

DIF Presentation Exchange standardizes credential requests and responses, enabling interoperable exchange across systems and protocols. By separating request format (Presentation Definition) from response format (Presentation Submission), it enables consistent, privacy-preserving verification workflows.

In Vidos, Presentation Exchange forms the foundation for standardized verification, ensuring compatibility with the broader verifiable credentials ecosystem.