Skip to content

Commit cde5064

Browse files
committed
Changes for final publication
Remove document history Update title "Status: Final" also needs to be added into the document header but this has to be done manually in the html.
1 parent 37721f1 commit cde5064

File tree

1 file changed

+1
-243
lines changed

1 file changed

+1
-243
lines changed

openid-4-verifiable-presentations-1_0.md

Lines changed: 1 addition & 243 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
%%%
2-
title = "OpenID for Verifiable Presentations - Editor's draft"
2+
title = "OpenID for Verifiable Presentations"
33
abbrev = "openid-4-vp"
44
ipr = "none"
55
workgroup = "OpenID Digital Credentials Protocols"
@@ -3537,245 +3537,3 @@ Copyright (c) 2025 The OpenID Foundation.
35373537
The OpenID Foundation (OIDF) grants to any Contributor, developer, implementer, or other interested party a non-exclusive, royalty free, worldwide copyright license to reproduce, prepare derivative works from, distribute, perform and display, this Implementers Draft, Final Specification, or Final Specification Incorporating Errata Corrections solely for the purposes of (i) developing specifications, and (ii) implementing Implementers Drafts, Final Specifications, and Final Specification Incorporating Errata Corrections based on such documents, provided that attribution be made to the OIDF as the source of the material, but that such attribution does not indicate an endorsement by the OIDF.
35383538

