-
Notifications
You must be signed in to change notification settings - Fork 234
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 did jwk #318
Add did jwk #318
Conversation
Looks good to me! @BernhardFuchs who usually reviews new drivers is currently on vacation but should be able to merge early next week. |
ahh, I am missing some contact info requirements... from https://github.com/decentralized-identity/universal-resolver/blob/main/docs/driver-development.md |
Just tried the driver and it throws following error:
@peacekeeper Could that be an issue with the resolver itself? |
@OR13 I know in the past we have had different perspectives on DID document representations, In this case the error is caused by the fact that your resolver returns the following:
DID Core says this about the
So I think it needs to be |
@peacekeeper which contentType value will prevent mutation (by the resolver) of the response from the driver? Assuming
|
@OR13 I think that since there is a |
@peacekeeper I asked which format will not be mutated by the resolver... are you attesting that only I don't want the resolver to do anything other than forward the bytes from the driver... how do I accomplish that? Are you saying that your resolver deletes |
I guess another question... is |
It depends on the "Accept" header sent by the client. For example, if the client sends This way, if in the future we see another representation such as YAML, we can just add support for that in the resolver itself without having to update >40 drivers. If the client sends If the client sends In other cases, e.g. if the client requests a JSON-LD content type, but the driver returns a plain JSON content type, or the other way round, then that's the situation where we disagreed in the past, and where I guess the behavior is still not so well understood (and our implementation may be incorrect). I think in the current situation the resolver will NOT remove If you don't want the resolver to mutate/convert anything, then the safest thing would be to examine the "Accept" header yourself in the driver and return the appropriate representation type that was requested by the client (JSON-LD, JSON, CBOR, YAML, etc.) |
You can omit it. The resolver will add its own resolution metadata in that field and merge it with what's returned by the driver, if any. |
@peacekeeper awesome! The current future version of the did:jwk spec, might describe production rules that are different for JSON-LD or CBOR or YAML, and then the universal resolver would not need to convert for those... but thats up to the method spec authors. cc @quartzjer |
|
Docker image looks a bit huge..
But otherwise looks great.. @BernhardFuchs could you try again and then merge? |
@peacekeeper @OR13I reduced the size of the image by 80% by this pull: transmute-industries/restricted-resolver#3 needs a merge |
I merged, but we need we may need to push it manually, can't remember if I automated CD. |
@OR13 according to the CD it gets triggered with a new release, not by a push: |
I went ahead and pushed manually and tagging version 0.0.3 and latest with the new docker build |
@cre8 Thank you! if you ever want to get in touch with us, feel free to ping us in DIF slack! |
This PR is to add a driver for
did:jwk
based on:https://github.com/quartzjer/did-jwk/blob/main/spec.md
https://github.com/transmute-industries/restricted-resolver
OR13/did-jwk#1
transmute-industries/restricted-resolver#1