Skip to content

Add security guidance for platform-specific Origins and DC API. - #761

Open
fkj wants to merge 4 commits into
mainfrom
fkj/646-add-platform-origin-sec-guidance
Open

Add security guidance for platform-specific Origins and DC API.#761
fkj wants to merge 4 commits into
mainfrom
fkj/646-add-platform-origin-sec-guidance

Conversation

@fkj

@fkj fkj commented Jul 19, 2026

Copy link
Copy Markdown
Member

I have only added the guidance to 1.1 so far, but I guess we should also add it to 1.0 as an errata.
This is purely clarification of existing expectations of the platforms.

This resolves #646.

Comment thread 1.1/openid-4-verifiable-presentations-1_1.md Outdated
Co-authored-by: Christian Bormann <chris.bormann@gmx.de>
Comment thread 1.1/openid-4-verifiable-presentations-1_1.md
Comment thread 1.1/openid-4-verifiable-presentations-1_1.md Outdated
Co-authored-by: Christian Bormann <chris.bormann@gmx.de>
@Sakurann

Copy link
Copy Markdown
Collaborator

WG call:
the goal is to make sure this PR is not factually wrong.
@martijnharing to review text in this PR to ensure assumptions about platform behavior is not off. (there is no iOS implementation to verify what is in this PR.)
@QZHelen would appreciate if you can approve this PR in addition to issue comment.
@fkj to open another issue to revise text about platforms to make it generic and future-proofing

@dpostnikov

Copy link
Copy Markdown
Collaborator

Outstanding task: @martijnharing to review text in this PR to ensure assumptions about platform behavior is not off. (there is no iOS implementation to verify what is in this PR.)


* The platform provides collision-resistant values when assigning Origins.
* The platform ensures that each application using the platform is assigned a unique Origin.
* The platform ensures that it transports the Origin value to the Wallet unmodified, such that values can be compared to the `expected_origins` using exact string comparison.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This last one only applies when it's not the platform generating the origin correct? If so, do we need to say that?

When any origin is generated (including by the platform), the generation and/or transportation of origin must be done in such a way that both the Wallet and the RP must be able to generate the (exact) same value for the origin.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Yes, or if the platform generates any kind of "seed" that is then used to generate the origin. The difficult part is writing this in a way that does not assume anything about the way the origin is obtained by/provided to the wallet/verifier.
You're right that this is more of a "it will not work" consideration than a security consideration, so we could consider just dropping it.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I dropped it in 3cf9b59.

@brentzundel

Copy link
Copy Markdown
Collaborator

Discussed in DCP WG call. Proposal is to remove the last line, as it add more confusion than guidance.

@fkj
fkj requested a review from martijnharing August 7, 2026 09:08
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.

Handling of origin in Native Mobile Platform App to App flows for DC API

7 participants