-
Notifications
You must be signed in to change notification settings - Fork 1
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
[Feature Request] Controller delegation #41
Comments
this is also an interesting one, and we had reviewed this in the past. At a quick glance, I can see this issue and this other one to clarify semantics about the On this line, I unfortunately didn't understand this sentence:
could you elaborate a bit more? I didn't follow the part of "delegation should point to a DID to allow a separate rotation of keys on the parent's side." Once again, thank you for opening issues and exchanging thoughts! |
Hmm, DID subject and DID controller aren't the same, but they can be (and often are). I would say each DID (so This would allow you to delegate control of a DID document, and doesn't involve anything to do with the
Here I meant that we are using You could very simply get n-of-n or 1-of-n multi-sig by allowing an array for I need to review the issues you linked (and others that I can find) in more detail when I have the time though, as I might be missing something! :) |
apologies for the delay here too
so, if I understood correctly, the logic you are describing is: And, the difference you refer to is mostly at the point of displaying the delegation at the DID document, compared to just having the control without announcement (using the private key of the
I should point that for the 7 DIDs (the parent's and the 6 children'), you could still use a single key by using the same key material in all the DIDs. Nothing forbids a key to be present in multiple DID documents. Even though W3C mentions this type of behaviors, it is not that common to see in DID method implementations. The rules to control a DID are defined by each method, and the proposed logic may restrict some methods. For example, Sidetree.based DID methods, or KERI they tend to use key commitments, and not keys. And commitments are used only once in the system (not per DID), making a controller-like feature hard to implement (and I think Sidetree doesn't implement it). Let me know if I understood the difference of using the key vs using controller field, what I am missing is a use case where the difference is needed.
A priori, I think the topic needs further refinement before updating the spec. Do you think we should keep this issue open @iFergal? or should I close this and we can re-open it in the future if the topic gets new points? As always, thank you for the comments and my apologies for the delay |
I am closing the issue to keep a clean view of active ones |
It would be useful to be able to delegate control of a DID to another DID. (full control over the DID doc + keys)
controller
property.As a sample, this would allow the simple parent-child use-case where a parent holds control over a child’s DID but the child can still hold control over its authentication etc keys. In case the child loses access to their keys, the parent can rotate them.
This is different from:
MASTER_KEY
- delegation should point to a DID to allow a separate rotation of keys on the parent's side.capabilityDelegation
as that is not for DID control.This might also be useful in some specific IoT scenarios.
The text was updated successfully, but these errors were encountered: