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

publicKeyJwk, publicKeyHex, publicKeyBase64, publicKeyBase58 missing from context. #23

Closed
brentzundel opened this issue Sep 20, 2019 · 18 comments
Assignees
Labels
discuss Needs further discussion before a pull request can be created extensibility related to extensibility, json-ld contexts, external properties, etc

Comments

@brentzundel
Copy link
Member

@OR13 moved from CCG (w3c-ccg/did-spec#152)

@OR13
Copy link
Contributor

OR13 commented Sep 20, 2019

I suggest hosting the JSON-LD Contexts and their human readable documentation under this github repo, so that contributors can open a single PR to fix both human and machine readable spec's related to DID security.

Security and usability issues arise when documentation becomes out of date and JSON-LD context resolution spans many domains controlled by various 3rd parties.

@dmitrizagidulin
Copy link

Related: #5

@awoie
Copy link
Contributor

awoie commented Sep 27, 2019

This issue is related to #55 . Support for ethereumAddress is also missing.

@msporny msporny added discuss Needs further discussion before a pull request can be created high priority labels Oct 1, 2019
@tplooker
Copy link
Contributor

Also related to #67

@selfissued
Copy link
Contributor

The publicKeyHex, publicKeyBase64, and publicKeyBase58 structures are duplicative representations of the same information. Having more than one way to do things will inevitably create interop problems, as developers will only build the ones that they think they need at present. And these sets will differ between implementations and deployments.

It should be no surprise that I'd advocate replacing all of them with JWK, since it's already a widely-implemented JSON-based standard. That would increase interoperability and reduce unnecessary code fragmentation and bloat.

@rhiaro rhiaro added the extensibility related to extensibility, json-ld contexts, external properties, etc label Feb 10, 2020
@msporny
Copy link
Member

msporny commented Feb 13, 2020

I suggest hosting the JSON-LD Contexts and their human readable documentation under this github repo

Tagging @OR13 since he could close this issue out by putting in a PR for an experimental Ethereum @context hosted in the /contexts/ directory of this repo... that is then added to the did-core-registry for publicKeyHex. We should have publicKeyJwk and publicKeyBase58 in the core context and not have publicKeyBase64 anywhere (as it's used in publicKeyJwk and we don't have to define it for its use there)

@OR13
Copy link
Contributor

OR13 commented Feb 13, 2020

I'm a bit confused about what goes in what repo now... shouldn't the context and schema definitions go in the registry repo?

@OR13
Copy link
Contributor

OR13 commented Feb 25, 2020

Blocked by: w3c/did-spec-registries#3

@OR13
Copy link
Contributor

OR13 commented Mar 24, 2020

Blocked by: w3c/did-spec-registries#20

@OR13
Copy link
Contributor

OR13 commented May 26, 2020

@msporny msporny assigned OR13 and rhiaro and unassigned selfissued and awoie May 26, 2020
@OR13
Copy link
Contributor

OR13 commented May 26, 2020

publicKeyHex blocked, but we will probably just define that in the next did spec registries updates.

@rhiaro
Copy link
Member

rhiaro commented Jun 16, 2020

I'm not sure of the consensus around which of these will be defined in the DID Core spec. I think publicKeyJwk and publicKeyBase58 for sure? Any not in the Core Spec will be added to the Registries (linking to external specs and contexts). I can PR to add the agreed ones to the Core context and to the spec (#281) when there's a definitive answer.

@msporny
Copy link
Member

msporny commented Jun 16, 2020

I think publicKeyJwk and publicKeyBase58 for sure?

Correct.

The only issue with publicKeyBase58 might be pointing to a normative spec. We can get around that by not making any normative statements on what the expected encoding is. We may want to try to say something like using the "Base58 Bitcoin alphabet"... or referring to the I-D at IETF.

Any not in the Core Spec will be added to the Registries (linking to external specs and contexts).

Yep, exactly.

@kdenhartog
Copy link
Member

I found that publicKeyHex was already defined in the did-spec-registries, so wasn't sure what the best approach for context definitions would be. Looking to get it added to the CCG security-vocab as well soon.

@OR13
Copy link
Contributor

OR13 commented Jun 16, 2020

Yes, we need publicKeyHex to be defined in security-vocab jsonld and the html documentation which the jsonld contexts reference.. we have an open PR for the HTML we need context update in the W3C CCG

@OR13
Copy link
Contributor

OR13 commented Aug 18, 2020

Suggest closing, we have this in the spec registries.

@OR13
Copy link
Contributor

OR13 commented Aug 18, 2020

recommend opening a new issue remove 'publicKeyPem`.

@OR13 OR13 closed this as completed Sep 8, 2020
@OR13
Copy link
Contributor

OR13 commented Sep 8, 2020

closing, opened w3c/did-spec-registries#126

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 extensibility related to extensibility, json-ld contexts, external properties, etc
Projects
None yet
Development

No branches or pull requests

9 participants