Skip to content

Adding a version to the protocol identifier, and making it a URN #363

@timcappalli

Description

@timcappalli

The W3C Digital Credentials API specification will have a registry. In this registry, protocols will be normatively mapped to their respective specifications.

In the API itself, the protocol identifier is passed in the request as the protocol field, currently: openid4vp.

In #326, we've been discussing how two types of requests (signed vs unsigned) may want to have different protocol identifiers, as the top level contents of the request differ significantly. So having a type appended to the identifier can help (ex: openid4vp-signed).

One thing that is missing is the protocol version. When we inevitably end up with different versions of the specification, the protocol identifier needs to accurately represent the request payload. One can imagine sending two versions of the same request in the event the user only has a wallet that speaks an older version of the protocol.

To support both a version number (this issue) and request type (#326), I've proposed that the DC API use URNs for protocol identifiers: w3c-fedid/digital-credentials/issues/191.

Example for a signed request v1.0: urn:openid:spec:openid4vp:v1.0:signed.

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions