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

Consider removing dynamic layer #45

Open
brianorwhatever opened this issue Oct 14, 2022 · 7 comments
Open

Consider removing dynamic layer #45

brianorwhatever opened this issue Oct 14, 2022 · 7 comments

Comments

@brianorwhatever
Copy link
Contributor

As far as I can tell, none of the implementations of this spec use the dynamic layer of this method. If everyone is just using static this method could become quite succinct which would help adoption.

@dhh1128
Copy link
Collaborator

dhh1128 commented Oct 14, 2022

I agree. However, I don't want to do all the surgery to pull out the dynamic stuff. Are you interested in writing a PR and adding yourself to the contributors list?

@brianorwhatever
Copy link
Contributor Author

I would if we are going to revive this method. If not I don't think it's worth the effort. At this stage I'm just gathering information to figure out the best plan moving forward.

@brianorwhatever
Copy link
Contributor Author

Ultimately, this method to me is entirely captured by static and numalgo=2. Here is the reason I believe this to be true..

static:

  • numalgo 0 is identical to did:key with the addition of a leading 0 (and an extra character in the method as well)
  • numalgo 1 is interesting however I don't think anybody has implemented it (I might be wrong - if so I'd like to see!) and I also believe this would be a different method entirely
  • numalgo 2 is the most commonly used here and this is what should remain

dynamic:

  • this is where numalgo 0 would be powerful as you'd be able essentially update a did:key.. but I'm not sure anyone has implemented this
  • again not implemented in numalgo 1 as far as I know
  • It doesn't make sense to use numalgo 2 as an updatable did as the identifier itself is huge and there would be more succint ways to do it (num algo 0 or 1). Who would want to use this identifier enough to update it.. did:peer:2.Vz6MkpjaKEX9avv2c1QuJte4EHRTvH6gfuAB4FtZSDxWLYKQ7.Ez6LSgbQucMX4aT46UPKwxSBeSNNYK9XKQ9TZdkxi5AFU8AmQ.SeyJpZCI6IiNkaWRjb21tIiwidCI6ImRtIiwicyI6Imh0dHBzOi8vcG9ydGN1bGxpcy4xa2VlcC5jb20vZGlkY29tbSIsInIiOlsiZGlkOndlYjpwb3J0Y3VsbGlzLjFrZWVwLmNvbSJdfQ

So that being said I am proposing removing 5/6 of the methods available in this spec which is quite a drastic change.. I could see creating a separate "did:peer dynamic extension" spec being of value if there is interest in that but as experience is showing there hasn't really been so far..

@dhh1128
Copy link
Collaborator

dhh1128 commented Dec 14, 2022

I am not opposed to most of those suggestions, @brianorwhatever . I think there are people using numalgo 0, so removing might disrupt them -- but everything else would probably be easy to remove to simplify.

@brianorwhatever
Copy link
Contributor Author

yeah, that is what I suspect as well which is unfortunate as it replicates did:key but should probably remain in as you say. Do you know of anyone using numalgo 1?

@dhh1128
Copy link
Collaborator

dhh1128 commented Dec 14, 2022

re numalgo 1: no, I believe it's unimplemented

@brianorwhatever
Copy link
Contributor Author

brianorwhatever commented Dec 29, 2022

I have recently discovered https://impervious.ai/ which in its backup recovery key and throughout the app uses numalgo with an initialState param

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

No branches or pull requests

2 participants