openid / openid/OpenID4VCI

Type definition of `expected_origins` clashes with IAE endpoint URL

Open
#672 4 comments 0 reactions 1 assignee View on GitHub

@awoie is already working on this.

Since Dec 18, 2025.

iae pending close priority
Dominant language
No language data
Stars
125
Forks
41
PR merge metrics
No merged PRs in 30d

Description

For the IAE flow, we are using the IAE endpoint URL for the expected_origins for signed requests. The definition of expected_origins is that it contains Origins, not arbitrary URLs. OID4VP implementations might have issues with validating the value if it contains a request URL but an Origin value is expected.

Potential solutions:

  1. (clean but potentially duplication) use a different field than expected_origins, e.g., expected_urls. This approach might need to require more spec changes and duplication of some parts of OID4VP in OID4VCI.
  2. (clean but possibly same security concerns as 3.) use derived origin for expected_origins as proposed in this PR https://github.com/openid/OpenID4VCI/pull/602. This approach loses some precision which might have an impact on security.
  3. (ugly but quick) Just say that in this case expected_origins can contain arbitrary URLs including path and query string. Some implementations might cut the non-Origin parts of the URL if they share code paths with DC API handling. Not sure if this could lead to some form of mix-up attack if a host (or Origin) is serving multiple issuer services.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.