Skip to content

723 duplicate claims entry - #750

Merged
Sakurann merged 7 commits into
mainfrom
723-duplicate-claims-entry
Aug 3, 2026
Merged

723 duplicate claims entry#750
Sakurann merged 7 commits into
mainfrom
723-duplicate-claims-entry

Conversation

@c2bo

@c2bo c2bo commented Jun 29, 2026

Copy link
Copy Markdown
Member

Closes #723

Open question from the issue. SHOULD -> MUST?

@martijnharing

Copy link
Copy Markdown
Contributor

Alternatively to the solution proposed in this PR, what if we remove the restrictions on the RP and requirements on the wallet to check anything related to duplicates?
It feels like there isn't a direct security or privacy problem without those requirements / recommendations and it would mean we don't need to define what we mean exactly with duplicate.

@Sakurann Sakurann added this to the Final 1.1 milestone Jul 2, 2026
@fkj

fkj commented Jul 7, 2026

Copy link
Copy Markdown
Member

I agree with @martijnharing that it might be better to just remove this text. Is there a specific argument for this text to exist?

@paulbastian

Copy link
Copy Markdown
Contributor

Alternatively to the solution proposed in this PR, what if we remove the restrictions on the RP and requirements on the wallet to check anything related to duplicates? It feels like there isn't a direct security or privacy problem without those requirements / recommendations and it would mean we don't need to define what we mean exactly with duplicate.

Despite any personal opinion, removing the entire text about duplicate entries is likely a breaking change.

@paulbastian paulbastian left a comment

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.

I think it adds clarity while avoiding a breaking change.

@fkj fkj left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I'm OK with doing this to clarify without a breaking change, though it's still not clear to me why this text exists in the first place.

Comment thread 1.0/openid-4-verifiable-presentations-1_0.md Outdated
Comment thread 1.0/openid-4-verifiable-presentations-1_0.md Outdated
c2bo and others added 2 commits July 15, 2026 22:05
@c2bo
c2bo requested a review from jogu July 15, 2026 20:11
Comment on lines +778 to +781
: OPTIONAL. A non-empty array of objects as defined in (#claims_query) that specifies
claims in the requested Credential. Verifiers MUST NOT point to the same claim more than
once in a single query. Wallets SHOULD ignore such duplicate claim queries.
claims in the requested Credential. Verifiers MUST NOT include queries pointing to the same claim as identified
by the claims path pointer more than once, unless they are requesting different values for that claim.
If such duplicate claim queries are detected, Wallets SHOULD process the first occurrence and ignore duplicates.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I'm still not sure what this means for this case, does it mean:

claims = [
  { id = 1, path = [ "nationalities", 0 ] }, 
  { id = 2, path = [ "nationalities", null ] }
}

is treated as a duplicate, i.e. '2' is discarded?

The latest change causes a change in the behaviour for this query:

claims = [
  {  path = [ name ], values = [ oliver ] }, 
  {  path = [ name ], values = [ colette ] }
]

I think it's gone from 'ignore the 'collete' line' (in 1.0 final) to 'process that line but the result is a query that can never match a credential'.

I kind of feel like we're going the wrong direction down a rabbit hole, but I'm not sure what the right direction is.

My suspicion is the original text was really only trying to say that the second line here has no meaning:

claims = [
  {  path = [ name ] }, 
  {  path = [ name ] }
]

@martijnharing

Copy link
Copy Markdown
Contributor

Alternatively to the solution proposed in this PR, what if we remove the restrictions on the RP and requirements on the wallet to check anything related to duplicates? It feels like there isn't a direct security or privacy problem without those requirements / recommendations and it would mean we don't need to define what we mean exactly with duplicate.

Despite any personal opinion, removing the entire text about duplicate entries is likely a breaking change.

I'm not sure if it's actually a breaking change.

It would allow an RP to include a duplicate in the request, but I don't think that actually breaks anything.
If we consider that duplicate entry referred to exact duplicates (e.g. two path strings that are equal and no value elements that are different) then whether you ignore one of them or not doesn't make a difference.

@brentzundel

Copy link
Copy Markdown
Collaborator

WG discussion: let's try removing the lines as recommended by @martijnharing

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

@martijnharing martijnharing left a comment

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.

Proposed changing the changelog text, but not gating approval on that.

Comment thread 1.0/openid-4-verifiable-presentations-1_0.md Outdated
Comment thread 1.1/openid-4-verifiable-presentations-1_1.md Outdated
Co-authored-by: Martijn Haring <62745275+martijnharing@users.noreply.github.com>
Co-authored-by: Christian Bormann <chris.bormann@gmx.de>
@brentzundel

Copy link
Copy Markdown
Collaborator

@jogu the PR has been adjusted to match the direction the group felt was best during our last call.
Please review again.

@Sakurann

Copy link
Copy Markdown
Collaborator

@jogu please re-review text you commented on got removed with the new direction

@Sakurann
Sakurann merged commit bbf672f into main Aug 3, 2026
2 checks passed
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.

Clarify duplicate claims entry

7 participants