Skip to content

Conversation

@awoie
Copy link
Contributor

@awoie awoie commented May 19, 2025

This PR fixes #402

Also beautified CDDL (editorial)

@awoie awoie requested a review from adeinega May 20, 2025 14:41
Copy link
Collaborator

@jogu jogu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For info for others, this is different to the handover structure in 18013-7 annex b, but it's quite closely aligned with what we have for DC API. To me the difference looks like origin is replaced with client_id + response_uri, which seems reasonable.

Not 100% sure I'm a fan of the weird characters in the spec where the sha256 contents is shown as a string in the cbor diagnostics, but we have that for DC API and it seems to render fine so I guess it's okay.

Copy link
Contributor

@tplooker tplooker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@awoie awoie requested a review from andprian May 27, 2025 11:27
@awoie
Copy link
Contributor Author

awoie commented May 27, 2025

@andprian I updated the PR again to clarify that all referenced request parameters (also note that JAR says the Request Object contains authorization request parameters hence it is ok to refer to them as request parameters), i.e., nonce, client_id, response_uri, redirect_uri, have to be obtained from the authz request query params unless the request is signed and then the params have to obtained from the signed request object.

Copy link
Member

@c2bo c2bo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR looks fine and I quickly skimmed over the CBOR content and that looks good to me.

One thing that feels a bit weird is the asymmetry between the 2 session transcripts (DC API and non-DC API).

### `Handover` and `SessionTranscript` Definitions

#### Invocation via the Digital Credentials API
#### Invocation via Redirects
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please help bikeshed the title

Copy link
Contributor Author

@awoie awoie May 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any objections to using the term "invocation via redirects"? I vote for "Invocation via Redirects" since we use that terminology already.

Possible alternatives:

  • Invocation via Authorization Endpoint
  • Invocation via URL
  • Invocation via Vanilla OpenID4VP

OpenID4VPHandoverInfoBytes = bstr .cbor OpenID4VPHandoverInfo
OpenID4VPHandoverInfo = [
clientId,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Including clientId will break all the multi-auth cases, right? (at least without just 'trying all of them').

Essentially the same general problem we had with DC API until we removed it, no?

It's possible that just relying on responseUri (and remove clientId from here) solves this, otherwise we need to either communicate which clientId was used, or just say 'try them all'.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

multi-auth is currently not supported for the vanilla flows (only DC API), but yes it would break them.
That is one of the things that feel odd between DC API and vanilla flow right now to me.

@Sakurann
Copy link
Collaborator

Sakurann commented May 29, 2025

WG discussion:

  • merge this PR as-is.
    • this has been brought up in ISO SC17 WG10 mtg. comment about client id raised in that call was addressed and no objections were raised in that call regarding the direction in this PR.
    • happy to take more feedback from ISO, even if it comes after we merge this PR.
  • in a separate PR, add implementation considerations section that describes that in non-DC API flew, multi RP in one request is not supported and that RP might have to send multiple requests if it does not know which trust framework the wallet belongs to. @GarethCOliver will do a PR

@Sakurann Sakurann requested a review from GarethCOliver May 29, 2025 15:30
@Sakurann Sakurann merged commit a7d9162 into main Jun 2, 2025
2 checks passed
@Sakurann Sakurann added this to the Final 1.0 milestone Jun 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Define session transcript for OpenID4VP (without DC API) in OpenID4VP

10 participants