5. Verifiable Presentation compatibility¶
A Verifiable Presentation is data derived from one or more Verifiable Credentials, packaged by a holder in a way that allows the authorship of the data to be verified.
As with Verifiable Credential compatibility, these criteria apply to any Verifiable Presentation. They do not assume a Gaia-X ecosystem, the Gaia-X Ontology, SHACL, or a registry.
Verifiable Presentation compatibility reuses the applicable Verifiable Credential compatibility checks for the presentation envelope and adds requirements for holder binding and contained Verifiable Credentials.
A Verifiable Presentation is technically compatible only if it satisfies all applicable criteria in this chapter and every Verifiable Credential contained within it satisfies all applicable criteria of the Verifiable Credential compatibility chapter.
The verification method for every criterion in this chapter is Automated: conformity can be established entirely by a conformant software agent (validator, compliance engine or test suite), based on the artefact under assessment (here: the verifiable presentation) and the resources to which it resolves.
Because the criteria are ecosystem-neutral, the primary source cited for each criterion is the open standard that defines the relevant requirement. Where a Gaia-X deliverable adopts or further constrains the corresponding requirement, it is cited after the standard:
5.1 VP-1 Presentation envelope¶
The presentation envelope is verified using the corresponding signature and identity-resolution checks defined in VC-1 and VC-2, with the holder taking the role corresponding to the issuer.
5.1.1 VP-1.1 VC-JWT encoding of the presentation¶
Presentation encoding shall use VC-JWT, with the cryptographic proof constructed using JSON Web Signature (JWS), such that payload, header and signature can be verified for authenticity and integrity.
Source
W3C Verifiable Credentials Data Model v2.0; IETF RFC 7515 (JWS), RFC 7519 (JWT). Adopted by ICAM Document 25.11, 5.3.1 Encoding requirements, 5.5 Verifiable Presentations.
5.1.2 VP-1.2 Signature algorithm declaration¶
The alg property of the presentation shall be specified and its value shall comply with IETF RFC 7518 (JSON Web Algorithms).
Source
IETF RFC 7518 (JWA), RFC 7515 (JWS). Adopted by Architecture Document 3.1, 6.5 Verifying Gaia-X Credentials.
5.1.3 VP-1.3 Holder identity resolution¶
The identifier specified for the holder in the presentation shall use the did:web method and shall resolve over HTTPS to a well-formed DID document publishing a publicKeyJwk parameter or a jwks_uri resolving to a JSON Web Key Set (JWKS).
Source
W3C Decentralized Identifiers (DIDs) v1.0; IETF RFC 7517 (JWK). Adopted by ICAM Document 25.11, 4.4 DID Resolution, 4.4.1 Verification Method (JSON Web Key).
5.1.4 VP-1.4 Presentation signature verification¶
The JWS signature of the presentation shall verify against the key material resolved from the holder’s identity record, and the verification method used shall be listed in the resolved DID document.
Source
IETF RFC 7515 (JWS); W3C Decentralized Identifiers (DIDs) v1.0. Adopted by ICAM Document 25.11, 4.4 DID Resolution.
5.1.5 VP-1.5 Token validity period¶
Where the exp (expiration date) claim is present in the presentation, its value shall represent a time later than the time of verification; where the claim is absent, the check shall be skipped.
Source
IETF RFC 7519 (JWT), 4.1.4–4.1.5. Adopted by Architecture Document 3.1, 6.9.2.2 Verifying and Decoding JWT.
5.1.6 VP-1.6 Unique identifier¶
Each Verifiable Presentation shall carry a unique identifier.
Source
W3C Verifiable Credentials Data Model v2.0. Adopted by ICAM Document 25.11, 5.2.2 Identifiers.
5.2 VP-2 Holder binding¶
5.2.1 VP-2.1 Single keypair binding in self-sovereign identity deployments¶
In self-sovereign identity (SSI)-enabled ecosystems, all claims shall be bound to a single keypair.
The criterion applies where the holder identifier of the presentation also appears as the credentialSubject identifier of at least one contained credential. Otherwise, the criterion shall be reported as not applicable, and it shall not cause the presentation to fail.
Where the criterion applies, every contained credential whose credentialSubject identifies the holder shall carry exactly the holder identifier of the presentation envelope; that identifier shall resolve to a DID document designating a single authentication verification method; and that verification method shall be the one used to sign the presentation.
Source
ICAM Document 25.11, 4.4.1.1.1 Self-Sovereign Identity (SSI) Implementation
5.3 VP-3 Contained Verifiable Credentials¶
5.3.1 VP-3.1 Compatibility of every contained credential¶
Every Verifiable Credential contained in the presentation shall satisfy all applicable criteria of the Verifiable Credential compatibility chapter, namely VC-1.1 to VC-6.3.
The VP-3.1 criterion shall be reported as pass only if every contained credential is reported as pass. The compatibility report shall list the per-credential result keyed by the credential id.
Source
W3C Verifiable Credentials Data Model v2.0. Adopted by ICAM Document 25.11, 5.4 Verifiable Credentials, 5.5 Verifiable Presentations.
5.4 Summary of criteria¶
| ID | Requirement |
|---|---|
| VP-1.1 | VC-JWT encoding of the presentation |
| VP-1.2 | alg property per RFC 7518 |
| VP-1.3 | Holder did:web identity resolution |
| VP-1.4 | Presentation signature verification |
| VP-1.5 | JWT expiration check |
| VP-1.6 | Unique presentation identifier |
| VP-2.1 | Single keypair binding (SSI), where applicable |
| VP-3.1 | Every contained credential satisfies all applicable VC criteria (VC-1.1 to VC-6.3) |
A presentation that satisfies all applicable criteria in this chapter is eligible for a Proof of Compatibility issued under the conformity assessment scheme Gaia-X Verifiable Presentation Compatibility, as described in Proof of compatibility.