35393539
The technology described in this specification was made available from contributions from various sources, including members of the OpenID Foundation and others. Although the OpenID Foundation has taken steps to help ensure that the technology is available for distribution, it takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this specification or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any independent effort to identify any such rights. The OpenID Foundation and the contributors to this specification make no (and hereby expressly disclaim any) warranties (express, implied, or otherwise), including implied warranties of merchantability, non-infringement, fitness for a particular purpose, or title, related to this specification, and the entire risk as to implementing this specification is assumed by the implementer. The OpenID Intellectual Property Rights policy (found at openid.net) requires contributors to offer a patent promise not to assert certain patent claims against other contributors and against implementers. OpenID invites any interested party to bring to its attention any copyrights, patents, patent applications, or other proprietary rights that may cover technology that may be required to practice this specification.
3540-
3541-
# Document History
3542-
3543-
[[ To be removed from the final specification ]]
3544-
3545-
-30
3546-
3547-
* TBC
3548-
3549-
-29
3550-
3551-
* define mdoc session transcript for redirect-based oid4vp flow
3552-
* rename `verifier_attestations` parameter name to `verifier_info`
3553-
* make the `meta` parameter mandatory in DCQL query
3554-
* explicitly state that various arrays need to be non-empty
3555-
* clarify text about how encryption keys are obtained
3556-
* clarify how hashing works in transaction_data_hashes
3557-
* rework & expand privacy considerations section
3558-
* capitalize use of defined terms more consistently
3559-
* relax language in some cases that required wallets to always perform signature verification
3560-
* fix language implying `verifier_attestations` was mandatory
3561-
* try to make it clearer that direct_post.jwt builds on top of direct_post
3562-
* update pre-final specs section
3563-
* add IANA considerations for `encrypted_response_enc_values_supported`
3564-
* remove now unused reference to JARM
3565-
* move `verifier_attestations` IANA consideration to correct section
3566-
* fix title in 23220-2 ref
3567-
* add example of response encryption
3568-
* remove reference to CBOR encoding the OpenID4VPDCAPIHandoverInfo thumbprint
3569-
* fixed reference for DC API single/multi sign requests and made it clear what the protocol identifier is
3570-
* fix type_values example in W3C Verifiable Credential section
3571-
* fix an example that used now removed jwt_vp and ldp_vp
3572-
* fix description of invalid_request error
3573-
* add note that cross-device flow diagram doesn't show all parameters
3574-
* additions to & typo fixed in acknowledgements
3575-
3576-
-28
3577-
3578-
* rename `issuer_signed_alg_values` and `device_signed_alg_values` and add support for HMAC variants
3579-
* Replace the JARM `authorization_encrypted_response_enc` with a new `encrypted_response_enc_values_supported` that allows the client to specify an array of acceptable `enc` values for the JWE
3580-
3581-
-27
3582-
3583-
* rename `vp_formats` to `vp_formats_supported` in Verifier Metadata
3584-
* update the `vp_formats_supported` metadata to always be format specific, and explicitly define the structure for `mso_mdoc`, `jwt_vc_json` and `ldp_vc`.
3585-
* require fully-specified COSE and JOSE algorithms for `mso_mdoc` and `dc+sd-jwt` formats in `vp_formats_supported` metadata
3586-
* remove AnonCreds for now as we're lacking implementation experience
3587-
* clarify that client identifier prefix specific parameters go in the header in multi RP DC API requests
3588-
* wallets must verify `expected_origins` in signed requested over the Digital Credentials API
3589-
* add "SD-JWT VCLD" section to SD-JWT VC Credential Format appendix
3590-
* clarify rules around rejecting presentations that fail checks
3591-
* remove references to ISO 18013-7 due it referencing an older version of the VP specification
3592-
* specify value matching for mdocs via a reference to cbor-to-json
3593-
3594-
-26
3595-
3596-
* add SD-JWT VCDM (now called SD-JWT VC LD)
3597-
* add `verifier_attestations` to list of authorization parameters
3598-
* renamed "Client ID Scheme" to "Client Identifier Prefix", and updated metadata (`client_id_prefixes_supported`) and an example `error_description` to match
3599-
* add note that `iss` must be ignored if present in the request object
3600-
* added security considerations for value matching in DCQL
3601-
* require `kid` in JWE response header if present in client_metadata `jwks`
3602-
* added some more (non-exhaustive) privacy considerations with pointers to SD-JWT and OpenID4VCI
3603-
* add implementation consideration about pre-final specs
3604-
* remove DIF Presentation Exchange as a query language option
3605-
* Changes in the DCQL query parameters specific to W3C VCs and AnonCreds
3606-
* Introduce ability to present without key binding, including a new parameter `require_cryptographic_holder_binding` in the Credential Query
3607-
* Adapt usage of "Verifiable Presentation" to only refer to Presentations with Holder Binding and "Presentation" to refer to all types of credential presentations
3608-
* change the identifier for the ETSI trusted list `trusted_authorities` entry from `openid_fed` to `openid_federation`
3609-
* change openid_fed to openid_federation for Trusted Authorities Query
3610-
* remove JARM and response signing, using JWT directly for unsigned, encrypted responses, including changes to allow the client to indicate a set of acceptable `alg` values for the JWE using the `alg` value in the JWKS instead of the JARM `authorization_encrypted_response_alg`
3611-
* make consistent the use of prefixes in the client_id prefixing, defining new `openid_federation:` and `decentralized_identifier:` prefixes
3612-
* fix nonce computation for AnonCreds
3613-
* For w3c vc, DCQL `type_values` now matches against expanded type values
3614-
* For ISO mdoc, `doctype_value` is now mandatory in DCQL query `meta` parameter
3615-
* For SD-JWT VC, `vct_values` is now mandatory in DCQL query `meta` parameter
3616-
* For W3C VC, `type_values` is now mandatory in DCQL query `meta` parameter
3617-
* `purpose` element removed from DCQL `credential_sets`
3618-
* Add new DC API `openid4vp-v1-multisigned` protocol identifier for requests with JWS JSON Serialization
3619-
* Remove incorrect requirement for automatic registration when using OpenID Federation
3620-
* Change DCQL processing rules to allow the same credential to fulfil different queries
3621-
* Update specification to make DC API consistent with the rest of the specification
3622-
3623-
-25
3624-
3625-
* clarify value matching in DCQL
3626-
* clarify why requests using redirect_uri scheme cannot be signed
3627-
* add `trusted_authorities` to DCQL
3628-
* add note introducing cbor and cddl
3629-
* clarify DCQL case of `claims` and `claim_sets` being absent
3630-
* add language on client ID and nonce binding for ISO mdocs and W3C VCs
3631-
* for DC API, always use Origin for binding the response (e.g. in Key Binding JWT `aud` and sessionTranscript in mdoc)
3632-
* clarify the behavior is not to sign when authorization_signed_response_alg is omitted
3633-
* add a note on the use of apu/apv in the JWE header of encrypted responses
3634-
* add x509_hash client identifier scheme
3635-
* remove x509_san_uri client identifier scheme
3636-
* clarify that `dcql_query` and `presentation_definition` are passed as JSON objects (not strings) in request objects
3637-
* support returning multiple presentations for a single dcql credential query when requested using `multiple`
3638-
* Added support for multiple Client Identifiers and corresponding Request Signature to the DC API profile
3639-
3640-
-24
3641-
3642-
* add mdoc specific `intent_to_retain` mechanism, using the definition from 18013-5
3643-
* require `typ` value in request object to be `oauth-authz-req+jwt`
3644-
* add `SessionTranscript` requirements
3645-
* use claims path pointer for mdoc based credentials
3646-
3647-
-23
3648-
3649-
* fixed percent-encoding of URI examples
3650-
* fixed an example that used 'client' where 'wallet' is more appropriate
3651-
* make SIOP example request/response consistent with each other
3652-
* make example request and example SD-JWT key binding JWT consistent
3653-
* add note that there are a choice of encryption JWE algorithms available, including the HPKE draft
3654-
* add `transaction_data` & `dcql_query` to list of allowed parameters in W3C Digital Credentials API appendix
3655-
* change Credential Format Identifier `vc+sd-jwt` to `dc+sd-jwt` to align with the media type in draft -06 of [@I-D.ietf-oauth-sd-jwt-vc] and update `typ` accordingly in examples
3656-
* remove references to the openid4vci credential format section
3657-
* clarified what profiling OID4VP means
3658-
* moved credential format specific DCQL parameters to the annex
3659-
* generalized W3C Digital Credentials API references
3660-
* changed response mode value for the OID4VP over the DC API
3661-
* updated to PE ver 2.1.1 (used to be 2.0.0)
3662-
3663-
-22
3664-
3665-
* Introduced the Digital Credentials Query Language
3666-
* add transaction data mechanism
3667-
* remove `client_id_scheme` and turn it into a prefix of the `client_id`; this addresses a security issue with the previous solution
3668-
* Clarified what can go in the `client_metadata` parameter
3669-
* Fixed #227: Enabled non-breaking extensibility.
3670-
* Fixed #383: Completed IANA Considerations section.
3671-
3672-
-21
3673-
3674-
* removed `client_metadata_uri` authorization parameter
3675-
* added how OpenID4VP request/response can be used over the browser API
3676-
* remove path_nested description from Response Parameters section and move it into W3C VC Annex
3677-
* fix indentation of examples
3678-
* added references to ISO/IEC 23220 and 18013 documents
3679-
* added `post` request method for Request URI
3680-
* Added IETF SD-JWT VC profile
3681-
* Added `wallet_unavailable` error
3682-
3683-
-20
3684-
3685-
* added "verifier_attestation" client id scheme value
3686-
3687-
-19
3688-
3689-
* added "x509_san_uri" and "x509_san_dns" client id scheme value
3690-
3691-
-18
3692-
3693-
* editorial update based on the 45 days review period prior to the Vote for proposed Second Implementer’s Draft
3694-
3695-
-17
3696-
3697-
* direct_post response mode uses state to identify response
3698-
* Added sequence diagrams for same and cross device flows to overview section
3699-
3700-
-16
3701-
3702-
* Added `client_id_scheme` parameter
3703-
* Defined that single VP Tokens must not use the array syntax for single Verifiable Presentations
3704-
3705-
-15
3706-
3707-
* Added definition of VP Token
3708-
* Editorial improvements for better readability (restructured request and response section, consistent terminology, and casing)
3709-
3710-
-14
3711-
3712-
* added support for signed and encrypted authorization responses based on JARM
3713-
* clarified response encoding for authorization responses
3714-
* moved invocation/just-in-time client metadata exchange/AS Discovery sections from siopv2 to openid4vp
3715-
3716-
-13
3717-
3718-
* added scope support
3719-
3720-
-12
3721-
3722-
* add Cross-Device flow (using SIOP v2 text)
3723-
* Added Client Metadata Section (based on SIOP v2 text)
3724-
3725-
-11
3726-
3727-
* changed base protocol to OAuth 2.0
3728-
* consolidated the examples
3729-
3730-
-10
3731-
3732-
* Added AnonCreds example
3733-
* Added ISO mobile Driving License (mDL) example
3734-
3735-
-09
3736-
3737-
* added support for passing presentation_definition by reference
3738-
* added description how to request credential issued by a member of a federation
3739-
3740-
-08
3741-
3742-
* reflected editorial comments received during pre-implementer's draft review period
3743-
3744-
-07
3745-
3746-
* added text on other credential formats
3747-
* fixed inconsistency in security consideration regarding nonce
3748-
3749-
-06
3750-
3751-
* added additional security considerations
3752-
* removed support for embedding Verifiable Presentations in ID Token or UserInfo response
3753-
* migrated to Presentation Exchange 2.0
3754-
3755-
-05
3756-
3757-
* moved presentation submission parameters outside of Verifiable Presentations (ID Token or UserInfo)
3758-
3759-
-04
3760-
3761-
* added presentation submission support
3762-
* cleaned up examples to use `nonce` & `client_id` instead of `vp_hash` for replay detection
3763-
* fixed further nits in examples
3764-
* added and reworked references to other specifications
3765-
3766-
-03
3767-
3768-
* aligned with SIOP v2 spec
3769-
3770-
-02
3771-
3772-
* added `presentation_definition` as sub parameter of `verifiable_presentation` and VP Token
3773-
3774-
-01
3775-
3776-
* adopted DIF Presentation Exchange request syntax
3777-
* added security considerations regarding replay detection for Verifiable Credentials
3778-
3779-
-00
3780-
3781-
* initial revision

0 commit comments

Comments
 (0)