Skip to content
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

Should DID syntax allow an empty "method-specific-id"? #34

Closed
brentzundel opened this issue Sep 23, 2019 · 8 comments
Closed

Should DID syntax allow an empty "method-specific-id"? #34

brentzundel opened this issue Sep 23, 2019 · 8 comments
Assignees
Labels
discuss Needs further discussion before a pull request can be created

Comments

@brentzundel
Copy link
Member

@peacekeeper moved from CCG (w3c-ccg/did-spec#198)

@msporny msporny added the discuss Needs further discussion before a pull request can be created label Oct 1, 2019
@peacekeeper
Copy link
Contributor

I've been thinking about this for a while and I now have a slight preference, but I'd like to share some considerations first.

What is the DID subject in the case of an empty method-specific identifier? The answer that was given in the past was that the DID identifies the DID method or DID registry itself. But then, what does it mean...

  • to prove control of this DID in a DID Auth interaction?
  • to discover means for trustable interaction (services and keys) with this DID subject?
  • to have a VC that is issued by this DID?
  • to execute the CRUD operations on this DID?

I admit that some of the above sounds intriguing and could make sense. But on the other hand, an empty method-specific identifier feels a bit like a special case that is quite different from what DIDs have been designed for.

What I'd like to avoid is allowing this merely for being able to discover metadata about a DID resolver, or for some kind of general-purpose query mechanism to the DID registry. Those things should be handled differently, not by piggybacking on DID syntax and DID resolution. Instead, the question we need to answer here is "does it make sense for the DID registry to be considered a DID subject itself".

Thoughts?

@peacekeeper
Copy link
Contributor

Since there has been no activity on this issue, my (slight) preference would be to NOT allow an empty method-specific-id. I don't feel strongly about this and could be convinced otherwise, but my sense right now is that the above questions have the potential to lead to ambiguity and confusion (i.e. what is the DID subject/controller, what is the meaning of the CRUD operations, etc.).

So unless anyone feels differently, I propose to raise a PR to change the ABNF to NOT allow an empty method-specific-id.

@peacekeeper
Copy link
Contributor

@talltree ^

@msporny
Copy link
Member

msporny commented Mar 3, 2020

does it make sense for the DID registry to be considered a DID subject itself

No, the only use case for it is weak and can be solved through a variety of other mechanisms like a regex or matching against "did:v1" or a variety of other things that are perfectly fine and don't need to comply w/ DID syntax.

@peacekeeper
Copy link
Contributor

peacekeeper commented Mar 3, 2020

Thanks @msporny I agree. Others please add thoughts. If there is no opinion to the contrary, we can create a PR to change the ABNF to no longer allow an empty method-specific-id.

@dlongley
Copy link
Contributor

dlongley commented Mar 3, 2020

Agree with @msporny.

@peacekeeper peacekeeper added the ready for PR Issue is ready for a PR label Mar 4, 2020
peacekeeper added a commit that referenced this issue Mar 5, 2020
@peacekeeper peacekeeper added PR exists There is an open PR to address this issue and removed ready for PR Issue is ready for a PR labels Mar 5, 2020
@kdenhartog
Copy link
Member

PR looks good and I agree with the consensus that's been reached.

msporny pushed a commit that referenced this issue Mar 12, 2020
@peacekeeper
Copy link
Contributor

This has been addressed by #216. Closing.

@msporny msporny added discuss Needs further discussion before a pull request can be created and removed PR exists There is an open PR to address this issue discuss Needs further discussion before a pull request can be created labels Dec 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss Needs further discussion before a pull request can be created
Projects
None yet
Development

No branches or pull requests

5 participants