-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
About the optionality of the "kid" field in JWT-formatted VCs/VPs #31
Comments
For what it's worth, while the OpenID Connect spec makes inclusion of the Do you agree with this suggestion, @Sakurann ? |
Yes, requiring kid in the header makes sense. My question is, should kid be always mandated or only when iss is a DID? For DID,, I think realistically, both relative and absolute DID URLs should be allowed, accompanied by a caveat that "relative DID URL is more recommended from a security perspective and implementations using absolute DID URLs should consider migrating to relative ones". |
@Sakurann at this point, we are forced to define all paths.... ^ AFAIK, uses the SCITT work uses So now we are going to need to define both... |
PR #153 |
Could this claim about relative URLs be expanded upon? What makes a relative URL more secure? The lack of context and inability to make the |
The issue was discussed in a meeting on 2023-09-14
View the transcript6.9. About the optionality of the "kid" field in JWT-formatted VCs/VPs (issue vc-jose-cose#31)See github issue vc-jose-cose#31. Michael Jones: looks similar to a previous issue, but this one is actually addressed by a PR.
|
This was addressed by PR #153 |
https://www.w3.org/TR/vc-data-model/#jwt-encoding shows:
I'd like some clarification on the optionality of the "kid" field. My guess is that VCs/VPs are trying to be generic regarding issuers/holders, allowing for URIs, which precludes the possibility of giving any more details about how the "kid" field should be used. Is that right?
I'm coming from a DID-centric ecosystem, and in that scenario it seems that there's no reason not to set the "kid" field on a JWT-formatted VC/VP to the DID fragment URL of the specific key used to sign. From w3c/vc-data-model#914 I understand that it would still be necessary to tie the "kid" to the "iss" field, but that seems fine.
As far as I can tell, if the "kid" field is missing, and assuming we're working with DIDs here, the process to resolve the signing key has to be:
To me, this seems sloppy, involving unnecessary complexity and computation, and making detecting errors in implementations harder. It also wouldn't scale if for whatever reason a DID had very many keys (inefficient at best, possible DoS at worst). Maybe I'm missing something here. Can anyone comment on this? Thanks.
The text was updated successfully, but these errors were encountered: