-
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
Add support for DIDs #144
Add support for DIDs #144
Conversation
Co-authored-by: Ted Thibodeau Jr <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
Co-authored-by: Ted Thibodeau Jr <[email protected]>
…se into feat/controller-documents
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like to merge this PR as it is, I believe I have captured issue markers for the discussions that are not resolved.
It looks like this PR is attempting to rewrite how DID Documents work, it has certainly removed large sections of content that exist in the DID Core specification. None of the issues raised (AFAICT) are marked as before-CR, and that's problematic given the modification to DID Core concepts. We need to understand if this PR has WG consensus, I doubt it does, as I don't think people in the WG would be ok w/ modifying DID Core in a way that goes outside of the bounds of our WG Charter.
Concrete change requests: State that what is done in these sections is a subclass'ing of what DID Core and/or Data Integrity specifies and highlight the differences. Duplicating content across multiple specifications is highly problematic, ensure that people understand why certain sections have been duplicated.
@msporny given that controller documents are not specific to DIDs or blockchains, would changing all the examples to use HTTPS URLs address your concerns? Part of the challenge in referring to DID Core is that there is nothing in DID Core that actually enables interoperable discovery of key material, which is what we need to enable interoperable verifiable credentials... and this led to formal objections. Data integrity redefines DID Core here: And attempts to address this interoperable key discover challenge here: If the problem is truly related to DIDs, I suggest the following options:
We are currently attempting path 3.
I can't implement this suggestion because there is no "subclass'ing" happening here. Controller documents have no normative concept of "type", and DID Documents are not always interpreted as JSON-LD, so the RDF class concept does not apply.... Perhaps you are asking for us to clarify that this section only applies to Can you comment on if you feel that 1 or 2 might be easier to achieve consensus on? |
We were able to find a path forward at the VCWG F2F meeting at TPAC, I suggest reviewing the minutes to understand the path forward here. |
The issue was discussed in a meeting on 2023-09-14
View the transcript6.1. Add support for DIDs (pr vc-jose-cose#144)See github pull request vc-jose-cose#144. Michael Jones: very discussed PR to-date. some requested changes - many addressed. manu is the person requesting changes now.
Manu Sporny: one of the concerns are it duplicates content from DID-Core and data integrity specification and rewrites some of it. uses normative statements from did-core and puts DI content on top of it. DI spec is clear on the reason. Michael Jones: normative change to DID-Core. subsetting normative statements in DID-Core. if you want to use controller doc with JOSE-COSE, refer to jwks and should not use multibase part, it is not a breaking change to did-core. Brent Zundel: is it profile of DID controller section of did-core? Michael Jones: yes. Brent Zundel: manu, does clarifying that alleviate your concerns? Manu Sporny: no, because the profile makes normative changes to did-core.
Manu Sporny: completely disagree that the PR is ready to be merged today. Michael Jones: could you state that in the PR? Manu Sporny: I think I said it in the PR comment. Kristina Yasuda: looks like we have a way forward. Ivan Herman: there is currently no normative reference to did-core Rec, which should be from your description. Michael Jones: i will consult other editors. |
@Sakurann @brentzundel can you summarize what actions need to be taken to get this PR merged? |
@OR13 I think clarifying that this is a "profile" of how DID-Core defines controller documents/DID Docs (as opposed to this PR redefining controller docs) should unblock this PR. This probably means 1/ saying that the basis is how DID-Core defines DID Docs and 2/ clarifying additional requirements that vc-jose-cose puts on top of that (so no need to copy paste the entire DID Doc section). |
ok, I went back this thread and would like to expand on the comment above. @msporny please do the same in vc-data-integrity by citing DID-Core and clarifying that vc-data-integrity is profiling it. vc-data-integrity defines controller documents outside DID Core in https://w3c.github.io/vc-data-integrity/#controller-documents and https://w3c.github.io/vc-data-integrity/#retrieve-verification-method. just to quote few statements from vc-data-integrity:
we need to have the same approaches across both security specs to prevent confusion. |
thank you! |
need to put in an issue marker, then request a re-review. |
I had to remove some text regarding key agreement, and crypto suites to resolve respec issues, in 1ea7469 |
@msporny can you re-review? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The approval of this PR is contingent on refinements I've made to the description in #160 to align with what I heard on the call. Given that the issue marker added for the controller documents section is not included in this PR, I couldn't suggest text -- so, rather than delaying things further, I've provided a concrete text update in the description in #160 (you can view the diff for these changes in the menu to the top right of the first comment in that issue).
If @OR13 and @selfissued are ok w/ that updated description, I approve this PR. If they are not, I do not approve of this PR (and suggest an alternative, by editing the description directly, so we can move this along).
This comment was marked as off-topic.
This comment was marked as off-topic.
The issue was discussed in a meeting on 2023-09-27
View the transcript1.1. Add support for DIDs (pr vc-jose-cose#144)See github pull request vc-jose-cose#144. Kristina Yasuda: We discussed at TPAC. Orie Steele: I wasn't in TPAC. Got an update. If the WG consensus is to have DI and vc-jose-cose controller defined documents, then they both say the same things or not.
Kristina Yasuda: Alternative path forward - don't cite did-core. Manu Sporny: Agree with any direction that doesn't bifurcate what controller documents are.
Manu Sporny: Summary, fine with the concept. Want to make sure that the message is that both definitions are compatible with one another, just profiling did-core differently.
Kristina Yasuda: Base controller doc definition, before any profiling, are there disagreements there? Orie Steele: I think I agree.
Kristina Yasuda: I'll take an AI to confirm that it's in scope for this WG to be able to define the base controller document.
Kristina Yasuda: Assuming it's true, any concerns for general controller document definition going to vcdm? And then DI and vc-jose-cose adding on top of it? Manu Sporny: I don't think it belongs in the VCDM. This is about the securing mechanisms, and doesn't feel like the right place to put it.
Manu Sporny: Agreed with everything except that one piece.
Manu Sporny: As background, these concepts used to be part of linked data signature.
Manu Sporny: Just so happened that they were also in did-core.
Manu Sporny: So +1 to everything except putting in the VCDM.
Michael Jones: Generic comment. If we want something common, it should be in one place. We can create a key discovery spec. Manu Sporny: If everyone can agree that we lift the text from DI and put it in a different spec, this would lead into a long drawn out debate. selfissue: I hear you, procedurally. Sebastian Crane: If there is going to be objection in a separate spec, is there going to be disagreement between implementers?
Sebastian Crane: Are we kicking the can down the road and doing a disservice to others? Orie Steele: Json ld signatures were used in a couple of places. Kristina Yasuda: For now, let's have vc-jose-cose duplicate the text from DI with it's own requirements. That should be the starting point.
Kristina Yasuda: I'll come back to the WG after.
Kristina Yasuda: PR unblocked. Let's move to work item updates. Michael Jones: Does that mean we can merge 144? Manu Sporny: It's not just a copy/paste. It doesn't clarify what's being subclassed.
Kristina Yasuda: Orie can you comment on the modified parts from DI? Orie Steele: The PR started with a copy. Then there were many sections that were removed related to DI. Kristina Yasuda: manu, What are the normative changes that were made that you are concerned about?
Manu Sporny: That's not the concern. I would suggest to put an issue marker explaining that the WG is attempting to align the definitions between DI and vc-jose-cose. Kristina Yasuda: Sounds like a way forward.
Kristina Yasuda: manu, if you can open an issue where you explain what text you'd like to be better aligned, that would be helpful.
Kristina Yasuda: Sorry, ivan, some cleanup will need to be done :-). |
Preview | Diff