Loading vLEI.wiki
Fetching knowledge base...
Fetching knowledge base...
This comprehensive explanation has been generated from 176 GitHub source documents. All source documents are searchable here.
Last updated: October 7, 2025
This content is meant to be consumed by AI agents via MCP. Click here to get the MCP configuration.
Note: In rare cases it may contain LLM hallucinations.
For authoritative documentation, please consult the official GLEIF vLEI trainings and the ToIP Glossary.
A presentation exchange is a protocol-defined process by which authenticatable information is exchanged between a Discloser (who presents one or more ACDCs) and a Disclosee (who receives them), forming a directed acyclic graph (DAG) of chained credentials that enables disclosure of claims while maintaining cryptographic .
A presentation exchange represents the formal mechanism within the KERI/ACDC ecosystem through which verifiable credentials are disclosed from one party to another. Unlike simple data transmission, presentation exchanges establish cryptographically verifiable relationships between credentials through a directed acyclic graph (DAG) structure, ensuring that disclosed information maintains its authenticity chain back to authoritative issuers.
The process accomplishes several critical objectives:
Presentation exchanges are used whenever a credential holder needs to prove claims to a verifier, whether for authentication, authorization, or attestation purposes. This includes scenarios such as:
Every presentation exchange involves two primary roles:
Discloser: The party that controls and presents the ACDC credentials. The Discloser may or may not be the original Issuer of the credentials being presented. In many scenarios, the Discloser is the Issuee (subject) of the credential, presenting it to prove claims about themselves.
Disclosee: The party that receives the presented credentials and performs verification. The Disclosee acts as a verifier, validating cryptographic signatures, checking credential status, and evaluating the credential chain against their trust policies.
The presentation exchange process follows a structured sequence that ensures cryptographic integrity while supporting flexible disclosure patterns:
The Disclosee initiates the exchange by requesting specific credentials or claims. This request may specify:
The request is typically transmitted using the IPEX (Issuance and Presentation EXchange) protocol, which provides a uniform mechanism for both credential issuance and presentation.
The Discloser selects appropriate credentials from their credential store that satisfy the Disclosee's requirements. This involves:
A critical aspect of presentation exchanges is that the set of disclosed ACDCs MUST be chained together, forming a directed acyclic graph. This DAG structure:
For example, in the vLEI ecosystem, an ECR credential presentation might include:
e (edges) sectionsThis DAG structure allows the Disclosee to verify not just the presented credential, but the entire chain of authority back to the root trust anchor (GLEIF in the vLEI case).
The Discloser determines the appropriate disclosure level based on:
Disclosure levels include:
Compact Disclosure: Only SAIDs are revealed, providing minimal information leakage while allowing the Disclosee to verify credential structure and relationships.
Partial Disclosure: Some field maps are fully disclosed while others remain as SAIDs, enabling progressive revelation as trust develops.
Selective Disclosure: Specific attributes from selectively disclosable sets are revealed while others remain blinded, supporting privacy-preserving presentations.
Full Disclosure: Complete credential details are revealed, typically after contractual protections are established.
The Discloser signs the presentation using their AID's current authoritative keys. This signature:
In multi-signature scenarios, the presentation may require signatures from multiple parties to satisfy threshold requirements.
The presentation is transmitted using the IPEX protocol, which provides:
IPEX messages include:
The Disclosee performs comprehensive verification:
Cryptographic Verification:
Credential Status Verification:
Trust Chain Verification:
Schema Validation:
Based on verification results, the Disclosee makes a decision:
The Disclosee may respond with:
Presentation exchanges rely on several cryptographic mechanisms:
Digital Signatures: All credentials in the presentation MUST be signed by their respective issuers using CESR-encoded signatures. The Discloser MUST also sign the presentation itself to prove control over the presented credentials.
SAID Integrity: Every field map in an ACDC includes a SAID that cryptographically binds the content. During presentation, the Disclosee MUST verify that:
Key State Verification: The Disclosee MUST verify the Discloser's key state by:
Chain Integrity: The DAG of chained credentials MUST maintain cryptographic integrity through:
Presentation exchanges must account for temporal factors:
Credential Validity Periods: Credentials include issuance timestamps (dt field) and may have expiration dates. The Disclosee MUST verify that:
Key State Synchronization: The Discloser and Disclosee may have different views of key state if KEL updates have not fully propagated. The Disclosee SHOULD:
Revocation Checking: Credential status may change between presentation preparation and verification. The Disclosee MUST:
Replay Attack Protection: Presentations may include timestamps or nonces to prevent replay attacks, particularly in authentication scenarios. The Disclosee SHOULD:
Presentation exchanges must handle various error conditions:
Verification Failures:
Missing Credentials:
Trust Policy Violations:
Network Failures:
Authentication Scenario: A user presents an OOR (Official Organizational Role) credential to access a corporate system:
Authorization Scenario: A Legal Entity authorizes a QVI to issue ECR credentials:
Graduated Disclosure Scenario: A credential holder progressively reveals information:
Minimize Information Disclosure: Always use the most compact disclosure level that satisfies the Disclosee's requirements. Start with compact disclosure and progressively reveal information only as needed.
Verify Complete Chains: Never accept a credential in isolation. Always verify the complete DAG of chained credentials back to a trusted root authority.
Check Revocation Status: Always query TEL registries at verification time. Cached status information may be stale.
Implement Proper Error Handling: Provide clear error messages that help diagnose verification failures without leaking sensitive information.
Use Contractual Protections: For sensitive information, establish chain-link confidentiality agreements before full disclosure.
Maintain Audit Trails: Log all presentation exchanges for compliance and debugging purposes, including verification results and any errors encountered.
Support Multiple Disclosure Levels: Implement support for compact, partial, selective, and full disclosure to enable flexible privacy-preserving presentations.
Validate Edge Operators: Ensure that credential chains satisfy the appropriate edge operators (I2I, DI2I, NI2I) according to your trust policies.
IPEX Protocol Integration: Presentation exchanges are typically implemented using the IPEX protocol, which provides standardized message formats and exchange patterns. Implementations should:
KERI Infrastructure Integration: Presentation exchanges depend on KERI infrastructure components:
TEL Registry Integration: Credential status verification requires integration with TEL registries:
Schema Registry Integration: Credential verification requires access to schema definitions:
Wallet Integration: For user-facing applications, presentation exchanges integrate with digital wallets:
Trust Policy Integration: Verifiers must integrate presentation verification with their trust policies:
When implementing presentation exchanges, the DAG structure is mandatory, not optional. Every presentation MUST include all credentials in the chain from the presented credential back to a root of trust. Implementations must:
SAID verification can be computationally expensive for large credentials with many nested field maps. Optimize by:
Credential status verification requires querying TEL registries, which introduces network latency and potential failure points:
Verifying signatures requires resolving the signer's current key state from their KEL:
Implementing graduated disclosure requires careful state management:
Presentation exchanges can fail for many reasons. Provide clear error messages:
Some credentials require multiple signatures (e.g., Legal Entity credentials with multiple LARs):
Credentials must conform to their declared schemas:
Implement privacy-preserving features:
Thoroughly test presentation exchange implementations:
When integrating presentation exchanges into existing systems: